Twelve Features That Earn Their Seat on a Plant Floor
Most ERPs sell manufacturers a feature list. Factory managers buy outcomes — on-time delivery, accurate WIP, fewer paper travelers, and a CFO who can close the books. The twelve Odoo MRP features below are the ones that move those numbers for North American mid-market plants. Skip the ones your routing does not need. Configure the rest before any custom development.
Multi-Level Bills of Material with Phantom Assemblies
A real BOM is rarely two levels deep. Sub-assemblies, common components, and phantom kits compose into the finished good. Odoo's nested BOMs with phantom (kit) types let you model an assembly without exploding into stocked sub-products — the routing pulls components directly, but reports still show the sub-assembly structure. This is the single most under-used MRP feature in North American factories. Configure it once; engineering change orders stay clean. Deep dive in multi-level BOMs and kits.
Work-Order Time Tracking via Operator Tablet
Time goes on the work order, not on a paper traveler. The Shop Floor module gives operators a tablet UI with start/pause/finish buttons per operation; cycle times feed actual labor cost back into the WIP valuation in real time. Eliminates the "we'll guess at standard hours" reconciliation that costs accounting two days every month-end.
Real-Time WIP Valuation in FIFO or AVCO
The accounting team needs to know how much inventory is mid-process at any moment, valued the same way it will be costed at finished-goods receipt. Odoo's automated inventory valuation tracks WIP movements continuously — components consumed, labor absorbed, overhead applied — under FIFO, AVCO, or standard cost. No more month-end physical WIP count. See inventory valuation methods.
Capacity Planning by Work Center
Capacity by work center exposes the bottleneck before it bites. Each work center has a capacity (hours per day, parallel batches) and Odoo computes load against confirmed and forecast orders. A simple Gantt view shows the constraint week. This alone replaces the spreadsheet a plant scheduler used to run by hand every Friday afternoon.
Quality Control Plans That Gate Operations
Quality Control Plans attach inspections to specific BOM operations — a failed check blocks the next operation until disposition. First-article inspection, in-process sampling, and final-inspection rules all configure as Quality Points. Non-conformance feeds straight back into Maintenance for root-cause tracking. Detail in quality control inspections.
Lot and Serial Tracking with Full Traceability
Non-optional for any regulated vertical — food, medical, automotive, aerospace. Odoo tracks lots and serial numbers from receipt to customer shipment, with bidirectional traceability reports (where used / where from) and recall workflows. The configuration is standard; the discipline is operational — every transfer must be enforced to require the lot. See lot and serial tracking.
Master Production Scheduling (MPS)
MPS bridges sales forecast to plant load: enter a forecast by product family by month, MPS calculates required manufacturing and purchase orders, and reorder rules trigger automatically. The standard Odoo MPS handles single-plant. Multi-plant MPS often needs a thin custom layer — but the foundation is solid. Walk-through in MRP planning and capacity analysis.
Subcontracting Without Losing Traceability
Most plants outsource at least one operation — heat treatment, plating, coating, machining overflow. Odoo's subcontracting tracks components shipped to the vendor, receives the processed sub-assembly back into stock, and absorbs the subcontract cost into the finished good — without breaking lot traceability. Pattern in subcontracting in Odoo 19.
Shop Floor Module — Operator-First UI
Operators are not ERP users. The Shop Floor module gives each work center a touch-friendly tile view of in-flight work orders, with bin lookups, quality checks, and consumption recording at the same screen. No mouse, no nested menus. The single biggest UX win Odoo shipped in v17+. See Shop Floor module.
Preventive + Corrective Maintenance
The Maintenance module tracks equipment, schedules preventive maintenance against runtime or calendar, and links corrective requests directly to the failing work center. Combined with Quality non-conformance, you get root-cause analysis on production losses without spreadsheets. Detail in Maintenance module.
By-Products and Co-Products Capture
Process industries (food, chemical, metals) generate value at every output of a run — not just the main product. Odoo's by-product support records secondary outputs at the right cost basis, so margin reporting reflects reality and tax-grade yield tracking holds up under audit. See by-products and co-products.
PLM with Engineering Change Orders
The PLM module versions BOMs and routings: every change is a draft revision, reviewed and approved before becoming the production master. ECOs are tracked end-to-end with reason codes — invaluable when a customer asks why their part number now ships with a different fastener. Walk-through in PLM and ECO management.
How to Evaluate an Odoo Partner Without Getting Burned
The features matter; the partner shipping them matters more. Eight checks separate the partners who deliver from the ones who learn on your budget:
- Official Odoo certification (Ready, Silver, or Gold) — not just "we work with Odoo".
- Discovery-call person is the build person. Account-manager handoffs lose scope.
- Fixed-price scope after discovery. Time-and-materials is a budget vacuum on ERP work.
- Senior engineers on the project. Octura runs seniors only — ask any prospective partner who actually writes your code.
- Two reference customers willing to take a call. "We have many clients" without a name is a red flag.
- Vertical specialism in manufacturing. A generalist who ships one plant a quarter is not the right partner for a plant project.
- Documented multi-phase methodology. Discovery → configuration → customization → migration → go-live → hyper-care.
- Transparent published rates. "Custom quote" is fine; refusing to share a starting number is not.
The longer version is in the Odoo partner audit.