1. A computer readable medium including program code for providing a message-based interface for performing a retail allocation service, the service exposing at least one service as defined in a service registry, wherein upon execution the program code executes in an environment of computer systems providing message-based services and comprises: program code for receiving, from a service consumer, a first message for planning and controlling distribution of merchandise as a part of the procurement process between external suppliers, distribution centers and stores in the retail industry; program code for invoking a retail allocation business object, wherein the business object is a logically centralized, semantically disjointed object for planning and defining products, quantities and participating stores, including contracting, procurement, purchasing, and shipping of retail products, and comprises data logically organized as: a retail allocation root node; and an item subordinate node and wherein the item node contains: an item store group subordinate node and wherein the item store group node contains: an item store group store subordinate node wherein the item store group store node contains: an item store group store delivery phase subordinate node; and an item ship from location subordinate node and wherein the item ship from location node contains: an item ship from location delivery phase subordinate node; and program code for initiating transmission of a message to a heterogeneous second application, executing in the environment of computer systems providing message-based services, based on the data in the retail allocation business object, the message comprising a retail allocation create request message entity, a message header package, and a retail allocation package.