Order pipelines

Version: 9.3

SubmitVisitorOrder pipeline

Name:

SubmitVisitorOrder

Description:

This pipeline is responsible for creating an order. The orders are managed by the commerce system.

Usage:

Called from Sitecore.

Args:

Request - Contains a cart with the shop name, cart, customer ID, and customer party IDs for buyer (shipping) and accounting (Invoice).

Response - Contains the order object.

Processors:

CreateOrderInExternalSystem – Creates an order in the external commerce system based on the given parameters.

Note

If an error occurs during processing of the cart, the Success property of the SubmitVisitorOrderResult is set to false.

TriggerOrderGoal – The Visitor Order Created goal is triggered with values ShopName, Customer ID, Order Id and total order amount.

The engagement value must be set to the amount of the order total.

Note

If the Success property of the SubmitVisitorOrderResult is false, no goal is triggered.

TriggerLoyaltyCardPurchasePageEventThe Loyalty Card Purchase event is triggered with no values.

TriggerGiftCardPurchasePageEventThe Gift Card Purchase event is triggered with no values.

TriggerOrderedProductStockStatusPageEventThe Ordered Product Stock Status event is triggered with no details about each product in the cart and their statuses.

TriggerOrderOutcomeThe order placed outcome is raised along with order related data.

UpdateVisitorInAutomationPlan –

Responsibility: Enrolls the current contact to the New Order Placed campaign processor.

Usage: Optional. Used to determine who is enrolled in a Commerce Marketing Automation campaign.

Ownership: The processor is provided with Connect.

Customization: Enrolls the current contact in the New Order Placed marketing automation campaign based on these parameters:

  • basePlanName is the campaign plan name. The default value is New Order Placed.

  • allowDuplicateContacts indicates whether to allow the same contact to be enrolled multiple times in the marketing automation campaign. The default value is false.

  • allowUnauthenticatedContacts indicates whether to allow anonymous and unregistered users to enroll. The default value is true.

For further customization, the processor can be inherited.

GetAvailableCountries pipeline

Name:

GetAvailableCountries

Description:

Gets a list of available countries from the ECS

Usage:

Called from Sitecore.

Args:

Request –

Response – A list of available countries.

Processors:

GetAvailableCountries

Responsibility:Gets a list of countries from the ECS.

Usage: The processor is mandatory.

Ownership: The processor is provided with the ECS connector integrating with Connect.

Customization: The processor must always have an implementation that works with the ECS.

GetAvailableRegions pipeline

Name:

GetAvailableRegions

Description:

Gets a list of available regions in a country from the ECS.

Usage:

Called from Sitecore.

Args:

Request – CountryCode

Response – A list of available regions.

Processors:

GetAvailableRegions

Responsibility: Gets a list of regions for a country from the ECS.

Usage: The processor is mandatory.

Ownership: The processor is provided with the ECS connector integrating with Connect.

Customization: The processor must always have an implementation that works with the ECS.

GetVisitorOrders pipeline

Name:

GetVisitorOrders

Description:

Gets a list of orders for the specified customer.

Usage:

Called from Sitecore.

Args:

Request – ShopName and CustomerID

Response – A list ofOrderBase objects.

Processors:

GetVisitorOrdersFromECS

Responsibility:Gets the list of orders for the specified customer from the ECS. It must be possible to have the ECS and Sitecore installed in different locations, so it must be possible to access remotely.

Usage: The processor is mandatory.

Ownership: The processor is provided with the ECS connector integrating with Connect.

Customization: The processor must always have an implementation that works with the ECS.

TriggerPageEvent

Responsibility:Triggers the Connect specific page event: Visitor Viewed Order History, along with information about the ShopName and Customer ID.

Usage: Mandatory.

Ownership: The processor is provided with Connect.

Customization: Not needed, but can be overwritten to register other values from the order with the page event.

GetVisitorOrder pipeline

Name:

GetVisitorOrder

Description:

Gets the order by the ID placed by the visitor. Executed from the GetVisitorOrder method.

Usage:

Called from Sitecore.

Args:

Request – ShopName and Order ID

Response – An instance of an order.

Processors:

GetVisitorOrdersFromECS–

Responsibility:Gets the order details for the specified order ID from the ECS.

Usage: The processor is mandatory.

Ownership: The processor is provided with the ECS connector integrating with Connect.

Customization: The processor must always have an implementation that works with the ECS.

TriggerPageEvent

Responsibility:Triggers the Connect specific page event: Visitor Viewed Order Details, along with information about the ShopName, Order ID and total order amount.

Usage: Mandatory.

Ownership: The processor is provided with Connect.

Customization: Overwrite the processor to register other values from the order.

OrderStatusChanged pipeline

Name:

OrderStatusChanged

Description:

Used to inform Sitecore about a change in the status of an order.

Usage:

Called from Sitecore.

Args:

Request – Order ID, CustomerId, and OrderStatus.

Response – None.

Processors:

TriggerOrderStatusChangedPageEvent

Responsibility:Triggers the Connect specific page event Order status changed, along with information about the Order ID and new Order Status.

Usage: Mandatory.

Ownership: The processor is provided with Connect.

Customization: Overwrite the processor to register other values from the order.

Reorder pipeline

Name:

Reorder

Description:

Responsible for adding lines to a customer’s cart from a previously placed order, for purposes of reordering those items.

Usage:

Called when a customer requests to reorder one or more items from a previous order.

Args:

Request - Contains the Shop name, order ID, and customer ID.

Response - Contains the resulting cart object and a list of the new cart lines added to the cart.

Processors:

GetReorderSourceLoads the order from which items are being reordered. This processor calls the getVisitorOrder pipeline.

Note

If an error occurs while loading the order, the Success property of the ReorderResult is set to false.

AddReorderLinesToCart Loads the customer’s current cart and adds new lines to this cart based on the items being reordered. This processor calls the CreateOrResumeCart and AddCartLines pipelines.

Note

If the Success property of the ReorderResult is false, no items are added to the customer’s cart. If the Success property is true, at least one item was successfully added to the cart.

AddReorderShippingInfoToCart Adds parties and shipping information associated with the reordered items to the customer’s cart. This processor calls the AddPartiesToCart and AddShippingInfo pipelines.

TriggerReorderRequestedPageEvent Triggers the Reorder Requested page event.

Note

If the Success property of the ReorderResult is false, no page event is triggered.

VisitorCancelOrder pipeline

Name:

VisitorCancelOrder

Description:

Called when a visitor order is being canceled.

Usage:

Called from Sitecore.

Args:

Request OrderId, CustomerId, OrderLineExternalIds and ShopName.

Response An instance of the order.

Processors:

VisitorCancelOrderFromECS–

Responsibility:Gets the order details for the specified order ID from the ECS.

Usage: The processor is mandatory.

Ownership: The processor is provided with the ECS connector integrating with Connect.

Customization: The processor must always have an implementation that works with the ECS.

TriggerPageEvent

Responsibility:Triggers the Connect specific page event, Visitor Canceled Order Details, along with information about the ShopName, Order ID and total order amount.

Usage: Mandatory.

Ownership: The processor is provided with Connect.

Customization: Overwrite the processor to register other values from the order.

Do you have some feedback for us?

If you have suggestions for improving this article,