Calculating a cart line sell price

The cart line sell price is calculated in the IPopulateValidateCartPipeline plugin.

The following messages are generated when calculating the cart line sell price:

Message

Circumstance

CartItem.SellPrice<=SellableItem.SellPrice: Price={purchaseOptionPolicy.SellPrice.AsCurrency()}

The SellableItem has a PurchaseOptionMoneyPolicy (indicating it can be sold in the currency desired).

CartItem.SellPrice<=SellableItem.Variation.SellPrice: Price={purchaseOptionPolicy.SellPrice.AsCurrency()}

The item has a variation and the variation has a PurchaseOptionMoneyPolicy.

CartItem.SellPrice<=PriceCard.ActiveSnapshot: Price={purchaseOptionPolicy.SellPrice.AsCurrency ()}|Qty={tier.Quantity}

The SellableItem has a calculated PriceSnapshotComponent and line.Quantity <= tier.quantity (takes first in descending order).