This module allows users to register stock moves with a past date (i.e., a date different from the current one). It is especially useful for accurately reflecting historical stock movements and maintaining correct inventory records.
If Perpetual Inventory Valuation is enabled, the generated journal entries will reflect the chosen backdated date accordingly.
auto_awesome What this module does
AI-generated from the code · Odoo 18.0Lets warehouse users record stock moves, inventory adjustments and scrap with a past date instead of today's date, so historical stock and accounting entries match reality.
This module adds a backdating date to several stock operations so you can register them as if they happened in the past.
- On transfer operations (stock.move.line), a new field "Actual Movement Date" appears in the detailed operations list. You can also use the "Fill Actual Movement Date" button on a transfer to set the same date on all its operations at once.
- On transfers (stock.picking), a "Forced Effective Date" is shown when all operations share the same backdate, and the transfer's completion date is set to the latest move date.
- On inventory adjustments (stock.quant), an "Actual Inventory Date" field is available in inventory mode; when applied, the adjustment and its stock move lines use that date.
- On scrap orders (stock.scrap), a "Forced Effective Date" field lets you date the scrap in the past.
Business rules: a date in the future is refused with an error. When backdating is used, the related stock valuation layers and accounting journal entries are dated with the chosen date, and currency conversion for purchase prices uses that date. The module touches stock.move, stock.move.line, stock.picking, stock.quant and stock.scrap, and adds a small wizard fill.date.backdating.
Depends on
Models and fields (6)
- stock.move · extends an existing model
- stock.quant · extends an existing modeldate_backdating (Actual Inventory Date)
- stock.scrap · extends an existing modeldate_backdating (Forced Effective Date)
- stock.picking · extends an existing modeldate_backdating (Forced Effective Date)
- stock.move.line · extends an existing modeldate_backdating (Actual Movement Date)
- fill.date.backdating · new modeldate_backdating (Actual Movement Date)
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-03Confirmation status: 4 confirmed, 5 with no information of 9 versions.
Sources · Odoo 18.0
Confirmed on 2026-11-03 in branch 18.0 of OCA/stock-logistics-workflow.
terminal Installation and usage
OCA documentation · Odoo 18.0Usage
Source · Odoo 18.0How to Use Backdated Stock Movement:
- Transfer the products and process as usual until the status becomes Ready.
- Click Fill Actual Movement Date \> select the backdate \> click Apply.
- The system will display the Forced Effective Date as the selected backdate.
- Click Validate \> check that the Stock Valuation Date and the Journal Entries (if using Perpetual Inventory Valuation) are backdated accordingly.
No verified information in OCA: Installation, Configuration.
Installation instructions, the distribution package, dependencies and configuration steps are not shown because they have not yet been verified in the module documentation for any version.
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.