A AION Academy

Lesson 2 of 5 · 7 min read

Formulas, BOMs, and job orders

The core data objects of manufacturing: the formula (what goes into a product), the BOM (how much of each component), and the job order (the executable production request). Get these right and everything else works.

The three objects

Every manufacturing system revolves around three objects:

  • Formula — a recipe: what ingredients go into a product, in what proportions, by what method
  • Bill of Materials (BOM) — the operationalized version: exact quantities needed for a specific batch size, including packaging
  • Job Order — the executable: “produce batch X of product Y, starting date Z, at this cost center”

In some systems the formula and BOM are merged; in others they’re distinct. Either way, the pattern is: recipe → required materials → production execution.

The formula

A mango juice formula looks something like this:

IngredientPercentagePer 500ml bottle
Water (treated)80%400 ml
Mango concentrate 65° Brix15%75 ml
Refined sugar4%20 g
Citric acid0.3%1.5 g
Preservative0.7%3.5 g

The formula is owned by R&D or the production manager. It has:

  • A name and version (formula versioning is critical — when you change the sugar from 4% to 3.8%, that’s v2, and it must be approved before any batch uses it)
  • A status (draft, approved, frozen, retired)
  • A validity period (some formulas are seasonal)
  • An approval chain (production manager, QA, sometimes owner for cost-sensitive changes)

The BOM (Bill of Materials)

Where the formula is a recipe, the BOM is the shopping list for a specific batch size. For a batch of 10,000 bottles of mango juice 500ml:

ItemUoMQty per batch
Water (treated)L4,000
Mango concentrate 65° BrixL750
Refined sugarkg200
Citric acidkg15
Preservativekg35
PET bottle 500mlpcs10,000
Bottle cappcs10,000
Labelpcs10,000
Shrink wrapm100

Notice the BOM includes packaging (bottles, caps, labels, shrink) — the formula does not. This is important for costing: the cost of a unit of finished good = ingredient cost + packaging cost + direct labour + overhead.

The BOM is derived from the formula by the planning team. The same formula can drive multiple BOMs (for 5,000 bottles, 10,000 bottles, 50,000 bottles) because the batch size affects rounding, minimum order quantities of packaging, and batch-specific overhead.

The job order

The job order is what moves the production from plan to reality. It has:

  • Product — what’s being made (e.g., Mango Juice 500ml, FG-001)
  • Quantity — how many units (e.g., 10,000 bottles)
  • Formula + BOM version — locked at job order release (so if the formula changes mid-batch, this batch still uses the frozen version)
  • Planned start / end dates — when production happens
  • Cost center — where the cost gets allocated (e.g., Bottling Line 2)
  • Status — draft, released, in-progress, completed, closed

Job orders go through a lifecycle:

Draft → Released (materials reserved) → In Progress (materials issued) →
Completed (FG produced) → Closed (variance posted)

At each stage, specific things happen in the GL:

  • Release: no GL impact, but inventory is reserved
  • Material issue: DR WIP, CR Raw Material Inventory
  • Completion: DR Finished Goods, CR WIP (at standard cost)
  • Close: DR/CR Variance accounts (actual vs. standard)

Where F&B gets complicated

Multi-output formulas

Some F&B processes produce more than one output. A dairy process might yield cream, skim milk, and whey all from one run. The cost has to be allocated across outputs using a policy (e.g., by market value, by weight, by volume).

Yield variance

A formula says “use 4,000L of water + 750L of concentrate to make 10,000 bottles of 500ml.” That’s 5,000L of juice = 10,000 × 500ml exactly. In reality, some juice is lost to tank cleaning, line flushing, evaporation, and filler mis-fills. Actual output might be 9,850 bottles.

That 150-bottle gap is yield variance — it has a cost, and you want to know if it’s getting better or worse over time.

Scrap

Sometimes a bottle fails QA — under-filled, wrong label, cap not seated. It’s scrapped. The finished product that was made doesn’t leave the line. The cost is still incurred; it just doesn’t become saleable inventory.

Scrap has to be captured (product, quantity, reason) and costed so you can:

  • Root-cause investigate (is Line 2 scrapping more than Line 1?)
  • Accurately cost the good units (total cost / good units, not total cost / all units)

Sub-assemblies

For complex F&B (e.g., dairy desserts with multiple components), you may produce a “base” (e.g., vanilla custard) separately, then use it as a component in finished products (vanilla-raspberry, vanilla-chocolate). The base has its own formula, BOM, and job order flow, feeding into the parent product’s BOM.

Next lesson

In Lesson 3 — How AION automates production, we’ll show how AION models all of this, including formula versioning with approval workflow, job order orchestration, and the cost flow from raw material to FG.