Is Odoo a Fit for Manufacturing?#
Odoo's Manufacturing module (also called MRP - Manufacturing Resource Planning) is a complete discrete manufacturing solution. It handles:
- Bills of Materials (BOM)
- Work Centers and Routings
- Manufacturing Orders (MO)
- Material Requirements Planning (MRP scheduler)
- Lot and serial number traceability
- Quality control
It is best suited for discrete manufacturing - assembling or processing a defined set of components into a finished product. Continuous process manufacturing (chemicals, food processing with variable yields) requires more customization.
The Core Modules#
| Module | What It Does |
|---|---|
| Manufacturing (mrp) | Bills of materials, manufacturing orders, work orders |
| Inventory (stock) | Warehouse management, stock moves, lot traceability |
| Purchase | Purchase orders for raw materials |
| Quality (quality) | Quality checks linked to manufacturing steps |
| Maintenance (maintenance) | Preventive and corrective maintenance for equipment |
| MRP II (mrp_workcenter) | Capacity planning on work centers |
Most manufacturing implementations start with Manufacturing + Inventory + Purchase. Quality and Maintenance are added as the team grows comfortable with the system.
Bills of Materials#
A Bill of Materials (BOM) defines what components are needed to produce one unit (or a specific quantity) of a finished product.
BOM Types#
- Manufacture: The standard BOM type. A manufacturing order is created to consume components and produce the finished product.
- Kit: Components are grouped for sale but not manufactured. A sale order for a kit automatically breaks down into its components on the delivery order.
- Subcontracting: The product is produced by a third party. Odoo creates a purchase order to the subcontractor and tracks component delivery.
Variants and BOM Lines#
If you use product variants (e.g., a t-shirt in three colors), you can define a single BOM at the template level and use attribute filters on BOM lines to apply different components to different variants.
Work Centers and Routing#
A Work Center is a machine, workstation, or team. It has:
- Capacity (hours of work available per day)
- Efficiency factor
- Time tracking for operations
A Routing is an ordered sequence of operations, each performed at a work center. Attach a routing to a BOM to track each step of the manufacturing process.
When a manufacturing order is confirmed with a routing, Odoo creates individual Work Orders for each operation, which workers can report progress on using tablets via the Manufacturing module's shopfloor interface.
The Manufacturing Order Lifecycle#
- Draft: MO created, not yet confirmed. Components and quantities can still be edited.
- Confirmed: Stock reservation is triggered. Required components are reserved or flagged as unavailable.
- In Progress: Worker marks work orders as "In Progress" on the shopfloor view. Components are consumed as operations complete.
- Done: The finished product is added to stock. A stock move records the component consumption and finished goods production.
Scrap and Rework: If components are defective or the manufacturing process fails, Odoo tracks scrapped quantities and can create a new manufacturing order for rework.
Make-to-Stock vs Make-to-Order#
Make-to-Stock (MTS)#
Products are manufactured in advance and held in stock. Sales draw from existing inventory. The MRP scheduler calculates when to reorder based on reorder rules and forecasted demand.
Make-to-Order (MTO)#
A sale order triggers the creation of a manufacturing order (or purchase order for purchased components). Stock is not held; each demand event generates its own supply chain.
Odoo supports both strategies and allows per-product routing via the Routes configuration on each product.
Lot and Serial Number Traceability#
If your manufacturing process requires traceability (food safety, medical devices, electronics warranty), Odoo's lot and serial number system records:
- Which lot of raw material was used in which manufacturing order
- The production lot assigned to the finished product
- The complete traceability chain from raw material lot to customer delivery
Access the full traceability report from a stock move or lot record.
Quality Checks#
The Quality module integrates with manufacturing orders:
- Define a Quality Control Point on a BOM operation
- When that work order reaches the checkpoint, Odoo creates a Quality Check record
- The worker records pass/fail and any measurements
- Failed checks can trigger a rework order or block the MO from moving to done
What to Look for in a Manufacturing Implementation Partner#
Odoo Manufacturing has depth that generalizes poorly across industries. When selecting an implementation partner:
- Ask for a reference in your vertical. Discrete assembly, food production, and electronics manufacturing have very different traceability and BOM complexity requirements. A partner with 20 retail Odoo implementations does not automatically understand your routing complexity.
- Test BOM import. Your existing BOM data is almost always in Excel or a legacy ERP. Ask the partner to demonstrate importing a 50-line BOM with variants and seeing it generate correct component reservations on a manufacturing order.
- Shopfloor UX matters. Workers in a manufacturing environment use Odoo on industrial tablets. Ask to see the tablet shopfloor view - the interface has improved significantly in recent versions but setup requires configuration.
- MRP scheduling configuration. The built-in MRP scheduler covers basic replenishment. Ask how they handle multi-level BOMs with long lead times and whether they have experience with master production scheduling.
- Traceability scope. If you need lot-to-lot traceability, confirm the partner has done it for your scale. Traceability reports slow down significantly on large datasets without proper indexing.
ERPeek is built for Odoo codebases. If you are evaluating an existing Odoo manufacturing deployment - understanding how custom BOMs are structured, what modules are installed, or scoping a migration - the contact page describes the platform.

