1. A computer system comprising: at least one database; a database server cluster configured to operate the at least one database; an application server cluster; and at least one web server; wherein software executing on the computer system, including the application server cluster and the at least one web server, is configured to provide Internal Services (IS) and external Web Services in multiple procurements as part of a single transaction, wherein the IS is configured to manage the multiple procurements as a procurement tree having a child process and a parent process, related to the child process, and coordinate activities of the child process by passing messages between the parent process and the child process; wherein the software has an architecture including a presentation layer configured to present users interfaces, to users with procurement roles within an organization having different procurement profiles, with different look and feel of an application for the users, the user interfaces configured to allow users to describe services the end user wants to procure, purchase instances of the services when presented with service options, modify or cancel the services, and check on status of procurement; a workflow engine configured to manage a plurality of workflows generic to a plurality of service verticals having different business logic, where each of the service verticals has different service providers having different service definitions and different message exchanges to complete a transaction; an adapter engine configured to bridge the generic workflows and the different service definitions and different message exchanges; an asynchronous workflow engine to manage asynchronous aspects of the workflows; and a messaging system configured to interconnect the presentation layer, the workflow engine, the adapter engine, and the asynchronous workflow engine and facilitate the passing of the messages between the parent process and the child process.