Odoo Reordering Rules: Automatic Replenishment Setup Guide 2026
Stockouts cost businesses revenue, customer trust, and operational efficiency. Manual reordering is error-prone and time-consuming. Odoo's reordering rules automate the replenishment process, triggering purchase orders or manufacturing orders when stock falls below your defined minimum levels.
How Reordering Rules Work
Reordering rules are simple in concept: when the forecasted stock for a product drops below the minimum threshold, Odoo automatically generates a replenishment order to bring stock back up to the maximum level. The system handles the complexity of calculating when and how much to order.
The formula is straightforward: Order Quantity = Maximum − Forecasted Stock. If your minimum is 50 units and maximum is 200 units, and forecasted stock drops to 30, Odoo creates an order for 170 units.
What Counts as Forecasted Stock
Forecasted stock considers more than just what is physically on hand. It includes:
- On-hand quantity : Products physically in stock
- Incoming quantities : Confirmed purchase orders not yet received
- Outgoing quantities : Confirmed sales orders not yet delivered
- Reserved quantities : Stock allocated to specific operations
Enabling Reordering Rules
Reordering rules are available in Odoo Inventory out of the box, but proper configuration requires understanding several related settings.
Step 1: Check Multi-Step Routes
Navigate to Inventory > Configuration > Settings. Enable Multi-Step Routes if you need replenishment between warehouses or through intermediate locations. For simple buy-to-stock scenarios, this is optional.
Step 2: Configure the Buy Route
Each product needs a route that tells Odoo how to replenish it. The Buy route triggers purchase orders. Go to the product form, open the Inventory tab, and add Buy to the Routes field. For manufactured products, add Manufacture instead.
Step 3: Create the Reordering Rule
From the product form, click the Reordering Rules smart button. Create a new rule with these fields:
- Location : Usually WH/Stock (your main stock location)
- Minimum Quantity : The threshold that triggers replenishment
- Maximum Quantity : The target stock level after replenishment
- Quantity Multiple : Rounds the order quantity (useful when suppliers sell in fixed quantities)
Configuring Minimum and Maximum Quantities
Setting the right min and max values is the most important decision when configuring reordering rules. Get this wrong and you either order too frequently or tie up too much capital in inventory.
Calculating Your Minimum
The minimum should cover demand during your supplier's lead time plus a safety buffer. Calculate it as:
Minimum = (Daily Usage × Supplier Lead Time in Days) + Safety Stock
For example, if you sell 10 units per day, your supplier takes 5 days to deliver, and you want 20 units of safety stock: Minimum = (10 × 5) + 20 = 70 units.
Calculating Your Maximum
The maximum should balance ordering efficiency with storage costs. Consider:
- Supplier minimum order quantities : If your supplier requires orders of 100+, your maximum should accommodate this
- Storage capacity : Physical space constraints limit how much you can stock
- Cash flow : Higher maximums tie up more working capital
- Order frequency preference : A higher maximum means fewer but larger orders
Using Quantity Multiples
When suppliers sell in case packs or pallet quantities, set the Quantity Multiple field. If your supplier ships in cases of 12 and Odoo calculates a reorder of 45 units, the system rounds up to 48 (4 cases).
Running the Replenishment Scheduler
Reordering rules do not trigger in real time. Instead, Odoo uses a scheduled action called the Reordering Rule Scheduler that runs periodically to check all rules and generate orders.
Manual Execution
Go to Inventory > Operations > Replenishment. This view shows all products that need reordering based on current rules. You can review, modify quantities, and confirm orders directly from this screen before committing.
Automated Execution
The scheduler runs automatically based on the configured frequency. By default, it runs once per day. You can adjust this at Settings > Technical > Scheduled Actions > Stock: Run scheduler. For high-volume operations, consider running it every 4-6 hours.
Order Types Generated
Depending on the product's route, the scheduler creates:
- Purchase Orders : When the Buy route is active. Orders are created in draft status for review before confirmation.
- Manufacturing Orders : When the Manufacture route is active. MOs are created with components automatically reserved.
- Internal Transfers : When replenishment routes move stock between warehouses or locations.
Multi-Warehouse Replenishment
When operating multiple warehouses, reordering rules can trigger inter-warehouse transfers instead of external purchases. This requires configuring replenishment routes.
Setting Up a Replenishment Route
Create a route at Inventory > Configuration > Routes with rules that define the flow. For example, a "WH2 → WH1" route might specify: when WH1 needs stock, create an internal transfer from WH2 to WH1. The source warehouse must have sufficient stock for the transfer.
Cascading Replenishment
In a multi-warehouse setup, a single product might have multiple reordering rules : one per warehouse location. The scheduler evaluates each rule independently. If WH2 runs out, its rule triggers a transfer from WH1. If WH1 also drops below minimum, its rule triggers a purchase order from the supplier.
Make to Order (MTO) as an Alternative
Reordering rules work best for stock products. For made-to-order scenarios, consider the Replenish on Order (MTO) route instead. With MTO, Odoo creates a purchase or manufacturing order each time a sales order is confirmed, without maintaining stock levels. This eliminates carrying costs for slow-moving items.
Common Mistakes and How to Avoid Them
- Forgetting to set the Buy route : The most common error. Reordering rules without a Buy or Manufacture route will not generate orders. Always verify the route is set on the product.
- Setting min equal to max : This creates zero buffer and triggers constant reordering. Always set max significantly above min.
- Ignoring lead times : If your minimum doesn't account for supplier lead time, you will stock out before the order arrives. Always include lead time in your minimum calculation.
- Not monitoring the replenishment dashboard : Automated rules can create unexpected orders if demand patterns change. Review the replenishment view weekly.
- One rule fits all : Different locations may need different min/max settings. Create separate rules per location when warehouses have different demand patterns.
Summary
Key Takeaways
- Reordering rules trigger automatic purchase or manufacturing orders when forecasted stock drops below the minimum
- Calculate minimum based on daily usage, supplier lead time, and safety stock
- Set max high enough to minimize order frequency but low enough to manage carrying costs
- Always configure the Buy or Manufacture route on products with reordering rules
- Use quantity multiples for suppliers with fixed pack sizes
Frequently Asked Questions
How often do reordering rules run in Odoo?
Reordering rules run via a scheduled action (the Reordering Rule Scheduler). By default this runs once daily, but you can adjust the frequency in Scheduled Actions. You can also trigger it manually from the Replenishment view at any time.
What is the difference between reordering rules and MTO?
Reordering rules maintain stock levels by ordering when inventory falls below a minimum. MTO (Make to Order) creates a purchase or manufacturing order for every sales order without maintaining stock. Use reordering rules for fast-moving stock products, MTO for custom or slow-moving items.
Can I have different reordering rules for different warehouses?
Yes. Each reordering rule is tied to a specific location. You can create separate rules for WH/Stock, WH2/Stock, and any other location. Each rule has its own minimum, maximum, and quantity multiple settings.
Why are my reordering rules not generating purchase orders?
The most common cause is missing the Buy route on the product. Check that the product has the Buy route enabled on its Inventory tab. Also verify that the scheduled action is running and that forecasted stock is actually below the minimum quantity.
How does Odoo handle quantity multiples in reordering?
When a quantity multiple is set, Odoo rounds the calculated order quantity up to the nearest multiple. If the reorder quantity is 45 and the multiple is 12, the system orders 48 units (4 cases of 12). This ensures orders match supplier packaging requirements.
Automate Your Inventory Replenishment
Get expert help configuring reordering rules, routes, and multi-warehouse replenishment for your business.