Refunds and replacement item prices are calculated as though all of the items, including replacement items, were purchased together in a single order.
Return requests are derived from an originating order. The returnRequests
use the original purchase order to query the return request repository for related returns. Related return requests can be traced directly to the original purchase order through either the order or the replacement order properties. For information on extending returnRequest
objects, refer to the Extending Return Request Objects section.
Up to three orders are used for calculating the correct refund amount and exchange item prices. A Return Adjusted Order and a Return Calculation Order are generated for all returns. A Promotions Evaluation Order is generated when performing an exchange. Collectively, these orders are known as the working order:
Return Adjusted Order – Contains the items from the originating order and replacement items from any replacement orders. In creating the RAO the origination items and shipping group IDs are mapped to the RAO item and shipping group IDs. This order is available in the
ReturnRequest
through thegetReturnAdjustedOrder()
Return Calculation Order – A clone of the RAO that is adjusted for the items that are being returned in the current return request. Each item that is returned has a quantity adjustment in this order. The price change between the RCO and RAO is used to calculate the suggested refund amount. This order is regenerated each time new return items are selected by an agent. This order is available in the
ReturnRequest
through thegetReturnCalculationOrder()
The Promotion Evaluation Order – Created only for exchanges, the PEO is created by cloning the RAO. It determines how the original promotions affect the cost of the exchange items and changes in cost for the other items not being returned. This order is in the
ReturnRequest
through thegetPromotionEvaluationOrder()
Returns and Exchanges Pipelines
The following atg/commerce/commercepipeline.xml
purchase process pipelines are used by Commerce Service Center:
Pipeline Chain | Description |
---|---|
| This chain is executed by the |
| This chain is executed by the |
| This chain is executed by the |
For additional information on the CloneEditManager
, refer to the Cloning Core Classes section.