Product Movement History in Odoo#
Every inventory movement in Odoo is recorded as a stock move - creating a permanent audit trail. Tracing this history answers questions like: "Where did these units come from?" "When did we ship this batch?" "What happened to the missing units?"
Accessing Stock Move History#
Inventory → Products → [Product] → In/Out (smart button) or:
Inventory → Reporting → Moves Analysis:
- Filter by product
- Date range for the audit period
- Location (from or to)
Stock Move Record Details#
Each stock move shows:
- Date: when the move occurred
- From → To: origin and destination locations
- Quantity: units moved
- Lot/Serial Number: tracking reference (if applicable)
- Source Document: the PO, SO, MO, or manual transfer that generated this move
- State: Done / Ready / Cancelled
Traceability for Lot-Tracked Products#
Inventory → Products → Lots/Serial Numbers → [Lot]:
- Traceability tab: full chain of custody
- Received from vendor (PO/2027/00245)
- Used in manufacturing order (MO-00891)
- Shipped to customer (Delivery/2027/00623)
This chain satisfies recall requirements: given a lot number, you can identify every customer who received product from that lot.
Inventory Valuation History#
For products using automated valuation:
Inventory → Reporting → Inventory Valuation:
- Value at each date: what was the inventory worth on the balance sheet?
- Drill down: which moves caused the value changes?
Reconciling with Accounting#
The physical inventory movements should match the accounting entries exactly:
- Each stock move → a valuation layer → a journal entry
- If they don't match: investigate unposted moves or manual journal entries not linked to stock moves
Accounting → Reporting → General Ledger → filter by the Inventory account → compare to Inventory Valuation report for the same period.
Common Investigation Scenarios#
"Why is our stock lower than expected?"
→ Inventory Moves filtered by product + date range → look for unexpected deliveries, scrap, or negative adjustments
"Where did lot X go?"
→ Lot traceability report → trace from vendor receipt to customer delivery
"Was this product received before or after the price change?"
→ Stock move date on the PO receipt → compare to the price change date in the price history

