Commerce Service Center adds four calculators which are used for pricing exchange orders. There are two item pricing post calculators in /atg/commerce/custsvc/pricing/calculators:
ExchangePromotionEvaluationUpdateCalculator– This calculator executes the process that updates the Promotion Evaluation Order. This process copies the exchange items into the Promotion Evaluation Order and then re-prices it. This results in exchange item pricing in accordance to other items still owned by the customer and any item promotions that may applyExchangeItemAdjustmentCalculator– This calculator copies pricing information for each exchange item from the Promotion Evaluation Order to the exchange order
There are two order pricing post calculators in /atg/commerce/custsvc/pricing/calculators:
ExchangeOrderAdjustmentCalculator– This calculator applies order promotions to the exchange order that are applied to the Promotion Evaluation Order. The promotion adjustment value is based on the order discount share value applied to the exchange itemsExchangeOrderDiscountCalculator– This calculator applies manual adjustments that are applied to the Promotion Evaluation Order to the exchange order. The manual adjustment value is based on the manual adjustment share value applied to the exchange items
The ItemPricingEngine configuration contains the ExchangeItemAdjustmentCalculator item pricing calculator. This calculator adjusts the ItemPriceInfo of an item in the Exchange Order based on pricing of the corresponding item in the Promotion Evaluation Order and copies that information from the Promotion Evaluation Order to the ItemPriceInfo created for the exchange item. This includes the amount, all PricingAdjustments and DetailedItemPricingInfos. This prices the item in the Exchange Order with the exact pricing it received in the Promotion Evaluation Order, including any item level promotions that may have been applied.
If manual adjustments are applied to the Promotion Evaluation Order, they are applied to the exchange order by the OrderPricingEngine post calculator OrderAdjustmentCalculator. This calculator implements priceOrder to trigger the calculation or the manual adjustment value map when pricing an Exchange Order, then determines if manual adjustments should be applied to the exchange order. If necessary, the calculator overrides the adjustOrderSubTotal to adjust the order subtotal based on the pre-calculated value of each manual adjustment.

