Backdate stock transfers correctly — stock, valuation and journals together
Force a stock picking onto a historical date and every downstream record moves with it — stock moves, valuation and journal entries — with a reason, an approval workflow, and a full audit trail built in.
The problem
Odoo stamps every stock transfer with the date it was validated and locks accounting periods, so there is no built-in way to record a transfer on the date it actually happened. Paperwork that reaches the office late, data migrations, acquisitions, and physical-count reconciliations all need the stock ledger — and its valuation and journal entries — to land in the correct historical period, but Odoo actively resists it.
The solution
A pre-configured backdate field ships directly on the transfer form. Set a historical date and a reason, and validation forces the stock moves, the inventory valuation and the linked journal entry to that same date — automatically, with a warning banner, an optional approval gate for high-impact changes, a batch wizard for bulk corrections, and a permanent audit trail of every change.
Everything a governed backdate needs
Every capability below is implemented in the module.
Pre-configured backdate field
Ships directly on the transfer form: a Force Date, a required reason, an approval-state badge and the estimated backdated value — no customization needed before you can use it.
Impact warning banner
Before you validate, the form warns you when a target date falls inside a locked accounting period, crosses the approval threshold, or needs a prerequisite you have not set up yet.
Full audit trail on every transfer
Each transfer keeps its own Backdate History page, listing every backdate applied to it so nobody has to guess what changed after the fact.
Approval workflow
Request, Approve and Refuse buttons plus a state badge gate any backdate that crosses your configured value or age threshold, so high-impact changes never slip through unchecked.
Backdated marker on the transfers list
An optional "Is Backdated" column lets warehouse and finance teams spot every corrected transfer at a glance, straight from the standard list view.
Immutable backdating audit log
A dedicated, company-wide log lists every backdate ever applied, grouped by user, with no unlink or edit access — a permanent record for auditors.
Detailed log entries
Every log row records what changed, when, and by whom, along with the valuation amount involved and whether the linked journal entry was re-dated.
Configurable guardrails
Set an approval value threshold and a maximum backdate age right from Settings, and restrict the backdate right itself to a dedicated Inventory access group.
Batch date-range wizard
Load transfers by date range and operation type, then backdate the whole selection in one pass with a single shared reason — built for migrations and acquisition clean-ups.
How it works
Set the force date
On the transfer form, enter the historical date and a reason — or open the batch wizard to select many transfers by date range at once.
Review the warning
The form shows the estimated value impact and flags locked periods or approval requirements before you go further.
Approve if required
Backdates over your configured threshold or age wait for a manager to Approve or Refuse before they can be applied.
Validate and audit
Validating forces stock, valuation and the journal entry onto the same date, and records the change on the transfer's history and the company-wide audit log.
Frequently asked
No sales fog. If your question isn't here, email us and we'll answer it the same way.
Validating a backdated transfer forces the stock moves, the inventory valuation and the linked journal entry onto the same historical date, so your stock ledger and your accounting stay in sync.
Buy it on the Odoo App Store
Purchase, download and install directly from the official Odoo Apps Store — you'll always get the latest supported build.
Stock Picking Backdated (Force Date)
Force a transfer's stock ledger, valuation and journal entries onto a historical date, behind an impact warning, configurable guardrails, approval thresholds, a batch date-range wizard and an immutable backdating log.
Buy on Odoo App Store