6.2 Manufacturing orders & work orders
Key Takeaways
- A Manufacturing Order progresses Draft → Confirmed → In Progress → To Close → Done, reserving and consuming components and producing the finished good.
- The Consumption setting (Strict, Allowed, or Allowed with Warning) controls whether operators may consume more or fewer components than the BoM specifies.
- The Shop Floor module is Odoo 19's modern touch interface for work orders, replacing the legacy tablet view; it records real time and embeds quality checks.
- An Unbuild Order disassembles a finished product back into its components, while Scrap removes defective items to a virtual scrap location.
- Work centers define cost per hour, capacity, time efficiency, and setup/cleanup time, and completed work orders capture real duration for time tracking and OEE.
Manufacturing Orders and Their Lifecycle
A Manufacturing Order (MO) is the transactional document that executes a BoM: it reserves and consumes components and produces the finished good. You create MOs from Manufacturing → Operations → Manufacturing Orders, or Odoo generates them automatically from reordering rules, the Master Production Schedule, or a sales order (make-to-order). Knowing the MO lifecycle in order is one of the most reliable Manufacturing exam items.
The MO lifecycle
An MO moves through a defined set of states, and the exam tests both their order and their meaning:
| State | Meaning |
|---|---|
| Draft | MO created but not confirmed; nothing reserved, quantities still editable |
| Confirmed | Confirmed; Odoo attempts component reservation and generates work orders |
| In Progress | Production has started (a quantity produced or a work order begun) |
| To Close | All work orders done; the MO is ready to be finished |
| Done | Components consumed and the finished product added to stock |
| Cancelled | The MO was cancelled |
You Confirm a draft MO to move it to Confirmed, then Mark as Done to post the production; in between, work orders progress on the shop floor.
Component reservation and consumption
On confirmation Odoo tries to reserve components according to the operation type's reservation method — At Confirmation, Manually, or Before scheduled date. The Check Availability button forces a reservation attempt, and each component line shows its availability. Consumption is then governed by the Consumption setting on the BoM or product, which is a classic exam distinction:
- Strict — the operator must consume exactly the BoM quantity.
- Allowed — the operator may consume more or fewer components than planned.
- Allowed with Warning — extra/short consumption is permitted but raises a warning.
Strict is used where recipes are exact; Allowed suits processes where real material usage varies from the theoretical BoM.
Producing quantities and lot/serial assignment
When you produce, you enter the Quantity Producing, which can be less than the demand — producing short creates a backorder for the remainder. If the finished product is tracked by lot or serial number, you must assign a lot/serial before closing the MO. Components tracked by lot/serial require you to specify which lot is consumed on each line. Odoo enforces this so every finished unit links to the exact component lots used, visible afterward in the Traceability report.
Work orders and the Shop Floor
If Work Orders are enabled and the BoM defines operations, confirming the MO generates one work order per operation. Work orders run in the Shop Floor module — the modern replacement for the old tablet view — a touch-friendly Kanban interface where operators:
- Start / pause / stop a work order, recording real time
- Register produced quantities and any scrap
- Complete embedded quality checks
- Read the operation's work sheet instructions
Each work order carries a status (Waiting, Ready, In Progress, Done), and the MO cannot be fully closed until its work orders are done.
Work-center capacity and time tracking
Every operation runs at a Work Center, configured under Manufacturing → Configuration → Work Centers. Fields the exam may probe include:
- Cost per Hour — values the operation's labor in the MO cost
- Capacity — how many units the center processes in parallel
- Time Efficiency — scales expected durations (80% efficiency lengthens the time)
- Setup / Cleanup Time — fixed time added before and after production
- OEE and time tracking — actual versus expected, feeding productivity metrics
As work orders finish, Odoo captures the real duration, which can update expected times when the operation is set to compute from actuals.
Unbuild orders
An Unbuild Order does the reverse of an MO: it disassembles a finished product back into its components and returns them to stock. Find it under Manufacturing → Operations → Unbuild Orders. You reference the original MO or a BoM and enter the quantity to unbuild; if products are lot/serial tracked, the unbuild respects that traceability. Unbuild is used for rework, recovering usable parts, or reversing a mistaken build.
Scrap
Scrap removes defective components or finished products from usable stock and posts them to a scrap location — a virtual location that takes the items off on-hand inventory. You can scrap from the MO itself (a Scrap action) or from Inventory. Scrapping components during production reflects material lost to defects; scrapping a finished good removes a bad unit. Scrap moves stay traceable and keep inventory accurate. Note the difference from unbuild: scrap destroys value, while unbuild recovers components.
Putting it together
A typical flow: create and confirm the MO → reserve components (Check Availability) → start work orders on the Shop Floor, recording time and passing quality checks → enter the quantity producing and assign lots/serials → Mark as Done, consuming components and adding finished goods to stock. Along the way you may scrap bad material, generate a backorder for a short quantity, or later unbuild a unit to recover its parts.
An operator needs to consume slightly more of a raw material than the BoM specifies because of real-world waste. Which Consumption setting on the BoM permits this?
In Odoo 19, which feature gives operators a touch-friendly Kanban interface to start/stop work orders, record time, and complete quality checks on the production floor?
A finished product was assembled incorrectly, and the company wants to return its components to usable stock. Which Odoo operation should they use?