OdooWiki OCA HUB

Return Merchandise Authorization Management - Link with Sales

rma_sale folder_open OCA/rma open_in_new
RMA License: AGPL-3

This module allows you to link a sales order to an RMA. This can be done by creating an RMA from scratch and selecting the sales order, creating one or more RMAs from a sales order form view or from a sales order web portal page.

auto_awesome What this module does

AI-generated from the code · Odoo 19.0

Lets users create return requests (RMAs) directly from a confirmed sales order, either in Odoo or from the customer portal, and keeps the sales order, deliveries and refunds linked together.

This module connects return merchandise authorizations (RMAs) with sales orders, so a return can be traced back to the order and the delivery it came from.

  • On a confirmed sales order a "Create RMA" action opens a wizard listing the delivered products and quantities. Users pick the requested operation, the RMA location, a shipping address and the quantity to return; a "Return All?" option fills quantities automatically. The wizard refuses quantities above what was delivered.
  • The sales order shows an RMA count and a button to open the related RMAs; each order line also counts its own RMAs. The sales analysis report gains a "Number of RMAs" figure.
  • On an RMA form, users can pick the sale order, the delivery and the delivered line; the product list is limited to products of that order. A "Mark To Refund" button is available when the RMA can be refunded without an invoice.
  • Refunds created from an RMA inherit the salesperson, fiscal position, journal and original invoice, and are linked back to the sales order so invoiced quantities stay correct. Cancelling, resetting to draft or deleting such a refund adjusts the link to the return move.
  • Returning goods from a delivery operation also creates an RMA already linked to its sales order.
  • In the customer portal, customers can request an RMA from their order page, choose a delivery address, quantities and operations, and follow their RMAs. A company setting switches this request to a full page instead of a popup.
  • The RMA printed report now shows the sale order.

Depends on

rmasale_stock
Models and fields (10)
  • rma · extends an existing modelmove_id, order_id (Sale Order), refund_id, picking_id, product_id, sale_line_id, allowed_move_ids, allowed_picking_ids, allowed_product_ids, can_be_refunded_with_invoice
  • sale.order · extends an existing modelrma_ids (RMAs), rma_count (RMA count)
  • res.company · extends an existing modelshow_full_page_sale_rma (Full page RMA creation)
  • sale.report · extends an existing modelrma_count (Number of RMAs)
  • account.move · extends an existing model
  • sale.order.line · extends an existing modelrma_ids (RMAs), rma_count
  • res.config.settings · extends an existing modelshow_full_page_sale_rma
  • stock.return.picking · extends an existing model
  • sale.order.rma.wizard · new modelline_ids (Lines), order_id, location_id (RMA location), operation_id (Requested operation), is_return_all (Return All?), custom_description, partner_shipping_id (Shipping Address), commercial_partner_id (Commercial entity)
  • sale.order.line.rma.wizard · new modeluom_id (Unit of Measure), move_id, order_id, quantity, wizard_id, picking_id (Delivery order), product_id, description, operation_id (Requested operation), sale_line_id, allowed_uom_ids, allowed_quantity, return_product_id, allowed_picking_ids, allowed_product_ids, different_return_product

Text generated by AI (DeepSeek) from reading the Odoo 19.0 code on GitHub; it may contain mistakes, so check the code before deciding. The module is very large and only part of the code was read. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 8 confirmed, 1 with no information of 9 versions.

terminal Installation and usage

OCA documentation · Odoo 19.0

To use this module, you need to:

  • Go to RMA \> Orders and create a new RMA.
  • Select a sales order to be linked to the RMA if you want.
  • Now you can do the rest of the instructions described in the readme of the rma module.

If you want to create one or more RMAs from a sale order:

  • Go to Sales \> Orders \> Orders.
  • Create a new sales order or select an existing one.
  • If the sales order is in 'Sales Order' state you can see in the status bar a button labeled 'Create RMA', click it and a wizard will appear.
  • Modify the data at your convenience and click on 'Accept' button.
  • As many RMAs as lines with quantity greater than zero will be created. Those RMAs will be linked to the sales order.

The customer can also create RMAs from a sales order portal page:

  • Go to a confirmed sales order portal page.
  • In the left sidebar you can see a button named 'Request RMAs'.
  • By clicking on this button a popup will appear to allow you to define the quantity per product and delivery order line.
  • Click on the 'Request RMAs' button and RMAs will be created linked to the sales order.

Single page RMA request:

  • Go to Sales > Configuration > Settings
  • Check the 'Single page RMA request' box.
  • On a sales order in the portal, clicking on 'Request RMAs' button will open a new page (not a popup).

No verified information in OCA: Installation, Configuration.

info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.