Price History on Orders for Odoo 19 documentation
A guide to price history: the last price on sales and purchase lines, the history, using the last price, the product buttons and access rights.
Documents version 1.0.0Updated Oct 23, 2026
Start here
In plain words: “What did we charge them last time?” and “What did this vendor charge us?” are asked on every quotation and every purchase order, and the answer is hidden in old orders. Price History on Orders puts it on the line: the last price this customer paid (or this vendor charged) for the product, how your price compares in percent, and a click to the full history.
Tip: Nothing to configure: install it and the columns are on the order lines.
What you get
| Feature | What it does |
|---|---|
| Last price | On every sales order line: the unit price of the last confirmed order of this customer for the product, in the unit of the line. |
| Against last | The difference in percent: green when you charge more, red when less (the other way on purchases). |
| Purchases | The same on purchase order lines, with the last price of the vendor. |
| History | A button on the line opens the confirmed orders of this customer or vendor for the product, newest first. |
| All customers | Managers can open the history of the product with every customer or vendor. |
| Use the last price | A button on a quotation line puts the last price in the unit price. |
| On the product | Sales prices and Purchase prices buttons list every confirmed line of the product (managers). |
| Right companies | The contacts of a company share its history; each company sees its own orders. |
| Arabic | Everything is translated and works right to left. |
Requirements
| Item | Details |
|---|---|
| Odoo | 19.0 (Community or Enterprise) |
| Apps needed | Sales (sale) and Purchase (purchase) |
| License | OPL-1 (Odoo Proprietary License v1.0) |
Install
- Unzip the package. Inside is
taqnix_price_history.zip; unzip it to get the foldertaqnix_price_history. - Copy the folder into one of the
addons_pathfolders of your Odoo server and restart Odoo. - Log in as an administrator, activate Developer mode, open Apps and press Update Apps List.
- Remove the “Apps” filter, search Price History on Orders and press Install.
# or from the command line ./odoo-bin -c odoo.conf -d YOUR_DATABASE -i taqnix_price_history --stop-after-init
On a quotation
In plain words: Open a quotation or a sales order. Next to the unit price you see Last price and vs last %. Optional columns give the date and the number of the last order: use the column selector.
| Icon | What it does |
|---|---|
| History (clock) | Opens the confirmed orders of this customer for the product. |
| Users | Managers: the orders of all the customers. |
| Undo | Uses the last price as the unit price (draft and sent quotations). |
Tip: The last price is the last confirmed order. Quotations, cancelled orders and the order you are working on are not counted.
On a purchase order
In plain words: The same columns on the lines of an RFQ or purchase order, with the last price of this vendor. A price above the last one is shown in red.
On the product
In plain words: Managers see Sales prices and Purchase prices buttons on the product form. They list every confirmed line of the product, with the customer or vendor, the quantity and the price.
How it is computed
| Rule | Detail |
|---|---|
| Same product | The product variant of the line. |
| Same partner | The same customer or vendor, and the other contacts of its company. |
| Confirmed only | Sales orders and purchase orders that are confirmed; not quotations, not cancelled ones. |
| Last by date | The latest order date wins, not the entry order. |
| Unit of measure | The price is brought to the unit of your line (dozen to unit, for example). |
| Currency | A price in another currency is shown as it was, with no percent. |
Who can do what
| Who | Can |
|---|---|
| Sales and purchase users | See the last price of the partner of the order, open its history and use the last price. |
| Sales and purchase managers (group Price history: all customers and vendors) | Also open the history with all the customers and vendors, and from the product form. |
Arabic and right to left
Limits
| Limit | Detail |
|---|---|
| By unit price | The last price is the unit price of the line; discounts are in the history list, not in the percent. |
| No price lists | The module shows what was charged; it does not change your price lists. |
| Computed when you open | The figures are read from your confirmed orders each time the order is shown. |
| Existing orders | History starts from your existing confirmed orders at once; nothing to import. |
For developers
In plain words: Skip this chapter if you only use the module.
line.tx_last_price, line.tx_last_date, line.tx_price_diff # on sale.order.line and purchase.order.line line.action_tx_use_last_price()
Troubleshooting
| Problem | What to do |
|---|---|
| The last price is empty | This customer has no confirmed order for the product (or only quotations). |
| “The last price is in EUR, not in the currency of this order” | Use another price; the last price was in a different currency. |
| I do not see the users icon | It is for managers (group Price history: all customers and vendors). |
| I do not see the columns | Open the column selector on the order lines and tick them. |
Updating and removing
Replace the folder with the new version, restart Odoo and run -u taqnix_price_history. Nothing is stored apart from the order date of lines, which is a copy.
Support
Installation help and bug fixes are included for 6 months, with lifetime updates. Contact us through the marketplace page where you bought the module or write to support@taqnix.com with your Odoo version and a screenshot.