المدونة

Odoo & Manufacturing9 min read

Discrete vs Process, MTS vs MTO: How Odoo Covers Your Factory's Processes

Discrete vs Process, MTS vs MTO: How Odoo Covers Your Factory's Processes

Every ERP vendor opens with the same slide: "Works for any manufacturer." In practice, every factory lives on two axes that shape the whole implementation — the nature of the process, and the trigger that launches a production order. Get these two right upfront and the rest of the project — BoM design, lot tracking, reordering rules, quality, integrations — falls into place. Get them wrong and you spend six months rebuilding the foundation.

Here is how we frame the conversation at Rteam before any Odoo engagement.

1. The Nature of the Process: Discrete or Process

Discrete manufacturing counts. You build one chair, one circuit board, one car. The bill of materials lists components that, in theory, can be disassembled back into their parts. Yield is predictable, quality is checked per unit, and lot or serial tracking is either optional or a regulatory nicety.

Process manufacturing does not count — it measures. The output is kilograms of paint, litres of syrup, tons of ammonia. Instead of a BoM there is a formula: percentages, tolerances, a variable yield that depends on raw material quality. A batch of polymer cannot be taken apart back into its monomers. Co-products and by-products are normal, not exceptional: refine a barrel of crude and you get gasoline, diesel, and fuel oil at the same time, all three planned outputs.

Side by side:

DiscreteProcess
What is producedCountable units (pcs)Continuous mass or volume (kg, L, t)
StructureBill of materialsFormula / recipe
ReversibilityComponents can be recoveredIrreversible once mixed
ExamplesFurniture, electronics, cars, machinery, apparelChemicals, pharma, food and drink, paints, petrochem, cosmetics
Co- / by-productsRareNormal (crude → gasoline + diesel + fuel oil)
YieldFixedVariable (loss, % yield)
Finished goods unitUnit + serial or lotBatch / lot (mandatory)
Quality controlPer piecePer batch, tolerances, expiry
RegulatoryUsually ISOGMP, HACCP, FDA, recall-ready

There is a third category that deserves its own name: hybrid. A hybrid operation runs a process stage and a discrete stage back to back. Pharma synthesizes the active substance as a process batch, then presses and fills it into tablets and blisters as discrete units. Cosmetics cook the cream, then fill jars. Food and beverage ferment or cook in bulk, then package into countable SKUs. The ERP has to carry both modes with a clean lot-to-serial handoff.

Why this axis comes first. Everything downstream — unit-of-measure setup, how you track lots, how you account for yield variance, how you handle recalls — is derived from the answer. An Odoo rollout built on the logic "we will do it as discrete for now and add lots later" almost never upgrades gracefully into real process manufacturing.

2. The Production Trigger: MTS, ATO, MTO, CTO, ETO

The second axis is not about what you make, it is about *when* production starts — what event launches the manufacturing order.

  • MTS — Make-to-Stock. Trigger is a forecast or a min-max rule. Both components and finished goods sit on the shelf. Lead time to the customer is instant: Coca-Cola does not brew a bottle at the moment you pick it up from the fridge.
  • ATO — Assemble-to-Order. Trigger is a sales order, but the modules are already in stock. Only the final assembly happens after the order lands. Classic Dell: chassis, CPU, RAM on the shelf, final configuration built per customer. Lead time in hours or days.
  • MTO — Make-to-Order. The sales order triggers both procurement and production. The customer waits weeks because nothing is prebuilt. Typical for industrial machinery built to spec.
  • CTO — Configure-to-Order. Sales order plus a product configurator. The customer picks from a defined catalog of variants; the factory assembles the chosen combination. A car with options at a dealership.
  • ETO — Engineer-to-Order. Sales order plus a design project. Each unit is engineered from scratch. Lead time in months. Hydro turbines, bespoke ships, custom industrial lines built around a specific feedstock.

Most real factories run several of these strategies at once across their portfolio. That is fine — but every SKU needs to be explicitly tied to one strategy in the ERP, because reordering logic, procurement rules, and costing behave differently.

3. How Odoo Covers These Processes

Now the part buyers actually want to know.

Discrete in Odoo: native and strong

Odoo's MRP stack was designed for discrete production from day one. Out of the box:

  • mrp — bills of materials, manufacturing orders, work orders
  • mrp_workorder — work centers, routings, OEE reporting
  • quality — inspection points tied to operations
  • maintenance — preventive and corrective on equipment
  • plm — engineering change orders

For a furniture plant, an electronics assembler, or a metalworking shop, this is a complete stack. Customization is driven by business specifics — your barcode labels, your supplier EDI — not by missing core capability.

Process in Odoo: workable, but the standard is not enough

Odoo's BoM was designed for one output per order. Anything wider needs help:

  • Co-products and by-products — available through OCA's mrp_subproduct or a custom extension. Refining-style flows where one input yields three planned outputs do not work natively.
  • Formulas with variable yield — no native recipe engine. You can approximate with BoM flexibility, but a real formula system with tolerances is a custom build.
  • Batch genealogy, retention samples, Certificates of Analysis — either OCA modules (product_expiry, quality_control_oca) or a dedicated vertical layer.
  • Serious pharma or chemical operations — typically Odoo *plus* a specialized add-on, or Odoo integrated with a standalone LIMS/MES. Versions 17 and 18 improved lot tracking and expiry, but Odoo is still a long distance from SAP PP-PI or Infor M3 on the regulated side.

If your operation is regulated (GMP, FDA, HACCP with recall readiness), plan Odoo as the business layer and keep process-specific depth in a specialized system or heavy customization. A pure vanilla Odoo rollout at a GMP-certified pharmaceutical plant is not a realistic scenario.

Production strategies in Odoo: per product or per route

  • MTS — reordering rules (min/max) on warehouse and product.
  • MTO — the Replenish-on-Order route applied to a product or as a dedicated route.
  • ATO — MTO on the finished product plus MTS on the sub-assemblies: modules are always in stock while the final assembly is triggered by the sales order.
  • CTO — product variants plus the Sales configurator. Works well up to a moderate number of variants; at a very large configuration catalog a custom UI usually replaces the stock one.
  • ETO — a combination of project + mrp with a custom BoM per order, or OCA's project_mrp. For true engineer-to-order companies, project becomes the center of gravity and MRP is a satellite.

A Practical Decision Rule

When we scope an Odoo project for a manufacturer at Rteam, the first conversation is almost never about modules or price. It is these two questions:

  • Discrete, process, or hybrid — and if hybrid, exactly where is the handoff?
  • For each product family, which of MTS / ATO / MTO / CTO / ETO applies — and is the business willing to enforce that strategy in the system?

The answers predict budget and timeline more accurately than any feature checklist. A pure discrete MTS plant lands in Odoo in weeks. A process MTO operation with co-products, formulas, and GMP traceability is a very different project — and sometimes the honest answer is that Odoo's base functionality alone will not be enough.

If you are making this decision right now, a five-minute conversation about your two axes is worth more than a generic proposal. That is where real ERP fit lives.

هل تريد معرفة المزيد أو مناقشة كيف ينطبق هذا على أعمالك؟