Process Return

Warning

This documentation is for translated APIs and intended only for some implementations who have upgraded from a previous version of Order Management. Verify whether your implementation uses translated APIs before making this call, as you will experience errors if your tenant is not configured to use these. If your implementation is not configured to do so, then refer to the standard API documentation instead.

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 URLhttps://{tenantId}-translation.mozu.com/api/v2/return/action/process/
Sandbox URLhttps://{tenantId}-translation.sandbox.mozu.com/api/v2/return/action/process/
Supported FormatsJSON
HTTP MethodPOST

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:

ParameterTypeDescription
returnIDintegerA unique identifier for the return. The minimum value is “1”.

Optional Parameters

The following parameters are not required but might be useful:

ParameterTypeDescription
locationIDintegerA unique identifier for the fulfillment location. The minimum value is “1”.
returnReductionOverridenumberOverride the return reduction amount with this amount. The minimum value is “0”.
acceptedItemQuantityarrayThe 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.

ParameterTypeDescription
orderItemIDintegerA unique identifier for an order item. The minimum value is “0”.
quantityAcceptedintegerThe 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”.
orderItemUnitsarrayList of order item units associated to return with their unique identifiers and attributes.
returnedShippingnumberThis 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.

ParameterTypeDescription
orderItemUnitIDintegerA unique identifier for order item units.
serialNumbernumberThe 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.