
Textys / Features / Make-to-order production
Make-to-order production in Odoo, with manufacturing orders, work centres and actual costs
Confirming the sales order launches the article’s manufacturing order: components to reserve, operations to run at each work centre, time spent and materials consumed recorded on the order itself.
The process, step by step
- Confirm the orderOn the sales order, each line for an article with the Manufacture route and replenish on order (MTO) creates a manufacturing order at confirmation. A button on the order opens the orders created.
- Reserve the componentsThe manufacturing order takes the bill of materials of the variant sold and reserves the components in stock. The component status shows available, expected, late or not available.
- Plan the operationsEach operation of the bill of materials creates a work order at its work centre, such as cutting, sewing or finishing. The expected duration comes from the operation and can be fixed or computed from the last work orders.
- Run and measureThe operator starts, pauses and finishes each work order. Odoo records the time intervals, with the reason for stoppages, and the actual duration of each operation.
- Consume and closeConsumption is the reserved components, adjustable before the order is closed. The bill of materials sets whether a consumption different from plan is allowed, allowed with a warning or blocked. The finished product enters stock.
- Work out the actual costThe actual cost adds the components consumed and the actual time multiplied by the work centre’s hourly cost. The order overview compares the planned cost, the bill of materials cost and the actual cost, by component and by operation.
- Account for work in progressWith mrp_account, a wizard posts the accounting of orders in progress, with the matching reversal on the date given. When the order is closed, labour and product valuation are posted.
From sales document to actual cost
Five linked documents and, below them, the work centres each order goes through.
sale. ordermrp. productionmrp. workorderstock. movemrp_ accountCUTSEWFINIRNQCWhat the user sees and does
Manufacturing order
Status, quantity, bill of materials, components with their availability status and, on a tab, the work orders.
Work orders
A list per work centre, with start, pause and finish and the elapsed time. Each stoppage carries a reason.
Order overview
A report with planned and actual costs, components and operations, to see where the order drifted from the bill of materials.
Accounting
Work in progress entries with their reversal and analytic lines per order and per work centre.
The data handled
sale.andorder sale.order.line: the order and the variants sold.mrp.withbom mrp.bom.lineandmrp.routing.workcenter: components and operations, per variant.mrp.with itsproduction stock.moverecords: status, dates, components reserved and consumed.mrp.andworkorder mrp.workcenter.productivity: work orders and time intervals.mrp.withworkcenter costs_hour: hourly cost, efficiency and capacity.account.andmove account.analytic.line: work in progress entries and analytic lines.
Odoo modules
Community or Enterprise, according to the Odoo edition that ships the module.
| Technical module | Edition | Role |
|---|---|---|
mrp | Community | Manufacturing orders, bills of materials, work centres and work orders. |
sale_ | Community | Links the sales order to manufacturing orders. |
stock | Community | Reservations, moves and entry of the finished product. |
mrp_ | Community | Actual cost, work in progress entries and analytic lines per order. |
stock_ | Community | Stock valuation. |
textys_ | Community | Base work centres, replenish on order and garment manufacturing settings. |
mrp_ | Enterprise | Optional: shop floor screen and Gantt planning. |
Limits and what does not exist yet
- Confirmation creates one manufacturing order per variant sold. The series per model and colour with a split by size, and the cutting order, are in development and not available yet.
- Planning shows expected dates and durations per work centre. Load per work centre and per week is in development.
- Actual times depend on operators starting and finishing work orders. There is no automatic machine reading.
- The hourly cost of each work centre is set by the company. The base centres are cutting, sewing, finishing, ironing and inspection; packing is created per company.
- Quality control with sampling plans (AQL) is in development. Odoo’s standard quality module is Enterprise.
Frequently asked questions
Is the manufacturing order created automatically when the order is confirmed?
Yes, for articles with the Manufacture route and replenish on order. Textys switches on replenish on order and does not let a finished article without a bill of materials or a supplier be sold, so no line is left without a source.
Which components go into the order for a variant?
Those of the bill of materials that apply to that variant. A line with Apply on Variants only enters the variants listed, which gives a different fabric consumption per size.
How is the actual time of each operation measured?
Each work order has a start, a pause and a finish. The intervals are recorded with the reason for stoppages. The expected duration of an operation can be recomputed from the last orders completed.
Does the actual cost include labour?
Yes, provided the work centre has an hourly cost. On each operation, the Cost based on field chooses between actual time and theoretical time.
Does this require Odoo Enterprise?
No. Everything this page describes runs on Odoo Community. Enterprise adds the shop floor screen and Gantt planning, which are optional.
Related pages