Area: Optimizely Commerce
ARCHIVED This content is retired and no longer maintained. See the latest version here.

Recommended reading 

The Order Management system includes different aspects that you can use to meet your implementation needs:

  • Full system API. Multiple shopping carts per customer.
  • The ability to incorporate your own custom shipping and payment gateways or one of the providers included with ECF.
  • The ability to add your own tax provider into the checkout process.
  • Support for recurring/subscription payments.
  • Manage different types of customer addresses.
  • Extend the order classes to contain custom data needed for your system..

The core API for the checkout and order is located in the Mediachase.Commerce.Orders namespace.


  • The primary class you will use in retrieving/updating orders is OrderContext. It is a singleton class accessed through OrderContext.Current.
  • The OrderContext.Current object will provide access to most of what you will need in retrieving/updating orders. The objects returned (DTOs are much less common in the order system), will reflect the object hierarchy.
  • To save data with order objects, call the AcceptChanges() method. The ability to save objects using this method is common to Order and Profile objects.
  • Ancillary classes to retrieve order-related information can be found in BusinessLayer/CommerceLib/Orders/Managers.
  • The metaclasses used by different objects in the order system (for instance Cart, LineItem, ShippingAddress, etc), are defined in the ecf.order.config file (both back-end and front-end).

See also

Do you find this information helpful? Please log in to provide feedback.

Last updated: Oct 21, 2014

Recommended reading