The business layer classes contain the logic and business rules for the purchase process. The methods within these classes are used to make changes to an Order. These methods contain the logic that alters the Order’s data structure and maintains its accuracy; all calls to alter an Order should be made through these classes.

Note: In previous versions, almost all of the business logic resided in the OrderManager class. To make this very large class easier to work with, it was broken up into new classes described below. The original structure remains intact to preserve backwards compatibility, but in the future you should use the new object managers.

The following classes are business layer objects:




Low-level interface containing the logic for editing an Order data structure. It is not meant to contain business logic or to be used directly. In general, only the OrderManager or SimpleOrderManager makes calls to an OrderTools object. For more information, see the OrderTools section.


Contains most of the functionality for working with an Order, including methods such as createOrder(), as well as properties referencing the other manager classes listed below. The methods in this class are higher level than the methods in OrderTools.


Contains functionality for working with a CommerceItem, including methods such as addCommerceItemToOrder() and addItemQuantityToShippingGroup().


Contains functionality for working with ShippingGroups, including createShippingGroup() and splitShippingGroup().


Contains functionality for working with handling instructions, including methods such as createHandlingInstruction() and removeHandlingInstructionsFromShippingGroup().


Contains functionality for working with PaymentGroups, including createPaymentGroup() and intializeCreditCard().


Contains lookup methods such as getOrdersForProfile() and getOrderIdsWithinDateRange().


This class extends OrderManager. It is a very high-level interface for altering an Order; only one method call in SimpleOrderManager is required to make a series of changes to an Order. For more information, see the Using the SimpleOrderManager section.

loading table of contents...