Overview of the order process flow

In the HCL Commerce integration with Sterling Order Management, HCL Commerce is used for selling and Sterling Order Management provides a fulfillment solution.

Sterling Order Management maintains and fulfills all orders that are placed through HCL Commerce. The two systems interact with each other with services and functions that are already supplied.

Figure 1. Order process flow
Order Flow
  1. When a web shopper on the HCL Commerce store website submits an order, a copy of the order is created in HCL Commerce. An immediate acknowledgment of the copy of the order is displayed to the shopper through the user interface.
  2. HCL Commerce places the order in the JMS queue. The SCWC_SDF_createOrder service is invoked to transfer the order to Sterling Order Management. Sterling Order Management calls the HCL Commerce ChangeOrder service to change HCL Commerce order status to "Successfully Transferred."
  3. When the order is created in Sterling Order Management, the ON_SUCCESS event is raised, which uses the SCWC_SDF_createOrderOnSuccess service to send the createOrder acknowledgment to a JMS queue.
  4. The SCWC_SDF_pushOrderMessages service picks up the message from the queue and invokes OrderService from HCL Commerce to transfer the acknowledgment.
  5. HCL Commerce processes the acknowledgment message and updates the status of the order to Order Processing. When an order has a Order Processing status, any query on that order is handled by a direct call to Sterling Order Management, as described in Step 6.
  6. When browsing, the web shopper might want to view a list of previous orders. This request prompts HCL Commerce to make a direct call to SCWCSoapServlet, which redirects the request to the SCWC_SDF_getOrderList service for a list of orders. When the web shopper is requesting a list of orders, any order that is still in HCL Commerce and is not created in Sterling Order Management (is not in Successfully Transferred status) is merged with the list of created orders shown to the shopper.
  7. The web shopper might want to view the details of an order. This request prompts HCL Commerce to make a call to the AuthorizationOnlyServlet, which invokes the getCompleteOrderDetails API for information about a particular order and getOrderLineDetailsAPI for information about a particular order line on the order.
  8. If a web shopper calls a customer service representative (CSR) at IBM Sterling Call Center and asks the CSR to work on the shopper's cart, the CSR can search for the cart (SCWC_SDF_GetCartList service) and then pull the cart (SCWC_SDF_GetCartDetails service). A draft order is created in IBM Sterling Call Center. The CREATE_DRAFT_ORDER.ON_SUCCESS event is raised, which locks the cart on the storefront (SCWC_SDF_LockWCShoppingCart service), preventing the shopper from working on the cart.
  9. If a customer service representative (CSR) at IBM Sterling Call Center or IBM Sterling Store confirms a draft order, the DRAFT_ORDER_CONFIRM.ON_SUCCESS event (SCWC_SDF_confirmDraftOrderOnSuccess service and SCWC_SDF_createOrderOnSuccess service) is raised. If the CSR changes an order, the ORDER_CHANGE.ON_SUCCESS event flag (SCWC_SDF_changeOrderOnSuccess) is raised. Canceling an order raises the ORDER_CHANGE.ON_CANCEL event (SCWC_SDF_changeOrderOnCancel), and deleting an order raises the CHANGE_ORDER.ON_DELETE event (SCWC_SDF_UnlockWCSShoppingCart). These events inform HCL Commerce when an order is entered through another channel. These events are also used to update HCL Commerce promotion statistics. The acknowledgments from these events are sent to a JMS queue.
  10. The SCWC_SDF_pushOrderMessages service picks up the message from the queue and invokes OrderService from HCL Commerce to transfer the acknowledgment. Now order creation is complete, including the price as determined from the HCL Commerce storefront. An order created under the standard configuration of Sterling Order Management does not reprice an order.
  11. When a guest shopper creates a new account at a HCL Commerce store or places an order and then logs into the store and the order is transferred and successfully created in Sterling Order Management, HCL Commerce invokes an asynchronous event. HCL Commerce sends a changeOrder outbound message to change the BuyerUserId attribute of the order in Sterling Order Management. The SCWC_SDF_changeOrder integration server consumes the message and updates the BuyerUserId of the order in Sterling Order Management.
    Note: To enable the SCWC_SDF_changeOrder service to update the BuyUserID of the order, ensure that the Change Order User ID modification type for the Sales Order document type is subscribed and allowed for the Order modification level and Created status.
  12. When an order is transferred to Sterling Order Management and is canceled from HCL Commerce, a synchronous call is made though SCWC_SDF_changeOrderRealTime to cancel the order in Sterling Order Management. The cancel option appears in HCL Commerce Order details only if the modification rules configured in Sterling Order Management allow for cancellation of the Sterling Order Management order in that status.