Worked example
One batch, from the malt lot to the excise period.
A worked example of what a licensed brewery has to keep consistent: one batch of pale ale, followed through purchasing, the brewhouse, packaging, sale, the duty period and a mock recall. The producer is fictional and so is every figure; what matters is how the records fit together.
Figures are illustrative, from Kettle Creek Brewing Co., a fictional producer. No customer data appears anywhere on this site.
The steps
Step 1
Materials arrive as lots.
A purchase order is a promise; the receipt is the physical event. Each delivery becomes a material lot with the supplier’s lot code and its certificate of analysis — and the hop lot’s measured alpha acid, not the variety’s typical value, decides how much goes into the kettle.
-
ML-2610-A
Canadian 2-row pale malt
-
ML-2610-B
Munich malt
-
HL-2609-M
Magnum hops
-
HL-2609-C
Cascade hops
-
YH-2026-0188
Yeast, third generation
Illustrative figures from Kettle Creek Brewing Co., a fictional producer.
Step 2
Two brew sessions, one batch.
The fermenter holds twice what the brewhouse makes, so the batch is two brew sessions knocked out into one vessel. A batch and a brew session are different things for exactly this reason, and every material consumed is recorded against the batch in the same step as the inventory movement and the traceability link.
- Batch
- KC-2026-014
- Fermenter
- FV-3
- Into the fermenter
- 3,003.0 L
Illustrative figures from Kettle Creek Brewing Co., a fictional producer.
Step 3
Every litre accounted for.
Volume in equals volume packaged, plus what is still on hand, plus every recorded loss — exactly, with no tolerance band. A transfer records both the volume that left and the volume that arrived, and the difference is a loss with a reason, never a rounding.
| Term | Volume | Why it is recorded |
|---|---|---|
| Packaged | 2,870.4 L | 473 mL cans and 50 L kegs. This is the volume duty is assessed on. |
| 473 mL cans and 50 L kegs. This is the volume duty is assessed on. | ||
| Tank heel | 68.0 L | Left in the cone. Still on hand, not a loss — it is measured, not estimated. |
| Left in the cone. Still on hand, not a loss — it is measured, not estimated. | ||
| Transfer loss | 17.0 L | The difference between what left the fermenter and what arrived in the brite tank. |
| The difference between what left the fermenter and what arrived in the brite tank. | ||
| Packaging line | 47.6 L | Line waste and twelve rejected cans, recorded in the same transaction as the run. |
| Line waste and twelve rejected cans, recorded in the same transaction as the run. | ||
| Into FV-3 | 3,003.0 L | Remainder 0.0 L |
| Remainder 0.0 L | ||
Illustrative figures from Kettle Creek Brewing Co., a fictional producer.
Step 4
Beer duty is assessed at packaging.
Under the Excise Act, beer duty is assessed on what is packaged each production day — not when it is brewed, not when it is sold, and not when it leaves the building. BrewCraft applies the rate in force on that production day, from a dated table that cites its published source.
In this example, 2,870.4 L was packaged into cans and kegs, and all of it was assessed at packaging.
Illustrative figures from Kettle Creek Brewing Co., a fictional producer.
| Event | Volume | Duty status | What it means |
|---|---|---|---|
| Fermenter FV-3 Fermentation complete | 3,003.000 L | Process stock | Process stock. Nothing is assessed yet, and the ledger says so. |
| Process stock. Nothing is assessed yet, and the ledger says so. | |||
| Brite tank BT-2 Transfer · 17.000 L loss recorded | 2,918.000 L | Process stock | Still process stock. 68.000 L stays behind as a measured tank heel. |
| Still process stock. 68.000 L stays behind as a measured tank heel. | |||
| Packaging run 473 mL cans and 50 L kegs · 47.600 L line waste | 2,870.400 L | Assessed | Duty is assessed HERE, on the production day. Not at the sale. Not at the shipment. |
| Duty is assessed HERE, on the production day. Not at the sale. Not at the shipment. | |||
| Finished goods On the pallet, unsold, nobody has ordered it | 2,870.400 L | Assessed | Already assessed, though nobody has ordered it. This is the part people get wrong. |
| Already assessed, though nobody has ordered it. This is the part people get wrong. | |||
| Shipped Provincial board order, 2,880 cans | 1,362.240 L | Assessed | Shipping is not a duty event for beer, so the status does not move. The period’s remittance is what makes it duty-paid. |
| Shipping is not a duty event for beer, so the status does not move. The period’s remittance is what makes it duty-paid. | |||
Illustrative figures from Kettle Creek Brewing Co., a fictional producer.
Step 5
Release, then sale.
Nothing ships until quality release is signed. Then the board order goes out, kegs go to a licensee and the taproom — and for beer, none of it changes the duty status: the beer was assessed when it was packaged. A keg leaving the dock is three records at once: beer sold, an asset moved, a deposit owed.
- Provincial board order
- 2,880 cans · 1,362.240 L
- Duty status after shipping
- Unchanged — assessed at packaging
Illustrative figures from Kettle Creek Brewing Co., a fictional producer.
Step 6
The period that will not close — on purpose.
At period end the assessed volume must equal duty paid, plus exported, plus destroyed, plus returned to process stock. Here it does not: the quality-control retention samples have no published treatment, so that volume cannot be placed in any term. The reconciliation stays open rather than inventing an answer.
- Assessed
- 2,870.400 L
- Accounted for
- 2,864.724 L
- Unresolved (QC retention samples)
- 5.676 L
Illustrative figures from Kettle Creek Brewing Co., a fictional producer.
Of the accounted-for volume, 2,864.724 L is duty paid — including beer still in the cold room, because assessment is the liability.
| Line | Volume | Note |
|---|---|---|
| Assessed at packaging | 2,870.400 L | = 28.704 hL |
| = 28.704 hL | ||
| Duty paid | −2,864.724 L | Including assessed beer still in the cold room. Shipping it does not change this line. |
| Including assessed beer still in the cold room. Shipping it does not change this line. | ||
| Exported | 0.000 L | None this period |
| None this period | ||
| Destroyed | 0.000 L | None this period |
| None this period | ||
| Returned to process stock | 0.000 L | None this period |
| None this period | ||
| Accounted for | 2,864.724 L | |
| Unresolved | 5.676 L | QC retention samples |
| QC retention samples | ||
No return produced
5.676 L of assessed product is unaccounted for, and the reason it is unaccounted for has no published answer.
- The rule
- A duty period only closes when every litre reconciles. There is no tolerance band, and no setting that adds one.
- The open question
- Whether a quality-control retention sample drawn from packaged, assessed beer is duty-paid, destroyed, or neither. No published source answers it. BrewCraft marks it as an open question rather than guessing.
- What happens instead
- The period stays open, the unexplained volume is named on screen, and the question stays on our list of questions with no published answer, with the date it was last reviewed. It is never filled in with a default, and never with zero.
Illustrative figures from Kettle Creek Brewing Co., a fictional producer.
Step 7
Traced both ways.
Start from the malt lot and every finished lot it reached, and every destination of those lots, is one walk through recorded links. Start from a can and you reach every material lot behind it. Each link was written in the same step as the movement that created it.
Suspect lot
ML-2610-A · Canadian 2-row pale malt
Went into batch KC-2026-014. The other four inputs are not implicated and stay out of the recall.
-
FG-2026-0781 · 4,800 × 473 mL cans
- Provincial board order 2,880 cans
- On hand 1,908 cans
- QC retention 12 cans
-
FG-2026-0782 · 12 × 50 L kegs
- Licensee 8 kegs
- Taproom 2 kegs
- On hand 2 kegs
Illustrative figures from Kettle Creek Brewing Co., a fictional producer.
Step 8
Five amounts on one order, kept apart.
The board order carries excise duty, the board’s markup, a container deposit, a stewardship fee and sales tax. Different payees, different bases, and only one of them comes back. BrewCraft looks each one up from a dated table that cites its source, and keeps them as separate amounts.
| Amount | Paid to | How it applies | Comes back? |
|---|---|---|---|
| Excise duty | Canada Revenue Agency | Assessed at packaging on the volume packaged that production day. Shipping the order later does not change it. | No |
| Provincial markup | The provincial liquor board | The board’s own formula, by province, container, strength and the producer’s volume. | No |
| Container deposit | The provincial deposit programme | Per container, collected on sale and handed back when the empty returns. | Yes — a liability, not revenue |
| Stewardship (EPR) fee | The provincial recycling programme | Per container, by material, to fund recycling. | No |
| Sales tax | Federal and provincial tax authorities | Applied at sale, under place-of-supply rules. | Recoverable as an input tax credit by a registrant |
Questions
Questions this example tends to raise.
- What is the difference between a duty-paid and a non-duty-paid litre?
- A non-duty-paid litre is packaged wine, cider or mead held in an excise warehouse, where duty is imposed but not payable until it leaves. Beer has no non-duty-paid stage: its duty is assessed at packaging, and the litres become duty-paid once that period’s duty is remitted.
- How do I run a mock recall?
- Choose the suspect lot (a malt, hop or yeast lot, say) and BrewCraft follows it forward to every batch it went into, every finished lot made from those batches, every customer who received one, and what is still in your cold room. The links were written as the work happened, so nothing has to be pieced together on the day.
- Is beer duty charged when the beer is sold?
- No. Under the Excise Act, beer duty is assessed on the volume packaged each production day, so selling it, shipping it or moving it to the taproom does not change what is owed.
- What happens to beer lost between tanks?
- The transfer records the litres that left one vessel and the litres that arrived in the next, and the gap is written down as a loss with a reason in the same step. None of it disappears into a tolerance.
Your batches, followed the same way.
BrewCraft is in private beta, onboarding a limited number of Canadian producers. Early partners shape what it does next.