The Challenge
For manufacturers running Odoo, the standard approach to material consumption is straightforward: components are recorded as consumed when a Manufacturing Order (MO) is marked Done. In low-volume, short-cycle environments this works well enough. But for operations with longer production runs, multi-shift schedules, or strict inventory accuracy requirements, this model creates a persistent problem — materials have physically left the stockroom but the system still shows them as available.
A precision manufacturer running complex, multi-day production orders encountered this limitation head-on. Their warehouse team was picking and issuing components to the production floor throughout the day. But because the system only recorded consumption when the Manufacturing Order was finalized, inventory records were out of sync with physical reality for the entire duration of each production run.
Their existing process created a cascade of operational headaches:
- Inventory on-hand figures were overstated for components already issued to the floor
- Planners were making replenishment and scheduling decisions based on inaccurate stock levels
- Cycle count discrepancies were frequent, requiring manual reconciliation between physical counts and system records
- Finance had limited visibility into Work-in-Process (WIP) cost since component consumption wasn't recorded until order completion
- On long-duration orders, components consumed days earlier weren't reflected in the system until the order closed
- When partial quantities were picked, there was no clean way to track what had been issued versus what remained
The Solution: Forward-Flushing on Pick Transfer Validation
S4 Solutions developed a custom enhancement that introduces forward-flushing behavior to Odoo's picking workflow. Rather than deferring all consumption to order completion, the system immediately records component consumption the moment a pick transfer is validated — keeping inventory in real-time alignment with what is physically happening on the production floor.
The solution is configurable by operation type, meaning it can be enabled for specific manufacturing workflows without affecting others. Operations that don't require forward-flushing continue to work exactly as before. For those that do, the system handles all the complexity automatically — including partial picks, where it cleanly tracks what has been issued and carries any remaining demand forward so the Manufacturing Order can still be completed normally.
Critically, inventory valuation and accounting entries are generated at the time of picking, not deferred to order close. This means finance teams get accurate Work-in-Process cost data in real time, not just at the end of a production run.
How It Works in Practice
The change is transparent to warehouse operators. Their day-to-day workflow remains the same — they pick components and validate the transfer as they always have. What changes is what happens in the background when they hit Validate:
- Components are immediately recorded as consumed and moved to the production location in the system
- The Manufacturing Order's consumed quantity updates in real time to reflect what has been picked
- If only part of the required quantity was picked, the system automatically accounts for the remainder so nothing falls through the cracks when the order is eventually closed
- Inventory valuation entries are posted immediately, giving finance an accurate picture of WIP costs throughout the production run
The Impact
Real-Time Inventory Accuracy Inventory on-hand figures update the moment components are picked and issued to the floor. Planners and buyers work from accurate data throughout the production run — not just after orders close.
Fewer Cycle Count Discrepancies With system records aligned to physical activity, the gap between book inventory and physical count narrows significantly. Reconciliation effort and exception handling are reduced.
Improved Planning Decisions Schedulers and material planners make replenishment and scheduling decisions based on accurate available quantities — not inflated figures that include already-issued material.
Cleaner Partial Pick Handling Partially issued components are tracked precisely. The system automatically handles the remaining demand so neither over-consumption nor under-consumption goes unrecorded.
No Disruption to Existing Workflows The enhancement is configurable per operation type. Teams that don't need forward-flushing continue using standard Odoo behavior — nothing changes for them.
Looking Forward
Manufacturers who implement forward-flushing often identify further improvements that build on the same foundation:
- Extending the approach to sub-assembly picking within multi-level Bills of Materials
- Real-time dashboards showing component consumption versus planned demand across all open Manufacturing Orders
- Tighter integration with lot and serial number traceability, recording exactly which lots were consumed at the time of picking
- Configurable rules by product category, allowing different consumption methods for different types of components
- Automated alerts when consumed quantities diverge from planned quantities
Is Forward-Flushing Right for Your Operation?
This enhancement is a strong fit for manufacturing operations that experience one or more of the following:
- Production runs span multiple days or months, creating a significant gap between picking and order completion
- Inventory accuracy is critical for purchasing and planning decisions made during active production
- Frequent cycle count discrepancies between physical stock and system records
- Partial picks are common and need to be tracked precisely against order demand
- Multiple Manufacturing Orders run concurrently, making deferred consumption difficult to reconcile
It works particularly well for aerospace and defense manufacturers with strict traceability requirements, automotive component suppliers managing high-volume mixed-model production, electronics manufacturers with expensive or long-lead-time components, and any discrete manufacturer using multi-step picking routes.
Getting Started
- Initial Consultation — We review your current picking and manufacturing workflows and identify where inventory lag is creating problems
- Process Documentation — We map your operations, picking routes, and inventory valuation approach to design the right solution
- Solution Design — We define exactly how forward-flushing will work in your environment, including how partial picks will be handled
- Development and Testing — We build and validate the solution against your actual production scenarios before go-live
- Training and Deployment — We train your warehouse and production teams and support go-live
- Ongoing Partnership — We help you expand and refine the solution as your operations evolve
Contact us at info@sfour.io to discuss how forward-flushing could improve inventory accuracy and production visibility in your Odoo environment.
Looking for other Odoo solutions? Check out our All Apps page to see our full range of modules.