Order Return

In this document, you’ll learn about order returns.

What is a Return?#

A return is the return of items delivered from the customer back to the merchant. It is represented by the Return data model.

A return is requested either by the customer from the storefront, or the merchant from the admin. Medusa supports an automated Return Merchandise Authorization (RMA) flow.

Diagram showcasing the automated RMA flow.

Once the merchant receives the returned items, they mark the return as received.


Returned Items#

The items to be returned are represented by the ReturnItem data model.

The ReturnItem model has two properties storing the item's quantity:

  1. received_quantity: The quantity of the item that's received and can be added to the item's inventory quantity.
  2. damaged_quantity: The quantity of the item that's damaged, meaning it can't be sold again or added to the item's inventory quantity.

Return Shipping Methods#

A return has shipping methods used to return the items to the merchant. The shipping methods are represented by the OrderShippingMethod data model.

In the Medusa application, the shipping method for a return is created only from a shipping option, provided by the Fulfillment Module, that has the rule is_return enabled.


Refund Payment#

The refund_amount property of the Return data model holds the amount a merchant must refund the customer.

The OrderTransaction data model represents the refunds made for the return.


Returns in Exchanges and Claims#

When a merchant creates an exchange or a claim, it includes returning items from the customer.

The Return data model also represents the return of these items. In this case, the return is associated with the exchange or claim it was created for.


How Returns Impact an Order’s Version#

The order’s version is incremented when:

  1. A return is requested.
  2. A return is marked as received.
Was this page helpful?
Edit this page