Short answer. The bill of materials lists, per base unit of a finished product, its materials, sub-assemblies and components with their quantity and their expected scrap; a manufactured sub-assembly has its own lot and its own stock; it is versioned, and changing a quantity creates a version without touching orders already launched. The routing says on which machine, how long and with how many operators. The production order freezes the version, checks availability and reserves components at launch, consumes them by lot scanned on the shop floor, clocks the start and end of each operation and stops with their cause, counts good and rejected units, enters the finished lot into stock with its date and its link to all upstream lots, and closes with a planned-vs-actual per component. The actual workshop cost, materials at latest reception prices plus hours and line time at a written rate, is divided by good units, not launched ones; it is a figure to decide with, not the accounting cost price, which the accountant computes with their rules.
This guide is for the maker of beverages, cosmetics, cleaning products, furniture, textiles, packaging or parts, the wholesaler who started packing or assembling in-house, and the founder based in France who wants to know the real margin per product of their workshop in Sétif. It does not repeat how stock is kept, described in the stock guide, nor how lots are traced, described in the traceability guide; it describes what, between the two, turns components into a finished product, and it extends our software engineering page. It does not cover accounting valuation rules: the workshop cost is the manager’s tool, the accounting cost price is the accountant’s business.
The bill of materials of a bottled juice
The figure follows a six-pack of orange juice. Two levels, one sub-assembly, packaging, a routing, a version.
The finished product has a base unit, the bottle, and a sales packaging, the six-pack, following the product record guide. The sub-assembly: pasteurised bulk juice is made first, stored in a tank with its own lot, then consumed by bottling; it exists on its own, can be sold in bulk or lost on its own, and its cost is computed at its level. Materials: oranges, 1,400 kilos per 1,000 litres with 3 % expected scrap, sugar, metered water. Packaging: bottle, cap, label, one per bottle with their scrap, and one carton per six. According to the common definition, a multi-level bill of materials lists materials, sub-assemblies and parts parent-child with their quantities; it is exactly this tree.
The routing: three operations, pressing on the press at 2 hours per 1,000 litres with two operators, pasteurising at 1 h 30 with a temperature reading per lot as in the cold chain guide, bottling on the line at 400 bottles an hour with three operators. The version: BOM v3 since September 2026, label v3; v2 is archived, and orders launched under v2 keep v2. The planned cost is recomputed at every version with the latest reception prices from the replenishment guide. Product, quantities, scrap and durations are a constructed example.
«The bill of materials says what and how much per base unit, with expected scrap; the routing says where, how long and with whom; both are versioned.»
Six real situations, and what the application does
Every row is a sentence heard in a workshop, and the answer is a construction, not a more attentive supervisor.
Nobody knows what the product costs: the BOM gives a planned cost, every order gives an actual cost per good unit, and the gap is explained component by component. Materials vanish: every component is consumed by lot on an order, and the theoretical stock of the ledger in the stock guide only moves through those consumptions; the planned-vs-actual gap says where the extra kilos go. A lot of bottles is recalled: the finished lot is linked to upstream lots, and the query of the traceability guide finds the affected juices and their customers in minutes.
The recipe changed, not the price: a BOM version, a recomputed planned cost, and old orders untouched. The line stops an hour, nobody says so: the line clock-in records stops with a coded cause, and real time enters the actual cost. Launched without the components: availability is checked at launch, components are reserved, and an order missing a component does not leave half done. Who may edit a BOM or close an order follows the roles guide.
One production order, in six beats
Clocking is the accented beat: time comes from the shop floor when it happens, not from the evening.
Launch: quantity, BOM and routing are frozen by version on the order; each component’s availability is checked and components are reserved, as a sales order reserves stock. Issue components: on the shop floor, lots consumed are scanned, and the actual quantity is entered, not the theoretical; a component taken from a lot other than planned is accepted and recorded. Produce and clock: start and end per operation, on the offline line screen following the offline guide; a stop is entered with its cause when it happens, labeller, bottle shortage, cleaning.
Count the output: good and rejected, with the reject cause; by-products, pulp, offcuts, enter stock if they have value. Enter the finished lot: its own lot, its date computed from manufacture, and the link to all upstream lots; the lot label is printed following the printing guide. Close and cost: planned vs actual per component and operation, actual workshop cost per good unit, gaps with their causes; a closed order no longer changes, it is corrected by an adjustment order.
Order PO-0412: planned vs actual, lots, yield, cost
The figure follows an order of 6,000 bottles, from launch to close. Actual is not planned copied over.
Components: oranges consumed, 8,650 kilos against 8,400 planned, come from two supplier lots; smaller fruit explains the 3 %; bottles, 6,180 against 6,120, breakage on the line; the rest is within a percent. Time: 10 h 12 against 9 hours, including a 48-minute labeller stop entered with its cause. Output: 5,940 good bottles and 60 rejected for peeled labels, yield 99 %; finished lot L-JUS-1110, 990 packs, enters stock with its date and its eight upstream lots.
Workshop cost: planned 165.6 dinars per bottle, materials 158.6, labour 2.0, line 3.8; actual 172.2, that is plus 4 %, including 23,750 dinars of oranges and 4,620 of time, divided by 5,940 good and not by 6,000 launched. This figure serves the manager to compare two orders, two lines, two orange suppliers, and to set a selling price with the engine of the quote and invoice guide; the accounting cost price, with its depreciation and allocations, remains the accountant’s business, who receives the orders through the integration guide. Order, lots, quantities, times and costs are a constructed example.
«The actual cost divides by good bottles, not by bottles launched; scrap and the machine stop are in it, with their cause.»
Manufacturing, in five layers
The production order is the accented layer: it freezes, reserves, consumes, counts and costs.
BOM and routing. Components per base unit with expected scrap, sub-assemblies with own lot, operations with machine, duration and headcount; versioned, dated, never silently changed. Production order. Quantity, frozen version, dated states, created, launched, in progress, done, closed; components reserved at launch, consumed by lot; good and rejected output; it is a document with its stock movements. Shop floor. An offline line screen: lot scans, clock-in per operation, stops with cause, output count, quality readings; entered when it happens.
Lots and traceability. Finished lot linked to upstream lots and the order; recall both ways; expiry date computed at manufacture. Cost and measurement. Planned and actual workshop cost per good unit, gaps per component and per cause, yield, stops by cause, rate per line, in the manager’s dashboard with a single definition per figure. The routing’s machines are equipment in the sense of the field service guide: their stops and their maintenance live on the same record.
Tooling manufacturing in 2027, in weeks
Seven weeks, the first without code, and two for the BOMs, because a wrong recipe produces a wrong cost.
- What the manager sees: planned and actual cost of every product, orders in progress with their progress, gaps by cause, and yield per line on Monday.
- What the supervisor no longer does: copy the notebook in the evening, guess the time, look for which lot was used, redo the cost computation in a file.
- What is measured: yield per product and per line, material gap per component, stops by cause, actual cost per good unit, orders launched without a component.
Week 1, rules: manufactured products, their base units, expected scrap, machines and their rates, stop and reject causes, the workshop cost formula; with the shop-floor supervisor and the accountant. Weeks 2 and 3, BOMs and routings: entry, or take-over from files with the import guide, sub-assemblies, versions, planned cost per product compared with the price from memory. Weeks 4 and 5, order and shop floor: launch with reservation, line screen, lot scans, clock-in, counting, finished lot; one product first, on one line, following the delivery guide.
Week 6, cost and gaps: planned vs actual per order, per component, per cause; cost per good unit; export of closed orders to the accountant. Week 7, measurement: yield, stops by cause, rate per line, recurring gaps, Monday review. Purchased components then follow the replenishment guide: the planned consumption of launched orders enters the reorder point.
- Why a versioned bill of materials?
- Because a recipe changes, less sugar, a new label, and an order launched last week consumed the old one. Every change creates a dated version; orders keep theirs, the planned cost is recomputed on the new one, and the two can be compared.
- Is the workshop cost the cost price?
- No. The workshop cost is materials at latest reception prices, plus hours and line time at a rate written by the company, divided by good units. It is a figure to compare and decide. The accounting cost price, with depreciation and allocations, is computed by the accountant with their rules, from the same exported orders.
- How is actual entered without slowing the shop floor?
- Through an offline line screen: lot scan at issue, a start and end button per operation, a stop button with a cause to pick, an output count. Nothing is typed twice, and nothing waits for the evening.
- And sub-assemblies?
- A manufactured sub-assembly, the juice in the tank, the dough, the machined part, has its own BOM, its own order, its own lot and its own stock. It can be consumed by another order, sold on its own or lost on its own, and its cost is computed at its level.
- What happens in a recall?
- The finished lot is linked to upstream lots and to the order. A component recall finds the orders, finished lots and delivered customers; a finished-lot recall finds the components and the supplier. It is the traceability guide’s query, production side.
- Must the whole workshop switch at once?
- No. One product first, on one line, for two weeks, with the notebook alongside; then the other products of the same line, then the other lines. The BOMs of all products are prepared beforehand, because they take the most time.
- How long to set this up?
- Seven weeks in the typical calendar, the first without code and two for the BOMs. A workshop that already has the stock ledger and lots takes less; one starting from a notebook and recipes in the supervisor’s head takes all seven.