What is a BOM in Odoo?

A Bill of Materials (BOM) is a structured list that defines:

  • The product to be manufactured (finished product or assembly)

  • The raw materials/components required

  • The quantities of each component

  • Routing or operations (optional, for manufacturing processes)

  • Variants or versions (if applicable)

BOMs allow Odoo to plan production, manage inventory, and control costs efficiently.


Types of BOM in Odoo

Odoo supports multiple types of BOMs:

TypeDescription
ManufactureStandard BOM for producing a product in-house.
Kit“Kit” products where components are delivered as a bundle without actual manufacturing.
SubcontractingWhen a product is manufactured by a subcontractor, Odoo tracks materials sent and received.
PhantomComponents are used directly in higher-level BOMs without creating a separate stock move for the subassembly.

Key Fields in BOM

When creating a BOM, you typically configure:

  • Product: The finished product this BOM produces.

  • Product Quantity: Quantity produced per manufacturing order.

  • Components: List of materials with quantities and units of measure.

  • Routing (Optional): Defines the manufacturing steps.

  • BOM Type: Manufacture, Kit, Subcontracting, Phantom.

  • Validity: Start and end dates (for seasonal products or versioned BOMs).

  • Alternative BOMs: Multiple BOMs for the same product if materials or processes differ.


BOM Structure

BOMs in Odoo can be:

  • Single-Level BOM: Only direct components listed.

  • Multi-Level BOM: Components themselves have their own BOMs (sub-assemblies). Odoo can explode the multi-level BOM during manufacturing planning.

Example:

  • Product: Bicycle

    • Components:

      • Frame (1)

      • Wheels (2)

        • Wheel sub-BOM: Rim (1), Spokes (20), Tire (1)

      • Seat (1)

      • Pedals (2)


BOM Management Workflow in Odoo

  1. Create BOM:
    Define finished product, components, and quantities.

  2. Check Inventory:
    Odoo automatically checks stock of components.

  3. Create Manufacturing Order (MO):
    Choose the BOM to produce the product.

  4. Produce Product:
    Components are reserved, and finished product is created in inventory.

  5. Track Costs:
    Odoo can calculate product cost based on components and operations.