Designing a bill of materials
Open Inventory, Items, then the Bills of materials pill at the top of the page. A bill of materials (BOM) belongs to one item — the thing it makes — and lists its components and how many of each it takes. You choose the item, an optional name (the item’s name is used if blank), and the output quantity: how many units one run of the list makes. That is 1 for a single product, but a recipe that makes a batch, such as 12 bottles, sets 12, and each component’s quantity is then what the whole batch takes. Each line can carry a note. A BOM is active or archived, and only an active one can be built from.
Three structural rules keep a BOM safe. An item cannot be a component of itself, and a component that is itself made with the finished item is refused, so a list can never loop through a sub-assembly. Components can have BOMs of their own, but each is built on its own order: build the sub-assembly first, then the product. And editing a BOM changes future orders only — orders already raised keep the components they were raised with, so a recipe change mid-week does not rewrite Monday’s order. The BOM page shows today’s cost of one finished unit from current component costs.
In practice: a juice maker in Thika makes Mango 500 ml in batches. Its BOM for Mango 500 ml has an output quantity of 12 and components of 3 litres of mango pulp, 12 bottles, 12 caps and 12 labels. At current costs of KES 220 a litre of pulp, KES 18 a bottle, KES 3 a cap and KES 4 a label, the page shows a cost per finished bottle of (660 + 216 + 36 + 48) ÷ 12 = KES 80. A second BOM for a Mango gift crate lists 6 bottles of Mango 500 ml and one crate — the bottles are built first on their own order, then the crate.
Key takeaways
- A BOM belongs to the item it makes and lists components per output quantity.
- Only an active BOM can be built from; archived ones are kept for history.
- Loops are refused; sub-assemblies are built on their own order first.
- Editing a BOM affects future orders only.