How to Handle Manufacturing with 3-Step Warehouse Configuration in Odoo 18
By Braincuber Team
Published on February 24, 2026
Crestwood Custom Furniture builds handcrafted dining sets in their Portland workshop. When production manager Elena joined, the warehouse was chaos. Raw lumber sat next to half-assembled table legs, finished chairs were stacked behind piles of hardware, and nobody could answer a simple question: how much walnut do we actually have available right now? The one-step manufacturing setup they had been using just threw everything into a single location. Raw materials, work-in-progress, and finished goods were all recorded as "in the warehouse," which made accurate stock counts impossible and cost tracking a guessing game.
Elena switched the warehouse to Odoo 18's three-step manufacturing configuration. Now, when a manufacturing order for 10 dining tables is confirmed, the raw materials (walnut boards, wood screws, oil finish) are first picked from WH/Stock and moved to WH/Pre-Production. The production team works in the Production zone without touching storage areas. When the tables are built, the finished goods move to WH/Post-Production for quality inspection, and finally transfer to WH/Stock as sellable inventory. Every move generates a stock transfer and a journal entry. Elena knows exactly where every board and every dollar is at any point in the production cycle. This guide covers the complete setup.
What You Will Learn: How to enable multi-step routes and storage locations, configure the warehouse for 3-step manufacturing, create products with the Manufacture route, set up a Bill of Materials with operations and work centers, execute the full 3-step flow (pick, produce, store), track product moves and journal entries, and analyze production costs through the Overview tab.
The Three-Step Manufacturing Flow
WH/Stock → WH/Pre-Production
Pre-Production → Production → Post-Production
WH/Post-Production → WH/Stock
Step 1: Enable Required Settings
Two settings in the Inventory module and one in Accounting need to be enabled before you can use the 3-step flow.
| Setting | Location | What It Enables |
|---|---|---|
| Multi-Step Routes | Inventory > Settings | Allows product movements in stages (pick, pack, ship, or multi-step manufacturing) |
| Storage Locations | Inventory > Settings | Creates sub-locations like Pre-Production, Post-Production inside your warehouse |
| Automatic Accounting | Accounting > Settings | Generates journal entries automatically for every stock movement |
Do Not Skip Automatic Accounting: If you want journal entries to reflect raw material consumption and finished goods creation, this setting is mandatory. Without it, your stock levels update but your accounting stays untouched, and month-end reconciliation becomes a nightmare.
Step 2: Configure the Warehouse
Open your warehouse and scroll to the Manufacturing section. Select:
"Manufacture in 3 steps: Pick components, Manufacture, then Store products (3 steps)"
Odoo automatically creates the Pre-Production and Post-Production sub-locations inside your warehouse. Crestwood's location structure now looks like this:
Crestwood Warehouse (WH) ├── WH/Stock ← Raw materials & finished goods ├── WH/Pre-Production ← Picked components staged here ├── Virtual/Production ← Where manufacturing happens └── WH/Post-Production ← Finished goods before final store
Step 3: Create the Product and BoM
Product Setup
Create the finished product as a Storable Product. In the Inventory tab, select the Manufacture route. Set the product category's inventory valuation to Automated and configure the stock input, output, and valuation accounts.
Crestwood's product: Walnut Dining Table (6-seater) — sale price $1,850, product type Storable.
Bill of Materials
| Component | Quantity | Unit Cost |
|---|---|---|
| Walnut Board (8ft) | 6 | $45 |
| Wood Screws (box) | 2 | $8 |
| Danish Oil Finish (1L) | 1 | $22 |
| Sandpaper Assortment Pack | 1 | $12 |
Work Centers and Operations
| Work Center | Operation | Duration | Cost/Hour |
|---|---|---|---|
| Cutting Station | Cut Walnut Boards to Size | 45 min | $40 |
| Assembly Station | Join Legs, Apron & Tabletop | 90 min | $50 |
| Finishing Station | Sand, Stain, Oil Finish | 60 min | $35 |
Expense Account on Work Centers: Set an Expense Account on each work center so Odoo records labor and machine costs as part of the manufacturing cost. Without this, your production cost will only reflect raw materials — the labor component will be invisible in the journal entries.
Step 4: Execute the 3-Step Manufacturing Flow
Create a Manufacturing Order for 10 Walnut Dining Tables:
Pick Components (Stock → Pre-Production)
Confirm the MO. Odoo reserves raw materials and creates a transfer from WH/Stock to WH/Pre-Production. Click the Transfers smart button, open the picking transfer, review component quantities (60 walnut boards, 20 screw boxes, 10 oil bottles, 10 sandpaper packs), and click Validate. Materials are now staged in the pre-production area.
Manufacture (Work Orders on the Shop Floor)
Go to the Work Orders tab and process each operation: Cutting, Assembly, Finishing. Click Start and Mark as Done for each. Alternatively, use the Shop Floor smart button to open the tablet-optimized interface where operators can start, pause, and complete tasks in real time. Odoo tracks time spent on each operation, which feeds directly into cost calculation. During production, materials move from WH/Pre-Production to Virtual/Production.
Store Finished Goods (Post-Production → Stock)
After all operations are marked done and the MO is completed, Odoo generates a final transfer from WH/Post-Production to WH/Stock. Open this transfer from the Transfers button, verify the 10 dining tables, and click Validate. The tables are now in stock, available for sale or delivery.
Step 5: Product Moves and Journal Entries
Product Moves Summary
The Product Moves tab on the MO shows the complete trail:
Move | From | To | Qty ----------------------------------|-----------------------|-----------------------|----- Walnut Board (8ft) | WH/Pre-Production | Virtual/Production | 60 Wood Screws (box) | WH/Pre-Production | Virtual/Production | 20 Danish Oil Finish | WH/Pre-Production | Virtual/Production | 10 Sandpaper Pack | WH/Pre-Production | Virtual/Production | 10 Walnut Dining Table (6-seater) | Virtual/Production | WH/Post-Production | 10 Walnut Dining Table (6-seater) | WH/Post-Production | WH/Stock | 10
Journal Entries
With automated valuation enabled, Odoo generates journal entries at each move. For one dining table (raw material cost $308 + operation cost ~$90.83):
| Entry | Account | Debit | Credit |
|---|---|---|---|
| Raw Material Consumption | WIP / Production Account | $308 | — |
| Raw Material Stock Valuation | — | $308 | |
| Finished Goods Created | Finished Goods Valuation | $398.83 | — |
| WIP / Production Account | — | $398.83 |
Overview Tab — Cost Breakdown
The Overview tab on the MO shows a real-time cost summary combining raw materials consumed and operational costs incurred (work center time × hourly rate). Elena reviews this after every production run to ensure costs stay within margin targets.
Best Practices
Always Set Expense Accounts
Without expense accounts on work centers, your production costs show only raw materials. Crestwood's tables show $308 in materials but the true cost is ~$399 when labor is included. Missing this distorts your margins.
Validate Transfers Promptly
The MO stays in "Ready" only after the pick transfer is validated. If warehouse staff forgets to validate, production is blocked. Crestwood's morning routine: validate all pending picks before 8 AM so production starts on time.
Use Shop Floor for Real-Time Tracking
The Shop Floor interface lets operators clock in/out of each operation on a tablet. Crestwood found that actual cutting time was 52 minutes, not the estimated 45 — they adjusted the BoM duration to get accurate quotes.
Summary
Key Takeaways: The 3-step manufacturing configuration in Odoo 18 separates stock movement into Pick (Stock → Pre-Production), Manufacture (Pre-Production → Production → Post-Production), and Store (Post-Production → Stock). Enable Multi-Step Routes, Storage Locations, and Automatic Accounting before configuring the warehouse. Create products as Storable with the Manufacture route and Automated valuation. Set up work centers with expense accounts and define operations in the BoM. Each step generates traceable transfers and journal entries, giving you full visibility over raw material consumption, work-in-progress, finished goods, and production costs.
