Got questions? Leave your message here or Schedule a quick call with our manager now

How to Work With Returns?

Return (RMA, Return Merchandise Authorization) - return of low-quality or defective goods for repair, replacement, refund, etc. Only shipped goods can be returned.

The return process may vary depending on the specific eCommerce platform. However, the return procedure usually includes the following:

  1. The customer creates a return request, where he indicates the product he wants to return, the reason for the return, and the desired action (product replacement, repair, refund, etc.).
  2. Depending on the return policy of a particular online store, the seller can confirm or reject the customer's request.
  3. If the manager confirms the return request, the product is sent back to the seller.
  4. The seller performs an action (replaces the product, refunds, etc.).

First of all, you need to check in the API2Cart API Documentation whether there are methods for working with returns for your chosen eCommerce platform:

return methods api2cart

You should also read the method description to know which options are supported and required for a particular eCommerce platform.

Or you can use this link.

Returns are closely related to orders. Methods for importing (creating and updating) returns are in the order section. For greater filtering capabilities, methods for exporting returns are placed in a separate return section.

To create a return, you need to use the order.return.add method.

order return method

For all platforms, order_id and order_products must be specified. That is, which order and which products in the order will be returned.

In order_products, you need to specify the following:

  • order_product_id - the product ID in the order. The value should be taken from the export of orders (order.list/info)
  • order_product_id
  • order_product_quantity - number of product units to be returned.

Depending on the eCommerce platform, you must also specify:

  • order_product_reason_id return reason, the value must be taken from the return.reason.list method. Not supported on
  • order_product_customer_comment - the customer's comment describing the reason for the return. On some platforms, there may be a separate comment for each product, and on some, there may be one common comment for all products, in which case you need to specify the comment parameter.
  • order_product_handling_status - supported only on Is required. This is the processing status of the returned product. Possible values are displayed in the error text if an incorrect value is specified.
  • order_product_handling_status
  • return_status_id - return status, the value must be taken from the return.status.list method.

The return status can be updated using the order.return.update method.

order.return.update method

You can't specify any return status on Shopify. Shopify has a clear return workflow. Follow this chart to find out which status you can upgrade to.

return status on Shopify

A list of all returns can be obtained with the help of return.list method.

For Shopify, you must specify the order_id or order_ids parameter. That is, on Shopify, you can only issue returns for a specific order.

In order to find out for which orders there are returns, you need to select the value from the export orders field additional_fields -> return_status.


If the value is no_return, then no return request was created for such an order. Accordingly, return.list will not return anything for such an order. If the status is any other, then in this case, a return will be displayed for the order.

For Shopify, there is a return_status filter in the order.list method that allows you to filter orders for which there is a return.

Posted in: General Service Questions