Skip to Content
Skip to content
Case study ยท Manufacturing

Discrete Manufacturing (Make-to-Order)

Steel furniture maker: configurable products, multi-level BoMs, routings, Shop Floor, subcontracted powder coating, quality checks and real product costing.

Odoo ManufacturingOdoo QualityOdoo PLMOdoo MaintenanceOdoo Purchase

Implementation blueprint based on the patterns of real Odoo projects. Company names are illustrative, so the configuration and the lessons apply directly to your business.

1. Company profile

"Krishna Steel Furniture Pvt Ltd" (fictional): office chairs, storage cabinets, custom desks.

  • 60 employees, 15 Odoo users; one plant with 6 work centers (cutting, bending, welding, powder coating, assembly, packing).
  • 40 % standard catalogue (make-to-stock), 60 % customer-specific sizes (make-to-order).
  • Powder coating is partly subcontracted.
  • Today: Excel BoMs, a whiteboard for planning, Tally for accounts.

2. Pain points

Wrong material issues, no real product cost, late deliveries, no idea of WIP, rework not tracked.

3. Apps

Sales, CRM, Purchase, Inventory, Manufacturing, Quality, PLM, Maintenance, Barcode, Accounting, Planning (shifts), Sign (drawing approval), Documents.

4. Key design decisions

Topic Decision
Product configuration Catalogue items as variants (size ร— colour) with one BoM per template and variant-specific lines ("Apply on Variants")
Custom sizes Product configurator + Product with custom attribute values; engineering creates a BoM per order via PLM ECO if needed
Routes Standard: Manufacture + reorder rule (MTS). Custom: MTO + Manufacture
Manufacturing steps 2 steps (pick components โ†’ produce) so stores issue material
Work centers Each with capacity, cost/hour, OEE target, working schedule; work-order dependencies for parallel ops
Costing Category FIFO or AVCO, automated valuation; work-center cost per hour on the BoM operations
Subcontracting Powder coating as an operation-level subcontract (BoM type subcontracting for the coated sub-assembly) with resupply
Quality QCP on receipt (sheet thickness), in-process (weld check, Pass-Fail), final (measure dimensions)
Maintenance Preventive maintenance on press brakes every 250 h; equipment linked to work centers
By-products Steel scrap as a by-product (value at scrap rate)

5. Step-by-step configuration

  1. Manufacturing > Settings: Work Orders โœ”, Work Order Dependencies โœ”, By-Products โœ”, Unlock MO โœ”, Quality โœ”, MPS โœ”, Subcontracting โœ”, Lots & Serials (serial for chairs: warranty).
  2. Work centers: Cutting (capacity 1, โ‚น600/h, setup 10 min), Welding (capacity 2), Powder Coating (subcontract), Assembly (capacity 4), Packing. Alternative work centers for overload.
  3. Products: raw materials (sheet steel in kg, tubes in m, castors in units), semi-finished (frame), finished (chair). Correct UoM categories (kg, m, units).
  4. BoMs:
    • Chair = Frame (sub-BoM, manufacture) + seat + castor ร—5 + screws (kit or consumable).
    • Operations: Cut 6 min โ†’ Bend 4 min โ†’ Weld 12 min โ†’ Coat (subcontract) โ†’ Assemble 8 min โ†’ Pack 2 min.
    • BoM Miscellaneous tab: Operation dependencies (Assembly blocked by Coating).
    • By-product: steel scrap 0.3 kg.
  5. Warehouse: Manufacture = Pick components then manufacture (2 steps).
  6. Routes on products: catalogue = Manufacture + reorder rule; custom = Replenish on Order (MTO) + Manufacture; raw material = Buy + reorder.
  7. Quality control points: Receipt of steel sheet (Measure thickness 1.2 ยฑ 0.05 mm); Weld operation (Pass-Fail with photo); Final (Instructions).
  8. MPS for catalogue items: monthly forecast, safety stock.
  9. Planning: shifts for operators; Shop Floor on tablets at each work center (employees log in with badge/PIN).
  10. PLM: ECO types "New product", "BoM change"; approvals by the engineering head.

6. To-be process

  1. Sales quotes with the configurator โ†’ SO confirmed โ†’ MO auto-created (MTO) with the deadline from the customer commitment date.
  2. Planner opens MO Gantt / work-order Gantt (v20) โ†’ plans by capacity.
  3. Stores validate the Pick Components transfer (barcode).
  4. Operators use Shop Floor: start the timer, register production, quality checks, scrap with replenish.
  5. Coating goes out to the subcontractor (resupply transfer) and comes back.
  6. Final QC โ†’ finished goods into stock โ†’ delivery โ†’ invoice.
  7. MO Overview shows real vs expected cost; production analysis by work center (OEE).

7. Costing logic

Product cost = ฮฃ component cost + ฮฃ (operation time ร— work-center cost/h) (+ subcontract fee). In Odoo 20, the MO overview shows provisional cost during production and real cost when done; subcontracted receipts without a PO are valued from the vendor pricelist.

8. KPIs

OEE per work center, on-time MO completion, scrap %, cost variance (expected vs real), WIP value, lead time quote โ†’ delivery.

9. Pitfalls

  • Don't model every screw. Use consumable products or a kit for low-value hardware.
  • Keep routings realistic; wrong times make planning useless.
  • Train supervisors to close MOs daily; open MOs distort stock and WIP.
  • Odoo 20 forces flexible consumption on all MOs. Review your consumption-control habits.

10. Version notes

v18 v19 v20
Shop Floor app, BoM overview, MPS MO Gantt, operation costing (real vs fixed), multiple serials per MO, employee cost into valuation Continuous production, work-order Gantt & Kanban, split MOs, compare BoMs (PLM), single Produce button, backorder planning, auto lot/serial on close

Planning an Odoo project like this one?

I have implemented these flows for real businesses. Let's map your process and see how Odoo fits, free discovery call.