Spree::ReturnAuthorization allows you to authorize the return of any part of
a customer's order. A return authorization can only be created for shipments
that have already been shipped. For each item in a return authorization, a
Return authorizations are also referred to as "return
merchandise authorizations" (RMAs) in the
After an order is shipped, administrators can approve the return of any part
of an order in the
solidus_backend (from the Orders -> Order -> RMA page).
Once an RMA has been created, store administrators can add any item listed in
the RMA to a new
Spree::ReturnAuthorization object has the following attributes:
number: The number assigned to the return authorization. It begins with an
Rand is followed by ten-digits (
state: The state of the return authorization. The state can be
order_id: The ID of the
Spree::Orderassociated with this return authorization.
memo: An administrative note regarding the authorization.
Spree::StockLocationassociated with this return authorization.
return_reason_id: The ID for the
Spree::ReturnReasonassociated with this return authorization.
RMAs begin the larger customer return process. Note that there are many ways that the administrator could provide compensation to a customer.
Return authorization flow
The RMA creation process typically includes the following steps:
- The administrator presses the New RMA button (on the backend's Orders -> Order -> RMA page).
- They select the items on the order that are being returned.
- For each item selected, they choose the following optional values:
- They choose a reimbursement type (if applicable). For example: store credit.
- They choose an exchange item (if applicable).
- They choose a reason for the return authorization for the item (if applicable). For example: "Damaged/Defective".
- They choose a stock location that the return is authorized to be shipped to.
- They write a memo that documents why the return authorization is being
- Once the new RMA form is completed, they press the Create button and
generate a new
After the customer has mailed their returns back, the administrator can mark the customer return as received (on the backend's Orders -> Order -> Customer Returns page).
Solidus is an open source platform supported by the community. We encourage everyone using Solius to contribute back to the documentation and the code.