The need
In standard Odoo a line cannot be duplicated: to order the same product with another quantity or description you type everything again. A manually changed price, a discount or an analytic split easily gets lost along the way. The mistake only shows on the invoice.
What the module does
At the end of every line of a quotation, sales order, request for quotation or purchase order, a « Duplicate line » icon appears next to the bin icon. One click first saves the order, as any line button does in Odoo, then creates the copy right under the original. The copy takes over what you entered: description, quantity, price, discount, taxes, analytics and custom attribute values. It starts with nothing delivered, received or invoiced. All that is left is to change what differs.
What you gain
Copy placed under the original
The copy takes the slot after the duplicated line and the following lines move down by one. Your sections keep their order.
Prices and discounts kept
A price typed by hand, a discount, edited taxes or an analytic distribution are copied as they are, with no pricelist recalculation.
Combos copied whole
On a combo, a product sold with its components such as a meal deal or a bundle, the combo's icon also copies all its components, linked to the new line.
Progress reset to zero
Delivered, received and invoiced quantities are never copied. On an order already confirmed, Odoo plans the delivery or receipt of the copy when Inventory is installed.
Protected lines
The icon does not show on sections, down payments, shipping charges, loyalty rewards or combo components. It also disappears on a locked or cancelled order.
How it works
Install the module
In Apps, search for the module and click Activate. The Sales and Purchase apps are installed if missing.
Open an order
Open a quotation, sales order, request for quotation or purchase order that is not locked.
Click the copy icon
At the end of the line to repeat, click the « Duplicate line » icon. The order is saved and the copy appears right below.
Edit the copy
Change only what differs, such as the quantity or description, then save.
Screenshots
Frequently asked questions
A line button works on a line stored in the database, so Odoo saves the order before creating the copy, as with any button placed on a line.
Yes, as long as it is neither locked nor cancelled. The copy gets its own delivery or receipt; those of the original line stay as they are.
The module duplicates one line at a time. In Odoo 19 and 20, the ⋮ menu of a section already offers « Duplicate » to copy the section with its content.
Yes, in Community as well as Enterprise. It needs the Sales and Purchase apps.
No. The copy keeps the price and discount of the original line. If you then change the product or the quantity, Odoo applies its usual rules.
The icon goes away. Copies already created are ordinary lines and remain in your orders.
Scope
The module covers the lines of quotations, sales orders, requests for quotation and purchase orders. Copies are ordinary Odoo lines that then follow the usual delivery, receipt and invoicing flow.
Technical sheet
- Technical name
- anor_order_line_duplicate
- Odoo versions
- 18.0, 19.0, 20.0
- Application
- Sales
- Dependencies
- sale, purchase
- Licence
- LGPL-3
- Published by
- ANOR
Disclaimer — This module is provided "as is", without warranty of any kind. ANOR Group shall not be held liable for any direct or indirect damages resulting from its use, its installation or its modification by a third party, nor from its use outside the scope of a contractual ANOR service.





