Documentation

Ucommerce includes full API reference documentation and lots of helpful articles to help you build your e-commerce site as effortlessly as possible.

Topics Payment Providers
v7.18

Pipeline Overview

In this article, you will get an overview of many of the pipelines in Ucommerce and when they are used. If you want to modify the behavior of any of the pipelines, you should take a look at our article: Create pipeline task.

If you want general information about what a pipeline is you should take a look at the pipelines explained article.

Basket pipelines

Add Address pipeline

The add address pipeline is used to add and update both shipping and billing addresses to a basket. If you want to change the way addresses are added/updated or react to an address being added/updated, this pipeline is where you should hook in a custom pipeline task.

In Sitecore, this pipeline also adds information about the customer to the analytics tracker.

The add address pipeline is registered with the id "AddAddress".

Add to Basket pipeline

The add to basket pipeline is used to add a product to a basket, If you want to change the way products are added to a basket, add additional information or react to a product being added to a basket, this is where you should hook in a custom pipeline task.

The add to basket pipeline is registered with the id "AddToBasket".

Basket pipeline

The basket pipeline is used to apply discounts, calculate taxes and calculate the different totals on a basket. If you want to add additional information, change the way discounts, taxes or totals are handled, this is where you should hook in a custom pipeline task.

The basket pipeline is used during browse and checkout to keep the customers basket up to date and should be executed every time the basket is being modified.

The basket pipeline is registered with the id "Basket".

Checkout pipeline

The checkout pipeline is used after the callback from the payment gateway, which is successful. The checkout pipeline will convert the basket into an order, assign an order number, run the create customer pipeline, run the create member pipeline and send a confirmation email to the customer. If you want to change the way the previously mentioned actions are handled or you want to react to a basket becoming an order, this is where you should hook in a custom pipeline task.

The checkout pipeline is registered with the id "Checkout".

Create Basket pipeline

The create basket pipeline is used to create a basket and assign the customer the "basketid" cookie. If you want to change the way baskets are created, the "basketid" cookie is created or react to the basket being created, this is where you should hook in a custom pipeline task.

The create basket pipeline is registered with the id "CreateBasket".

Create Shipment pipeline

The create shipment pipeline is used to create a shipment and add all the baskets order lines to the new shipment. If you want to change the way the shipment is created, how it handles the order lines or react to a shipment being created, this is where you should hook in a custom pipeline task.

The create shipment pipeline is registered with the id "CreateShipment".

Get Basket pipeline

The get basket pipeline is used to get an existing basket and extending the "basketid" cookie's lifetime or create a new basket depending on the input parameters. If you want to change the way the pipeline fetches a basket, the way the basketid cookie's lifetime is extended, the way it is determined whether to create a new basket or not or react to a shipment being created, this is where you should hook in a custom pipeline task.

The get basket pipeline is registered with id "GetBasket".

Remove Shipment pipeline

The remove shipment pipeline is used to remove a shipment from a basket. If you want the change the way the shipment is removed or react when a shipment is removed from the basket, or react to a shipment being removed, this is where you should hook in a custom pipeline task.

The remove shipment pipeline is registered with id "RemoveShipment".

Update Line Item pipeline

The update line item pipeline is used to update an order line on a basket, it will remove the order line if the input parameter "Quantity" is 0. If you want to change the way the order line is updated or reach when an order line is updated, this is where you should hook in a custom pipeline task.

The update line item pipeline is registered with id "UpdateLineItem".

Catalog pipelines

Get Product pipeline

The get product pipeline is used to fetch a single product based on a SKU or a SKU and a variant SKU. If you want to change the way products are fetched or react when a single product is fetched from the database, this is where you should hook in a custom pipeline task.

The get product pipeline is registered with id "GetProduct".

Product review pipeline

The product review pipeline is used to create a product review, auto-approve the review based on store settings and calculate the product's average rating. If you want to change the way the review is created, how it is determined whether to auto-approve the review or not, how the average product rating is calculated, or react to a product review being created, this is where you should hook in a custom pipeline task.

The product review pipeline is registered with id "ProductReview".

Product Review Comment pipeline

The product review comment pipeline is used to create a product review comment and auto-approve the comment based on store settings. If you want to change the way a comment is created, how it is determined whether the comment should be auto-approved, or react when product review comment is created, this is where you should hook in a custom pipeline task.

The product review comment pipeline is registered with id "ProductReviewComment".

Update Exchange Rates pipeline

The update exchange rates pipeline is used to update the "uCommerce_ExchangeRate" table with up-to-date values and is also responsible for creating exchange rate records for currency combinations that do not yet have one. If you want to change the way currencies are loaded, which currencies are taken into consideration when creating exchange rate records or you want to execute custom tasks when this pipeline runs, this is where you should hook in a custom pipeline task. Read more about Exchange Rates.

The update exchange rates pipeline is registered with id "UpdateExchangeRates".

Customer pipelines

Create Customer pipeline

The create customer pipeline is run by the checkout pipeline if a customer doesn't already exist with the email provided in the basket's billing address and is in charge of creating a new Customer. If you want to change how the customer is created or react to a customer being created, this is where you should hook in a custom pipeline task.

The create customer pipeline is registered with id "CreateCustomer".

Create Member pipeline

The create member pipeline is run by the checkout pipeline depending on the store settings and whether a member exists for the customer. If you want to change how the member is created or react to a member being created, this is where you should hook in a custom pipeline task.

The create member pipeline is registered with id "CreateMember".

Order pipelines

Order Save Pipeline

The order save pipeline is used when an order is saved in the back office and it calculates taxes and calculates the different totals on a basket, it doesn't modify discounts. If you want to add additional information, change the way taxes or totals are handled, this is where you should hook in a custom pipeline task.

The order save pipeline is registered with the id "SaveOrder".

Order To Canceled Pipeline

The order to canceled pipeline is used when the order status of an order is changed to canceled in the back office. You can configure Ucommerce to cancel/refund payments when the pipeline is run. If you want to add additional information or want to react to an order being canceled, this is where you should hook in a custom pipeline task.

The order to cancel pipeline is registered with the id "ToCancelled".

Order To Completed Pipeline

The order to completed pipeline is used when the order status of an order is changed to completed in the back office. You can configure Ucommerce to cancel/refund payments when the pipeline is run. If you want to add additional information or want to react to an order being completed, this is where you should hook in a custom pipeline task.

The order to completed pipeline is registered with the id "ToCompletedOrder".