Once a return has been created, the Return API can process it. This handles payment refunds and other needs before marking the return case as closed. An open RMA is required to process a return. Merchants can process the full return or only partially accept the return. The API can also change the return amount for the RMA.
Note that the request body and parameter schemas outlined in this guide are the exact same as in the previous version of OMS, as the Unified Commerce platform supports backwards compatibility for this API. The only change to this request is the format of the base endpoint, as shown in the below table. Remember to provide the x-vol-tenant key for authentication in the headers.
Production URL | https://{tenantId}-translation.mozu.com/api/v2/return/action/process/ |
Sandbox URL | https://{tenantId}-translation.sandbox.mozu.com/api/v2/return/action/process/ |
Supported Formats | JSON |
HTTP Method | POST |
Example
This particular case will have the following properties:
- Return ID – 00000
- Product ID – 1234567
- Quantity – One
Required Parameters
The following parameters are required to process a return:
Parameter | Type | Description |
returnID | integer | A unique identifier for the return. The minimum value is “1”. |
Optional Parameters
The following parameters are not required but might be useful:
Parameter | Type | Description |
locationID | integer | A unique identifier for the fulfillment location. The minimum value is “1”. |
returnReductionOverride | number | Override the return reduction amount with this amount. The minimum value is “0”. |
acceptedItemQuantity | array | The quantity of each product that is being returned. If not provided in the request, all items on the return will be automatically accepted. |
Accepted Item Quantity
The Accepted Item Quantity object includes its own set of properties. Only orderItemID and quantityAccepted parameters are required.
Parameter | Type | Description |
orderItemID | integer | A unique identifier for an order item. The minimum value is “0”. |
quantityAccepted | integer | The quantity of this item to accept on return. Items with a value of 0 will be rejected from the return. The minimum value is “0”. |
orderItemUnits | array | List of order item units associated to return with their unique identifiers and attributes. |
returnedShipping | number | This is the amount of shipping to return to the customer. This field is only used for EU integrations. |
The items (/acceptedItemQuantity/orderItemUnits/[object]) that make up the orderItemUnits array are objects with two possible parameters. Only orderItemUnitID is required.
Parameter | Type | Description |
orderItemUnitID | integer | A unique identifier for order item units. |
serialNumber | number | The serial number for an individual unit within an item. |
The array used in the example defines a single order item unit:
"acceptedItemQuantity" : [ { "orderItemID" : 1234567, "quantityAccepted" : "1" } ]
The Full Request
This is what the example’s request for a single return item would look like.
{ "returnID" : 000000, "locationID" : 111111, "returnReductionOverride" : null, "acceptedItemQuantity" : [ { "orderItemID" : 1234567, "quantityAccepted" : "1" } ] }
The returned response follows the same structure as the Get Return API, providing information about the return that was processed.