Manufacturing (MRP) in Odoo 16: Orders, Planning and Costs

Production with bills of materials, manufacturing and work orders, work centers, subcontracting, workload planning and cost calculation. Here are 34 Binovo tutorial videos (8 h 06 min) organized into 6 sections. Each video includes a summary and a step-by-step description of what you will see in it.

Odoo 16 · Updated on October 13, 2026 · View all areas

Concepts and configuration 7 videos

What options does the Manufacturing menu offer?6:11

Manufacturing menu options, explained with their equivalents in the terminology used by other software.

What you will see in the video
  • Access through the Manufacturing icon, which opens manufacturing orders by default
  • Operations: manufacturing orders, work orders (work slips where operators log their time), unbuild orders and scrap
  • Products: products, product variants (example of a T-shirt by color and size), bills of materials (BoMs) and lot and serial numbers
  • Reports: work orders, manufacturing orders and overall equipment effectiveness (OEE) by work center
  • Configuration, only with special permissions: module settings, work centers and operations

What manufacturing orders are and their options in Odoo12:27

A walkthrough of all the options on the manufacturing orders screen.

What you will see in the video
  • Access via Operations > Manufacturing Orders; list with reference, scheduled date, product, source, quantity, unit, durations, company and status
  • List colors: date in red if the order is late, in yellow if it is due to start production today, and reference in blue if it is a draft
  • Source column: the sales order it comes from, merged manufacturing orders, or empty when manufacturing to stock
  • Component status (available or not available) depending on whether there is stock of the materials the order needs
  • Draft, confirmed and in progress statuses; filters by status and groupings by product, status or scheduled date
  • Kanban (grouped by scheduled day), calendar, pivot table and graph views
  • Order form: product, bill of materials, quantity, date, responsible person, components, work orders, Miscellaneous tab and stock moves
  • Access to the source sales order and use of the chatter: messages, notes, attachments and scheduled activities (example of a call marked as done)

What work orders are and what operations Odoo offers5:41

Work order screens (work slips and operations).

What you will see in the video
  • Access via Operations > Work Orders, with list, kanban, calendar and pivot table views
  • List columns: operation, work center, manufacturing order, product, remaining quantity, planned start, and expected and actual duration
  • Statuses (ready, waiting for components, in progress) and a real-time counter that stops when the operator pauses the operation
  • Start, stop (pause), done and block buttons; a blocked order cannot be started and only the production manager can unblock it
  • Order details with components, time tracking entries and instructions (text, PDF or URL); the list grouped by work center is the most convenient view

Everything you need to know about bills of materials in Odoo6:31

Options in the Products menu and, specifically, in bills of materials.

What you will see in the video
  • On the product form, buttons showing its bills of materials (it can have several) and the BoMs where it is used as a component
  • Product variants with the same information, and lots and serial numbers with the traceability of manufacturing orders
  • Bill of materials: product and variant, base quantity for which the components are defined (useful for very small consumption amounts) and reference
  • BoM type (manufacture, kit or subcontracting), company, components tab with quantities and operations tab with work center and duration
  • Operations performance buttons (actual versus expected duration) and BoM overview button with its structure expanded

How should we configure the Odoo Manufacturing module?5:47

Manufacturing module settings: what they are and what each one is for. They are normally configured by a Binovo consultant.

What you will see in the video
  • Work orders: enabled to control operations, work centers and times; without them, components are simply consumed and the product is obtained
  • Work order dependencies (mandatory sequence of operations) and Subcontracting for external operations; enable only what you use
  • Quality and Master Production Schedule are only available in the Enterprise version
  • Unlock manufacturing orders allows you to change the quantities to consume without prior approval; there is also an allocation report
  • By-products (example of lobster soup, which also yields cooked seafood) and security lead time to plan ahead

What options do Work Centers offer in Odoo?10:49

A review of the work center form in Manufacturing: tags, alternative work centers, calendar, cost per hour, efficiency and capacity, and how they affect planning and costs.

What you will see in the video
  • Work center list view: name, code, tags, alternative work centers, cost per hour, capacity and efficiency
  • Recommendation to create one work center per machine (five lathes, five work centers) so you can see capacities and distribute work orders separately
  • Tags to group or search work centers (modern lathes, machining area) and compatible alternative work centers if the main one is busy
  • Working hours defined with a calendar and cost per hour, which should cover electricity, maintenance and depreciation of the machine
  • Setup and cleanup times that are added to each order; alternatively, create setup and cleanup operations in the routing
  • Time efficiency: at 100%, a one-hour order takes one hour, and at 200% it takes 30 minutes; the usual practice is to leave it at 100%
  • Capacity explained with an oven: with a capacity of 10, baking 10 units takes 60 minutes and 11 units require two hours
  • Top buttons for operations, OEE, lost hours, workload and performance, and the Duplicate action to create identical work centers

Manufacturing operations in Odoo3:23

The operations table: creation and basic concepts.

What you will see in the video
  • Manufacturing > Configuration > Operations: each operation has a description, a work center and the bill of materials where it is used
  • They can be created from this table, although they are usually created from the bill of materials itself
  • In a new bill of materials, you can copy existing operations from another BoM or add one manually with its work center
  • A product can have several bills of materials, and the table grouped by operation shows which BoM each one belongs to

Manufacturing orders and the complete workflow 5 videos

How to procure components directly from the Bill of Materials12:11

The manufacturing manager can request the purchase or manufacture of a component directly from the bill of materials; this video shows the purchase request.

What you will see in the video
  • From the bill of materials overview, click the component that is out of stock (instruction booklet), open its forecast and use the Replenish button
  • Replenishment wizard: quantity (20) and preferred route (Buy), which generates a request for quotation to the product’s vendor
  • Expected date calculated from the vendor’s lead time (1 day); the purchasing manager reviews the request, sends it by email and confirms it
  • After confirmation, the bill of materials shows the expected arrival date and the forecast reflects the receipt of 20 units
  • Receipt of the delivery slip from Inventory and update of the bill of materials overview: actual stock of 20 and the availability icon in green
  • Replenishment of fabric cover (50) and custom box (80) from the same vendor: both lines are grouped in the same request for quotation
  • Grouping only occurs while the quotation is not confirmed; if it is already a firm order, a new request is created
  • Receipt from the purchase order itself, entering the quantities received (50 and 85, more than ordered) and validating

Launching single-level and multi-level manufacturing from Bills of Materials22:27

With complex bills of materials that include semi-finished products, how to manufacture only the top level or expand manufacturing and purchasing to the lower levels.

What you will see in the video
  • Structure of the example: subcontracted tempered blade, untempered blade manufactured by stamping and purchased steel plate
  • Replenishment of 5 tempered blades with the Manufacture route by mistake: a manufacturing order is created without components or work orders
  • Cancellation of the incorrect manufacturing order, leaving a note with the reason in the history
  • Correct replenishment with the route to resupply the subcontractor on order, indicating quantity and expected date
  • Request for quotation generated for the first of the two subcontractors defined, which can be changed as long as it is not confirmed
  • After confirmation, the bill of materials shows the expected delivery, but neither manufacturing nor purchasing is generated for the lower levels
  • Cancellation of the purchase order and correction of the route for the untempered blade, which must be Manufacture and not Buy
  • Activation of the archived route “Replenish on Order (MTO)” in the Inventory routes and selecting it on the untempered blade and the plate (along with Buy)
  • New replenishment and order confirmation: Odoo proposes a manufacturing order for 5 untempered blades and a request for quotation for 0.50 of plate
  • Red lines in the forecast for orders that are not yet confirmed and access from the manufacturing order to the related purchase order
  • Scheduling of the manufacturing order and confirmation of the purchase extended to 10 plates, with a forecasted stock of 9.50 after consuming 0.50

Complete cycle, from purchasing to manufacturing, with subcontracting25:20

The complete cycle of manufacturing, purchasing and subcontracting: how the data is reflected and how materials held at the vendor are tracked and written off as they are consumed.

What you see in the video
  • Receipt of 10 steel plates from the purchase order, reached through the component’s forecasted report in the bill of materials
  • Reservation of 0.50 of a plate for the confirmed manufacturing order, with the option to unreserve it and release it to another order
  • “Ready to produce” indicator in the bill of materials overview: 90 blades can be made with the available stock, at 0.10 of a plate per blade
  • Manufacturing order for the untempered blade: starting the stamping work order and the real-time counter in minutes against the 10 planned
  • List of manufacturing orders in list and kanban views, with their statuses (draft, confirmed, in progress) and component availability
  • Closing the work order and marking the 5 units as done, with a real duration of 8 minutes and plate consumption (stock going from 10 to 9.50)
  • On-hand stock of 5 untempered blades and forecasted 0 because of the pending shipment to the subcontractor, with a warning about a stock display error in the overview
  • Validation of the resupply transfer to the subcontractor, accessible from the forecasted report or from Inventory, whose operation name can be changed
  • Inventory adjustment grouped by location: the 5 blades appear in the subcontracting location and still count toward inventory valuation
  • Partial receipt of 2 tempered blades from the subcontracting order, creating a backorder, and deduction of 2 untempered blades at the subcontractor
  • Possibility of counting, in the subcontractor’s location, both the pending components and the finished parts that have not yet been shipped
  • Receipt of the remaining 3 units: the subcontracting location drops to zero and there are 5 tempered blades in your own stock

Typical mistakes made by a production operator and how to fix them17:22

Day-to-day production process and how to correct the case of an operator who has recorded the wrong quantity produced and the wrong hours, with the particularities of Odoo on this point.

What you see in the video
  • The operator marks the turning work order as done from Work Orders and it disappears from the pending list
  • The manufacturing order moves to the To Close status so that the manager can review the quantity produced and the times
  • Correction of the quantity produced (4 instead of 14) and of the time entries: start and end times and a new line for another operator
  • When marking as done with a lower quantity, you choose between closing without a backorder or creating a backorder for the remaining quantity
  • The backorder renames the order with the suffix 001 and creates 002 with the remaining quantity and the proportional share of the time
  • Check in the product moves that the 4 units from the order have entered stock
  • The work order of 002 ends up cancelled and in standard Odoo it cannot be reactivated: a new operation is added and the previous one is deleted
  • Duplicating the pending order is also possible, but you lose the numbering that links it to the original order

A complete day-to-day manufacturing workflow with Odoo17:22

Day-to-day production process and how to correct the case of an operator who has recorded the wrong quantity produced and the wrong hours, with the particularities of Odoo on this point.

What you see in the video
  • The operator clicks Done on the turning work order for product T1, which becomes finished with 14 parts and 176 minutes against the 840 planned
  • The manufacturing order is left in the To Close status so that the production manager can review quantities and times before the product is received into stock
  • The manager corrects the quantity produced to 4 and, in the time tracking, edits the start and end times and adds a line for another operator
  • When marking as done, Odoo warns that no components have been consumed and asks whether to create a backorder or close without one for the 10 pending units
  • The backorder renames the order with the suffix 001 and creates 002 with the pending quantity and the proportional time, and the 4 units enter stock
  • In order 002 the work order appears as cancelled and standard Odoo does not allow reactivating it, something that a Binovo development solves
  • Alternative trick: add a new operation line with its expected duration, delete the cancelled one and plan the order so that it can be started
  • Duplicating the manufacturing order is also possible, but it generates a different numbering and the traceability of the backorders is lost

Manufacturing costs 6 videos

How to find a product’s standard or expected costs in Odoo27:17

How to check, from the bill of materials, the expected costs of manufacturing a product.

What you see in the video
  • Hunting knife example: bill of materials with purchased components, consumable screws, a semi-finished tempered blade and a 5-minute assembly
  • Multi-level semi-finished product: tempered blade subcontracted from the untempered blade, made with 0.10 of a steel plate and one stamping operation
  • “Product Cost” column: it takes the Cost field from the product form, which can be set manually (32 or 34 euros in the example)
  • “BoM Cost” column: calculated sum of components and operations (29.89), which may differ from the cost shown on the product form
  • For raw materials, the cost comes from the Cost field on the product form and not from the vendor price in the Purchase tab (5 versus 3.50, adjusted to 4.50)
  • The cost of each line is multiplied by the quantity used in the bill of materials (2 handle scales at 4.50 make 9)
  • Storable versus consumable products: the screws, being consumable, show neither available nor on-hand stock in the overview
  • Why it is useful to compare both columns: spotting misaligned product form costs when sales pricelists are calculated from cost
  • Operation costs: the operation duration multiplied by the work center’s hourly cost (5 minutes at 80 euros per hour make 6.67)
  • The concept of work center capacity, explained with the examples of the label cutter and the bread oven
  • Subcontracting cost: requires the subcontractor in the bill of materials and that same vendor with a price in the product’s Purchase tab
  • If the subcontractor in the bill of materials has no price as a vendor, no cost appears; with several subcontractors, the one with the lowest cost is used

A simple cost calculation example (and a headache)19:46

A simple cost calculation example and an explanation of why Odoo does not calculate costs the way you would usually expect.

What you see in the video
  • Analytic account on the manufacturing order: Odoo records the actual costs in it, and analytic accounting permission is needed to view them
  • Analytic entries of the untempered knife blade order: 12.50 for the steel plate and 10.69 for manufacturing, 23.19 in total
  • Component cost: 0.50 units at the product form cost (25) and not at the purchase price (24), because the category uses standard price
  • Costing methods of the product category (standard price, average cost and FIFO) and how each one updates the product form cost
  • Operation cost: 8 min 1 s of real time converted to hours (0.136) times the work center’s 80 per hour; the quantity is displayed with two decimals
  • The manufactured product enters stock at the cost on its product form if the category uses standard price; with average cost it would be updated
  • In the bill of materials operation you choose between a fixed duration or one computed from the latest work orders, instead of standard and actual cost
  • Cost shown in the bill of materials information and a button to compute the product cost from it

Complete Manufacturing cost calculation26:28

A manufacturing run is carried out to check how costs are calculated and that the information Odoo presents is correct.

What you see in the video
  • Creation of a product category with the average cost method, assigned to the handle scales, the tempered blade and the hunting knife
  • With standard cost, purchases do not change the cost; with average cost, it is recalculated when stock enters at different prices
  • Purchase of 10 handle scales at 3.50 with a cost of 4.50 and zero stock: the cost changes to 3.50 when the receipt is validated, not when the order is confirmed
  • Average price formula: current cost times current stock plus purchase price times quantity purchased, divided by the sum of the quantities
  • Second purchase of 10 units, changing the order price to 4 euros: after receipt the cost ends up at 3.75
  • The knife’s bill of materials report reflects the new cost of the handle scales, 7.50 instead of 9
  • Operation duration computed from the latest manufacturing orders instead of being set manually
  • Updating the product cost from the bill of materials and the difference between the BoM cost and the product cost
  • The difference is because the semi-finished product’s bill of materials is defined for 10 units and the product cost is per unit
  • Manual manufacturing order for 2 knives: confirm, plan, start, consumptions, analytic account and mark as done
  • With a real time of 5 min 7 s, the analytic account records 49.53 and the knife’s cost is updated to 24.76 per unit

How to verify that the cost calculation is correct11:27

A check, based on the manufacturing run from the previous tutorial, that the costs are correctly calculated.

What you see in the video
  • We start from the actual cost of the two-unit manufacturing order and check each line in a spreadsheet
  • Components: quantity consumed times product cost, for example 4 wooden handle scales at 3.75 give the 15 euros recorded
  • The same check for the screws, the fabric sheath, the instruction booklet and the custom box
  • The tempered knife blade is taken at its cost (9 per unit), which already includes the costs of its lower levels
  • Labor: the work center’s hourly cost (80) times the real time of 5 min 7 s converted to hours, which gives 6.83
  • The sum of all lines matches the total of the order’s analytic account, 49.53
  • The cost of the finished product ends up at 24.76 per unit, half of the order’s cost
  • Recommendation to work with Odoo’s standard calculation before considering custom developments

Cost and process of a subcontracted product9:29

A detailed cycle with a subcontracted product: how the cost is calculated, how it is replenished and how the available stock is determined.

What you see in the video
  • Storable product “Unpainted sheet” with a cost of €10 and the Resupply Subcontractor on Order route
  • Product “Painted sheet” with the subcontractor as vendor at €2.50 per unit
  • Subcontracting-type bill of materials with the subcontractor specified and the unpainted sheet as a component
  • Bill of materials cost of €12.50 (component plus service) and computing the product cost from the bill of materials
  • Inventory adjustment to set a stock of 10 unpainted sheets
  • Purchase order for 9 painted sheets, which generates two transfers: the resupply to the subcontractor and the receipt
  • Validation of the shipment and the receipt, with component traceability: from stock to the subcontracting location and from there to production
  • Result: painted sheet in stock at a cost of €12.50 and correct inventory valuation of both products

Binovo’s special module for managing Manufacturing costs17:52

Binovo module, exclusive to its customers, that compares in real time the planned and actual costs of a manufacturing order in progress. In standard Odoo you need to enable analytic accounting, and even then the cost is not clearly visible.

What the video shows
  • Example with the bill of materials for bread: flour, salt and water, plus the operations of kneading (1 minute) and baking (60 minutes)
  • Hourly cost of the work centers (€30 for the assembly station and €10 for the oven) and the effect of the oven’s capacity of 100 loaves on time
  • Planned cost of 100 loaves in the bill of materials Information tab: €40 in components and €60 in operations
  • Bill of Materials Costs button on the order: planned cost, actual cost and variance in euros and as a percentage, which can be grouped by type
  • When actual consumption differs from what was planned (less salt, more water), the component cost is updated on save
  • The cost of operations is calculated when the work order is paused or finished, not while the time is running
  • Manufacturing order cost report in a pivot table, by product or by order
  • When the order is marked as done, the units are added at actual cost and the product’s average cost is recalculated

Planning and capacity 4 videos

How to assign the right calendar to production machines6:18

For Odoo to calculate machine capacity correctly, each machine must have the right calendar on its record, with the time it works per day.

What the video shows
  • Enabling developer mode to access Working Schedules, which are the calendars, under Settings > Technical
  • New schedule “Production machines calendar” with its company, deleting the default lines and creating Monday to Friday from 6:00 to 22:00
  • The average hours per day go from 8 to 16, and the start and end dates of each line allow for exceptions such as a maintenance shutdown
  • Assigning the calendar in Manufacturing > Configuration > Work Centers, in the Working Hours field of the lathe
  • Mention of a Binovo module that places the calendars in a more accessible menu

How to plan and view the production load of a work center11:07

A simple example of how to plan and view work center loads, with a trick to display them the way a production manager needs them.

What the video shows
  • Starting point: Lathe work center with a Monday to Friday calendar from 6:00 to 22:00 (16 hours a day) and zero load
  • Bill of materials for product T1 with a turning operation of 60 minutes per piece
  • Manufacturing order for 10 units scheduled at 12:00: after confirming and clicking Plan, the work order ends at 22:00 on the same day
  • The lathe load then shows 600 minutes on the start day
  • After canceling the plan and moving it to 18:00, Odoo spreads 4 hours over the first day and 6 over the next, until 12:00
  • The load chart still shows the 600 minutes on a single day, because it assigns the entire load to the order’s start date
  • Split action into two parts of 4 and 6 units, each with its own date and person in charge, which is only accepted if the quantities add up to the total
  • Result: orders 50-1 and 50-2 and a lathe load of 240 minutes on the 15th and 360 minutes on the 16th

Smart planning: How to merge Manufacturing Orders8:27

Merging several manufacturing orders for the same product and the same day into one, when there is capacity to produce them together.

What the video shows
  • New manufacturing order for 4 units of product T1, confirmed and scheduled for 6:00
  • Checking the load of the Lathe work center, with the minutes distributed by day according to the planned orders
  • Reason for merging: avoid starting and finishing two work orders for the same part on the same day and on the same machine
  • Selecting the two orders in the list and Action > Merge, which generates a new order with the sum of the quantities (8 units)
  • When merging, the order is scheduled for today if there is capacity, so the scheduled date is changed to the 15th at 6:00 and Plan is clicked
  • Checking the lathe load, now spread across the 15th and 16th
  • Pivot table view of the load, with the expected duration per day and access to the orders behind each figure by clicking on it

My work center’s capacity by the hour, and doing "magic"7:15

How to view a work center’s load by the hour in a dedicated view.

What the video shows
  • The work center load in Configuration only shows the daily total, without hours
  • Work orders in calendar view: each order with its start and end time over the center’s capacity
  • Dragging an order to another day or time reschedules it, and the center’s load is updated on refresh
  • Two manufacturing orders for the same product on the same day are merged into one
  • After merging, the start time is set and the order is planned again; the calendar shows a single order
  • The calendar only lists the work centers with orders in the period

Binovo reports and improvements 2 videos

Attendance report vs. production report6:53

Enabling the pivot table report that compares on-site time and productive time per worker, with the results based on work order times and the effect of overlapping orders.

What the video shows
  • On the employee record, in the HR settings tab, the checkbox that includes them in the production pivot is enabled
  • Example: attendance from 9:00 to 11:30 and two consecutive work orders of 80 and 45 minutes
  • Manufacturing > Reports > Attendance and Production: on-site hours, production hours and difference
  • If work orders overlap, the report counts only the actual production time, not the sum
  • Quick filters for current week, current month and previous month, and breakdown by date and employee

What Odoo Manufacturing doesn’t do well and Binovo does!13:06

Binovo improvements over standard Odoo: allocating quantities to work orders, indicating the location of work in progress and reopening an operation.

What the video shows
  • Example with a manufacturing order for 10 shotgun barrels whose routing includes the operations of machining, laser engraving and packing
  • In the Misc tab of the order, the process location is specified, where the material is left between operations without creating a semi-finished product
  • The process location can be the same for the whole order or different for each work order, and it appears on the printed manufacturing order
  • When pausing a work order, the quantity produced so far is requested (zero is allowed) and the list shows the pending quantity
  • Time tracking stores operator, date, hours and quantity produced in each record, which makes it possible to calculate output per piece
  • When marking as Done, the total quantity produced is requested and confirmed with the units that were missing
  • A finished work order can be reopened to redo a defective piece detected in a later operation, without adding units
  • Once the operations are finished, the consumed quantity is entered on the manufacturing order and it is marked as done to receive the goods into stock

Binovo developments and extras 10 videos

Integrating Odoo with production machines (Industry 4.0)16:13

A visit to the vocational training center in Usurbil to see two integrations of Odoo with the workshop: a tool store with RFID and a sensorized conventional lathe connected to production management.

What the video shows
  • Smart tool store: each tool carries an RFID tag and students or teachers identify themselves with their card when entering and leaving
  • On exit, the system detects which tool each person takes and links it to their manufacturing order; if someone enters without a card, an alarm goes off
  • Each tool has an identified cabinet, drawer and slot, and a screen shows who is inside and who leaves with what
  • Conventional lathe sensorized with a PLC and sensors for sound, power consumption, speed, feed and temperature, as well as production times
  • The machine can only be started if the student identifies themselves and has a task booked on it; a traffic light indicates its status
  • Simplified touch screens on top of Odoo: completed, pending and upcoming operations, drawing, theoretical cutting conditions and tools
  • When the operation starts, consumption, speeds and times are recorded, and a camera takes a photo every time the spindle starts or stops
  • Final report per operation: task and machine time, speed chart, theoretical versus actual tools and estimated cost of the part

Odoo Fieldbus (Industry 4.0)7:09

Prototype of a production plant connected to the ERP: integration between a simplified breadcrumb production plant and Odoo, as part of Binovo’s Fieldbus project to link the production system (PLC, numerical control) with the management system.

What the video shows
  • Approach: management and the shop floor are both computerized but isolated, and manufacturing parameters are configured by hand from ERP data
  • Prototype items: breadcrumbs by bag size, grain size and roasting level, on a line with a flour silo, oven, mill and bagging machine
  • SCADA integrated into the ERP that reflects the silo level and lets you start the line and change the oven’s power or the mill’s coarseness
  • Production order of 30 kg in 10 kg bags launched with a button that configures and starts the line, which stops by itself when the three bags are complete
  • The order is left with the quantity produced and the actual weight and weighing time of each bag, and preventive maintenance is proposed as the next step

Viewing and moving machine capacity7:15

Planning in Manufacturing v16 to view the capacity of machines or work centers by the hour and by shift, change it by dragging and dropping, and merge manufacturing orders.

What the video shows
  • The work center load (Configuration > Work Centers) shows the total per day, but not from what time to what time it is busy
  • Work Orders calendar view: manufacturing order, product, start and end time, and a line marking the current time
  • Dragging a work order to another day or time to place it after another one; the list and the center’s load are updated
  • Merging two manufacturing orders for the same product into one of 14 units, setting the start date and clicking Plan
  • The calendar only shows the work centers that have orders in the period displayed

Production load planning11:07

How to plan and split manufacturing orders to know the daily load of the work centers and plan production with realistic delivery dates.

What the video covers
  • Starting point: Lathe work center with a Monday-to-Friday calendar from 6:00 to 22:00 (16 hours a day) and zero load
  • Bill of materials for product T1 with a single turning operation of 60 minutes per piece
  • Manufacturing order for 10 units scheduled at 12:00: when confirmed and planned, the 600-minute work order ends that day at 22:00
  • Unplan and replan at 18:00: Odoo allocates 4 hours on the first day and 6 hours on the next, respecting the calendar
  • The work center load chart assigns the 600 minutes to the start date, not to the actual split by day
  • Split action: number of splits, quantity, date and responsible person for each part; it only lets you split if the quantities add up to the order total
  • Result: orders 50-1 and 50-2 of 4 and 6 units, and a work center load of 240 minutes on the 15th and 360 minutes on the 16th

Expected cost and actual cost of materials in Manufacturing v1617:52

Material cost module developed by Binovo for Odoo 16: it manages the expected cost of materials and the actual cost once manufacturing is finished.

What the video covers
  • Example with the bill of materials for bread: flour, salt and water, plus kneading (1 minute) and baking (60 minutes) operations
  • Work centers: hourly cost of the assembly station and the oven, and the effect of the oven’s 100-unit capacity on the expected time
  • Bill of materials overview for 100 units: expected cost of each component and each operation
  • Bill of Materials Costs button on the manufacturing order: lines grouped by type with expected cost, actual cost and variance in euros and percentage
  • When you save consumed quantities that differ from the planned ones, the actual cost of each component and its variance are updated
  • The cost of a work order is calculated once time has been recorded (pause or finish), not while the operation is still in progress
  • Manufacturing order cost report in pivot view, which can be grouped by product and by order
  • When the order is marked as done, the units enter at actual cost and the average cost of the product is recalculated for products in the average cost category

How Odoo calculates production costs27:17

How standard costs are calculated in Odoo 16, from bills of materials to production, including semi-finished products and subcontracting, and why the figures sometimes don’t add up.

What the video covers
  • Example of a hunting knife with a complete bill of materials: handle scales, screws, tempered blade, sheath, book, box and a 5-minute assembly operation
  • The tempered blade is a subcontracted semi-finished product; its component, the untempered blade, is manufactured with 0.10 of a steel sheet and a 2-minute stamping operation
  • The bill of materials overview report shows two columns: product cost and bill of materials cost
  • The product cost is read from the Cost field on the product form and can be set manually; when it is changed from 32 to 34, the report reflects it immediately
  • The bill of materials cost is the sum of components and operations (29.89 in the example) and does not have to match the cost on the product form
  • For raw materials, the cost comes from the Cost field on the product form, not from the vendor price, and is multiplied by the quantity used (two handle scales at 4.50 give 9)
  • Screws are consumable products and show neither available nor on-hand stock; storable products do have stock control by location
  • Comparing both columns helps detect misaligned product form costs, which matters if sales prices are calculated from the cost price
  • The cost of an operation is its duration multiplied by the hourly cost of the work center: 5 min at 80 per hour gives 6.67; if it doesn’t appear, there is missing data to fill in
  • Work center capacity explained with examples of a cutting machine and a bread oven; oven warm-up is equivalent to setup time
  • The subcontracting cost comes from the vendor price in the Purchase tab of the product, which must belong to the subcontractor in the bill of materials
  • With two subcontractors with a price (3.20 and 4.20), Odoo takes the one with the lowest cost; applying a different criterion requires custom development

Procuring products from the bill of materials12:11

How to procure products from the bill of materials in Odoo 16 MRP.

What the video covers
  • Starting point: bill of materials overview report for the hunting knife, with no available or on-hand stock of any component
  • From the instruction book component, you open Forecasted and click Replenish, entering the quantity (20) and the preferred route, in this case buy
  • Odoo creates a request for quotation in Purchase, which the purchasing manager reviews, can send to the vendor by email, and confirms as an order
  • The expected date is calculated using the vendor lead time set on the product (one day in the example)
  • After confirmation, the product’s forecast and the bill of materials report show the 20 expected units and their arrival date
  • The receipt is validated from Inventory; when the report is refreshed, the component turns green as available, with an on-hand stock of 20 units
  • When replenishing a fabric sheath (50) and a custom box (80) from the same vendor, both lines are grouped in the same request as long as it has not been confirmed
  • The receipt can also be done from the purchase order itself, adjusting the received quantity (85 boxes instead of 80) before validating

Manufacturing forecast: what can I make with my stock7:34

Odoo 16 MRP shows visually how much of a product can be manufactured with the current component stock, which is useful for complex bills of materials.

What the video covers
  • Table product with a bill of materials of one top, four legs and two types of screws; on-hand stock 0 and forecasted 1 because of a manufacturing order
  • The Manufacturing Forecast button shows, for each component, the required quantity, the on-hand and available stock and its status, as well as operations and costs
  • Storable components show stock quantities; screws, being consumables, appear as available with no figures
  • Semi-finished products are broken down by level: table top, wood panel, and the latter into multilayer and protective layer, with the units that could be produced
  • When the quantity to manufacture is changed from 1 to 8 tables, all requirements and the availability of each component are recalculated

Animal carcass cutting with the Odoo MRP module30:19

A complete example of disassembly-based manufacturing with MRP: from an Iberian pig, byproducts are obtained with serial number, weight and expiration date, and their traceability is checked from the supplier to the customer.

What the video covers
  • Products involved: pig cutting (what is manufactured), Iberian pig (the component that is consumed) and the resulting acorn-fed pieces
  • Cutting bill of materials: Iberian pig component, the possibility of several revisions, and an operation at the work center Cutting Room Tunnel 1
  • Operation with a manual duration of 60 minutes or one calculated by Odoo, and a work sheet with instructions as a PDF, Google slides or text
  • Byproducts tab of the bill of materials: quantities per pig (two hams, two shoulders, offal, skeleton) and the cost percentage of each one
  • Traceability by product: unique serial number for ham, shoulder or loin because of their different weights, unique lot for offal and no tracking for jowl
  • Bill of Materials Overview button: component availability, possible date based on the vendor lead time, and expected cost
  • New manufacturing order for one unit: confirm and start, with the statuses Draft, Confirmed, In Progress and To Close visible in the list
  • Unbuilds button: serial numbers already generated with date and time, and tab-key entry of the net and gross weight of each piece, with adjustable quantities
  • Production manager review: corrects the actual duration to 70 minutes, checks the consumed lot and the weights, and clicks Mark as Done
  • Actual cost of the order with the operation variance (16.67% higher) and stock entry of the byproducts with their serial numbers
  • Inventory > Products > Lot/Serial Numbers: weights, location and expiration, best before, removal and alert dates calculated from the product
  • Traceability button: source manufacturing order, consumed pig lot, vendor receipt and, after the sale, the customer’s order and delivery note

Manufacturing module features (recorded in Odoo 11)37:42

An overview of the Manufacturing module: creating work orders and production orders, measuring efficiency and defining work centers. Recorded in Odoo 11.

What the video covers
  • Manufacturing menu: production orders, work orders, unbuild orders and scrap orders, plus master data for bills of materials, routings and work centers
  • Products in the Bearing category filtered in kanban and list views, with a free-length internal reference that can be changed at any time
  • “Bearing manufacturing” routing with a production location and an assembly operation at the assembly center, reusable for several products
  • Precision bearing bill of materials: 1 inner ring, 1 outer ring and 10 balls, each component consumed in the assembly operation
  • Other bill of materials options: manufacture or kit type, attached files with priority, and byproducts obtained in the process
  • When a sales order for 2 bearings is confirmed, the production order linked to the order and requests for quotation by vendor are generated
  • Purchasing reviews the prices, confirms the orders and receives the products, and the production order marks the availability of each component in red or black
  • Production orders grouped by status and in list, kanban and calendar views, with the start date calculated from the order’s delivery date
  • Assembly work order as seen by the operator: start, pause, resume, block or scrap, with time tracking against the planned duration
  • When finished, the lot or serial number is entered and the order is marked as done, which consumes the components and brings the finished product into stock
  • Closing the production order and validating the delivery order of the sales order with the units from the manufactured lot
  • Work instructions attached to the routing operation, which the operator sees on the work order before manufacturing

Frequently asked questions about manufacturing in Odoo

How does Odoo calculate the manufacturing cost?

From the bill of materials you can see the expected cost of a product, adding up components and work center operations. Binovo has developed a module that compares the expected cost with the actual cost of each order in real time.

Can work center load be planned?

Yes. With the right calendar on each machine, Odoo schedules work orders according to capacity, and the calendar view lets you move them by dragging and merge orders for the same product.

Does Odoo handle subcontracting?

Yes. Odoo controls the entire cycle: it sends components to the subcontractor, keeps track of their stock at the vendor, removes them from stock when manufacturing, and calculates the cost of the subcontracted product.

Can Odoo connect to production machines?

Binovo integrates Odoo with machines and production plants (Industry 4.0), so manufacturing data flows directly into the ERP.

Want to see how Odoo would work in your company?

At Binovo we implement Odoo, develop custom modules and train your team. We show you your own processes in a demo.

Contact Binovo Odoo ERP implementation · 943 569 206

More Odoo features