Inventory is one of the core applications in Odoo, and for most businesses it is one of the first they rely on. This guide explains what the Odoo Inventory application does: how it models warehouses and stock, how it runs operations, and the main capabilities a business should know about.
Warehouses and locations
Odoo Inventory models physical reality through warehouses and locations. A warehouse is a site, and within it Odoo uses a hierarchy of locations, so stock is not just "in the warehouse" but in a specific place within it. Odoo supports multiple warehouses, with transfers and resupply between them, so a business operating from several sites can manage them in one system. Reception and delivery can each be configured as one, two, or three steps, so the flow matches how a particular warehouse actually works rather than forcing one model.
Operations: receipts, deliveries, internal transfers
The day-to-day of Odoo Inventory is operations, called transfers. Receipts bring goods in, deliveries send goods out, and internal transfers move stock between locations. Each kind of transfer is governed by an operation type that defines how it behaves. Odoo supports batch transfers for processing groups of transfers together, wave picking for efficient order fulfilment, and backorder management when a transfer is only partly completed. Scrap is handled through dedicated scrap locations.
Stock control
Odoo tracks stock in real time, holding the quantity of each product in each location, and where relevant by lot, serial number, package, and owner. Products can be tracked by lot or by serial number, which gives full traceability, and Odoo can produce an upstream and downstream trace for any lot or serial. Inventory adjustments, the counting and correction of stock, are supported, including scheduled counts. Storage categories let a business control where products may be placed based on rules such as weight or quantity.
Replenishment
Odoo keeps stock at the right level mainly through reordering rules, which set a minimum and a maximum quantity for a product. When stock falls to the minimum, Odoo generates the replenishment needed to bring it back toward the maximum. There is also a manual replenishment option, and a scheduler that runs procurement regularly. Lead times are taken into account so replenishment is timed, not just triggered. This is how Odoo helps a business avoid both stock-outs and unnecessary excess.
Routes and rules
One of the more powerful concepts in Odoo Inventory is routes. A route is a defined path that stock follows, built from rules. The standard routes include buy, manufacture, make-to-order, drop-ship, and resupply between warehouses. Rules can be demand-driven, pulling stock through as it is needed, or supply-driven, pushing it onward as it arrives. Routes can be assigned at the level of a product, a product category, or a warehouse. This is what lets Odoo decide, for a given product, whether a need is met by buying, by manufacturing, or by moving stock from elsewhere.
Valuation and costing
Odoo values inventory and connects that valuation to accounting. It supports the standard costing methods, first-in-first-out, average cost, and standard cost, and valuation can be real-time, posting to the accounts as stock moves, or periodic. This is what makes the value of stock a real, current figure in the accounts rather than a separate calculation. We cover this in more depth in our piece on Odoo inventory valuation.
Connected to the rest of Odoo
The real strength of Odoo Inventory is that it is connected. It links to Sales, so deliveries flow from sales orders; to Purchase, so receipts flow from purchase orders; to Manufacturing, so production consumes and produces stock; and to Accounting, so inventory value and stock movements reach the books. Inventory is not an island in Odoo; it is one part of a connected operation.
The takeaway
The Odoo Inventory application models warehouses and locations, runs receipts, deliveries, and transfers, tracks stock in real time with lot and serial traceability, replenishes through reordering rules, moves stock along configurable routes, and values inventory into the accounts. Connected to the rest of Odoo, it is a capable foundation for managing stock. For how we approach Odoo, see our ERP practice.