Quote with the real cost of every warehouse, not a company-wide average.
Purchase Stock By Location adds per-location cost, availability, and margin to the Odoo sales order — plus stock policy, replenishment, and valuation reporting across every warehouse.
The problem
Odoo tracks average cost and on-hand quantity at the company level. When a salesperson picks a product, they see one blended number no matter which warehouse actually fulfils the order — so the margin on the quote does not match the real cost of stock sitting in one location versus another, and a location can quietly run dry while another sits overstocked.
The solution
This module gives every internal location its own maintained unit cost, availability, and stock policy, then surfaces all of it right on the sales order line. Pick a location and watch availability, cost, and margin update instantly — with dashboards, alerts, and replenishment advice keeping every warehouse in view.
Location-aware costing, from quote to warehouse
Every capability below is implemented in the module.
Per-Location Source Selection
Pick a source location on each sales order line, with real on-hand quantity and a color-coded stock state badge shown right in the picker.
Inline Margin Impact
Changing a line's location recomputes purchase price and margin instantly, using that location's own maintained unit cost, so profitability is visible while quoting.
Per-Location Unit Cost
Odoo's average cost is company-wide; this module maintains a genuine per-product, per-location unit cost that you can review and adjust at any time.
Configurable Stock Thresholds
Set a low-stock and an overstock threshold for every product/location pair, driving the state badges shown on quotes, rules, and dashboards throughout the app.
Cross-Location Comparison Dashboard
A pivot and list view puts quantity, stock value, and unit cost for every location side by side, so imbalances across warehouses are obvious at a glance.
Advisory Replenishment Recommendations
A recommendation engine blends recent sales velocity and open-quotation pipeline demand per location to suggest what to reorder and how urgently.
Configurable Low-Stock Alerts
A daily automated check notifies the responsible user whenever a location's stock drops into the low or out-of-stock range, before a sale fails.
Historical Valuation Snapshots
Daily automated snapshots of quantity, cost, and value per location build a trend you can pivot by date and warehouse for audit and finance review.
Enforced Location Selection (Optional)
Turn on a setting to block order confirmation until every storable line has a source location chosen, closing the blind spot that causes stockouts.
How it works
Set Location Costs
Create a Location Stock Rule for each product/location pair with its unit cost and stock thresholds.
Quote by Location
Pick a source location on each sales order line and see live availability, cost, and margin.
Watch the Dashboard
Compare quantity, value, and cost across every warehouse from the Comparison Dashboard.
Act on Alerts
Get notified of low stock and generate replenishment recommendations before a location runs dry.
Frequently asked
No sales fog. If your question isn't here, email us and we'll answer it the same way.
No. It keeps Odoo's native stock and accounting untouched and adds a separate, module-maintained unit cost per location that feeds sales-order costing, margin, and reporting.
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.
Purchase Stock By Location
A maintained unit cost, availability and stock policy per internal location, surfaced on the sales order line so margin updates as you pick — with a comparison dashboard, low-stock alerts, replenishment advice, and valuation snapshots.
Buy on Odoo App Store