OdooWiki OCA HUB

Rma Sale Auto Detect

rma_sale_auto_detect folder_open OCA/rma open_in_new
Uncategorised License: AGPL-3

This addon automatically links RMA records to the most relevant sale order lines based on delivered quantities and an eligibility period defined on the RMA operation.

The module will:

  • Search sale order lines delivered to the same partner
  • Filter them by the operation's allowed return period
  • Consume delivered quantities in chronological order
  • Link the RMA to the corresponding stock move(s)
  • Split the RMA if multiple deliveries or partial matches are needed
  • Flag the RMA if no matching sale delivery was found

auto_awesome What this module does

AI-generated from the code · Odoo 18.0

Automatically links return requests (RMAs) to the right delivered sales order lines, within a return period you define per operation, and warns you when no matching delivery is found.

When you create a return request (RMA) in draft, a new button "Link to sale line" appears in the header. Pressing it makes Odoo search the customer's sales orders for the same product, keep only the ones with delivered quantities still available to return, and connect the RMA to the matching delivery.

  • The search window is controlled by "Return eligibility duration (days)", set on the return operation (default 30 days) and copied onto the RMA. Set 0 to disable the automatic search, or a large number for lifetime warranty.
  • The operation also decides whether older or more recent sales orders are matched first.
  • If the requested quantity is larger than one delivery, the RMA is split into several RMAs so each one matches a delivery; if a delivery only covers part of the quantity, the remainder stays on the original RMA.
  • If nothing matches, the RMA is flagged with a warning message on the form: "No delivery move found or insufficient delivered quantity."
  • A second warning appears when the return period has already passed.
  • On confirmation, Odoo blocks the RMA if the quantity to return is higher than what is still returnable for that delivery.

The module adds a computed "RMA Returnable Quantity" on outgoing stock moves, showing how much of a delivery can still be returned, and touches rma, rma.operation and stock.move.

Depends on

Required by other modules

Models and fields (3)
  • rma · extends an existing modelsale_auto_detect_note, ignore_sale_auto_detect, return_eligibility_days (Return eligibility duration (days)), has_sale_auto_detect_issue, return_eligibility_period_exceeded
  • stock.move · extends an existing modelrma_returnable_uom_qty (RMA Returnable Quantity)
  • rma.operation · extends an existing modelreturn_eligibility_days (Return eligibility duration (days)), return_eligibility_order

Text generated by AI (DeepSeek) from reading the Odoo 18.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub

Availability by version

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

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

terminal Installation and usage

OCA documentation · Odoo 18.0
  • Create an RMA in Draft state
  • Set the partner, product, quantity and operation
  • Click "Link to sale order"

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.