Loading...
Area: Optimizely B2B Commerce

Pricing Pipelines

Recommended reading 

GetCartPricing

Order Pipe Description
100 CalculateOrderLines

If the CalculateOrderLines property on the parameter object is true or the Cart LastPricingOn is null, gets all CartLines that are:

  • not awaiting approval and UpdatePricingOnApproval is false
  • not promotional items
  • configured and not in quote proposed status
  • quote required and not in quote proposed status

Calls IPricingPipeline.GetProductPricing setting the OrderLine of the parameter to get the pricing of the CartLines.

150 CalculateCartRealTimePricing If IPricingService is RealTime and the CalculateOrderLines property on the parameter object is true, calls IRealTimePricingService.GetPricing and sets the CartLine pricing equal to the result from the call.
200 CalculateShipping If the user is signed in or a remembered user and theCalculateShipping property on the parameter object is true, callsICartPipeline.CalculateHandling andIShippingEngine.ProcessShipping on the Cart. If this changes the Cart ShipVia, it setsCart.RecalculatePromotions andCart.RecalculateTax to true.
300 CalculatePromotions If the Cart Type is not Quote and the Cart Type is not Job, callsIPromotionEngine.ApplyPromotion on the Cart.
400 CalculateTaxes If the user is signed in or a remembered user that has set their address and theCalculateTaxes property on the parameter object is true, callsITaxEngine.CalculateTax on the Cart.
500 CalculateOrderTotal If theCalculateOrderTotal property on the parameter object is true and there are CartLines, calculates the order total and setsCart.OrderTotal and setsCart.LastPricingOn to the current date time.

GetProductPricing

Order Pipe Description
100 CalculatePrice For eachPricingServiceParameter in the parameter, callsIPricingService.CalculatePrice and add the result to the resultProductPriceDtos collection.
150 CalculateProductRealTimePricing If IPricingService is RealTime and parameter PerformRealTimePricing is true, calls IRealTimePricingService.GetPricing and sets result ProductPriceDtos equal to the result from the call.
Do you find this information helpful? Please log in to provide feedback.

Last updated: Dec 11, 2020

Recommended reading