Skip to content

Period Close and Reconciliation — making the book agree with reality

What this covers. All month long the running book quietly tracks what should be in every storage location, while the stock itself drifts: cooks over-portion, lettuce spoils unrecorded, a case walks out the back door. This chapter explains how a warehouse closes its books for a period: a storekeeper counts what is actually there, an accountant compares the count against the book and accepts the surviving differences, and the close turns each accepted one into an overage or a shortage, strikes the period's one price, and values every movement of the period at it — which is exactly how shrinkage lands in the cost of what you sold. Around that core it covers what else the walk confirms (small tools, counted consumables, the asset register's serials) and what never reaches it because it was expensed at the door; the cadence a warehouse keeps and why it never becomes a rule; reading the book on a day nobody walked, and the spot form that keeps a running balance honest between closes; the initial balances that begin a warehouse's books on one shared date; the self-check, the deterministic close-blockers, a controlled return to reconciliation, and how each restaurant's profit-and-loss rolls up from the same moves.


1. Why a close exists at all

Two ways to know what is actually on hand sit at opposite extremes.

A perpetual inventory is the running, always-on book: every receipt, sale, transfer, and waste records a stock movement, and on-hand is the signed sum of those movements (see Stock ledger). It is correct the instant anything happens — but only about what the system was told. A periodic physical count is the opposite: you ignore the book entirely, walk the storage locations, and write down what you actually see. It is the truth — but only as of the moment you counted, and it costs labor to do.

The running book is honest about everything it was told and silent about everything it was not:

  • a cook who over-portions every plate by 10 g,
  • a case of lettuce that spoiled in the walk-in and went in the bin with no wastage entry,
  • theft,
  • an invoice that billed 50 kg but delivered 48,
  • evaporation, trim, breakage.

None of these record a movement, so the running book cannot see them. Left alone, the book drifts away from physical reality, and every number built on it — food-cost percentage, cost of goods sold, margin — drifts with it.

A useful consequence of how the two extremes combine: the running book degrades gracefully into the periodic ritual. An operator who records nothing mid-period beyond received deliveries, and then counts once a month, still gets fully correct books — the count trues the quantity up, the close prices the month off the month's own deliveries, and cost of goods comes out right. That is the minimum viable ritual: receipts plus a periodic count. Everything beyond it — recording waste as it happens, keeping recipes current — doesn't change whether the books are correct; it buys earlier truth: live on-hand you can order against, expiry alerts that fire in time, and a variance report that explains itself instead of accumulating a month of mystery.

The close is the truth event. Once per period a human counts what is actually there, and the system reconciles its running claim to that count. The textbook name for this pairing is perpetual inventory reconciled by periodic physical count: keep a live book all month, then prove it against reality at month-end. The whole process turns on one phrase.

Count wins. When the book and the count disagree, the count is the truth and the book is corrected to it. The gap posts as a shortage, valued at the period's own price like everything else that left — shrinkage landing in cost of goods sold — or as an overage, which carries quantity and no value.

This is also why the close is a hard, gated boundary. It freezes a period's numbers, rolls a closing valuation forward as the next period's opening balance, and must not run while the books are internally inconsistent (§7).

Why an operator should care. The close is where "what we think we spent on food" becomes "what we actually spent on food." A period that never closes — or that closes over rows that don't add up — produces a food-cost percentage nobody can trust. The blockers in §7 exist precisely to refuse a close that would publish a wrong number.


2. The accounting period — one calendar per warehouse

The unit being closed is an accounting period: a single warehouse's books for one stretch of time, usually a calendar month. Crucially, the period is keyed to a warehouse, not to the company as a whole. Each warehouse closes its own books, on its own monthly calendar, in its own timezone. And the calendar begins where stock-keeping begins: a warehouse's first accounting period starts on its opening date (§4), shared by every storage location, and every later period starts the day after the last seal. The opening is the balance at the beginning of that first day; all movements dated that day belong to the period. At each close the accountant chooses the ending date (§3); the starting date follows from the warehouse's opening or the preceding close.

Why per warehouse? Because that is where value lives. Stock is valued in the warehouse whose books hold it — the average cost of flour is a property of that warehouse, not of the company (see Scope & locations). The period that finalizes that valuation must therefore be per warehouse too. A central commissary and a satellite warehouse can be mid-period at different times; there is no single company-wide "close button." Closing the company means closing each warehouse, one at a time.

A closed period fixes a closing snapshot for each item the warehouse holds: the quantity and value that the next period inherits. Value belongs to the warehouse's pool, while physical quantities belong to its rooms (§3).

The close audit preserves how the warehouse reached that result: what each room's book claimed before correction, what the chosen count asserted, which differences the accountant accepted, and what the close posted. If the kitchen is short 500 g of flour and the bar has 500 g extra, the warehouse has no net quantity difference; the two discrepancies still matter and remain separate. The warehouse's one closing value belongs to neither room alone.

The same historical evidence includes the initial balances and chosen closing counts, the documents' contributions, receipt expenses, and the asset register's expected placement compared with the sightings on the chosen walks. It retains the names, units, categories, and accounting treatments used when the period closed. Renaming flour or moving an asset later cannot change what that earlier close established. This evidence remains the account of that particular close even if the close is later reversed (§8). When detailed evidence was never retained, its absence means the history is unknown, not that there were no discrepancies, expenses, or assets.

The close policy — a cadence, never a gate

"Usually a calendar month" is a habit, not a law, and different warehouses sensibly keep different rhythms: the busy dry store monthly, the expensive spirits cage weekly, a warehouse holding nothing but fixed assets once a year. So each warehouse carries a close policy — the rhythm at which its books are meant to be closed: on demand, weekly, monthly, quarterly, or annual.

The policy is a hint and only a hint. It says where the next period boundary falls, so the system can pre-fill a close date and tell the operator a period is due; it never refuses anything. Closing stays a deliberate human act, and any date remains legal — a business that closes on the 3rd because the 1st was a holiday is doing nothing wrong. Making the cadence advisory is what keeps a scheduling preference from turning into a rule the books have to obey.

last close ends 30 Jun  +  policy         →  the boundary the system offers
                           weekly            7 Jul
                           monthly           31 Jul
                           quarterly         30 Sep
                           annual            31 Dec
                           on demand         — (see below)

That offered boundary is also the yardstick a finished close is read against. A close sealed on the offered day is on time; one sealed before it is early; one sealed after it is late. All three are ordinary and all three are legal — the label describes what happened, it never decides whether it may happen. And a close that misses its boundary does not drag the calendar with it: the next period runs from the day after the seal to the boundary the calendar already had, so it simply runs short and the rhythm is back on the month end.

cadence monthly, the offered boundary 30 Jun
seal 30 Jun  →  period [1 – 30 Jun]     on time   next period [1 – 31 Jul]
seal  3 Jul  →  period [1 Jun – 3 Jul]  late      next period [4 – 31 Jul], short
seal  7 Jun  →  period [1 –  7 Jun]     early     next period [8 – 30 Jun], short

Both directions matter in practice. A business that counts on the 3rd because the 1st was a holiday closes late and owes nobody an apology. A business that wants its book trued a week into the month closes early — a real close, with real corrections, sealing a real seven-day period — and the month-end boundary is still waiting where it always was.

On demand is the count-to-count rhythm: there is no calendar boundary at all, and no due date to nag about. Instead the system offers the date of the warehouse's latest full count — because for an operator who closes when they have counted, the walk is the period boundary. It is the honest option for a small operation that counts irregularly, and it removes the temptation to close on a date nobody actually walked.

Cadence is also how assets get verified on their own rhythm. The register keeps its own books, and those books set an annual policy: the traditional once-a-year asset walk, with no separate ritual invented for it (see Fixed assets §7). That the two families sit on different contours is exactly what lets each keep the rhythm it deserves — a monthly walk of the food store never drags the ovens along with it, and the ovens' annual walk never holds up the month.

One honest wrinkle follows from per-warehouse calendars. A restaurant may draw from warehouses that close on different calendars — its own warehouse monthly, a shared commissary on another cycle. The consumption side of that restaurant's P&L is unaffected: consumption is posted eagerly and every movement carries its business date, so "what did this restaurant consume in June" is always answerable. But shrinkage only becomes a number when a warehouse closes, so a restaurant fed by warehouses on different calendars has no single period in which all of its shrinkage settles. The model accepts this: shrinkage is a warehouse-period fact, and it reaches the restaurant's P&L as each supplying warehouse closes its own books.

Counting is one job; making the book agree is another

Two roles run through the rest of this chapter, and they are roles rather than job titles — in a small shop one person wears both, on two different days. The storekeeper walks and counts. The accountant reconciles and closes. Everything below turns on keeping those two jobs apart, because the person who says what is on the shelf should not also be the person who decides what the gap means.

A stock count — the form that records a physical count — is a pure observation of one storage location inside a warehouse. The sheet is written the way that storage location is walked, one row per sighting, and the same item may appear on several rows — one per spot it turned up in, each in whatever unit that spot held. A free-text label can preserve finer detail such as "shelf 3." Every row converts to the item's base unit and the sightings sum per item, giving the assertion: these items were seen at this storage location, at these quantities. That is the sheet on a warehouse that holds stock; on the books that carry the asset register the same form asks its one other question, serial by serial (§2 below). Either way the form moves nothing — a count never touches the ledger.

A count has two independent questions: has the operator published this observation for daily use? and does it cover everything a full walk must answer for? Publishing is a decision; completeness is a judgment against the books. Neither substitutes for the other.

A draft stays a working observation, not a published basis for daily balances. It can be fully filled and remain unpublished. Posting publishes the observation: the explicitly counted items become usable for daily balances. Both full and spot counts follow this same rule. Posting creates no stock movement, no value and no period settlement.

A posted full count may still be incomplete. If flour was counted but rice was not, publishing makes the observed flour useful without making a claim about rice. An omitted item means not observed, not zero. An explicit zero means observed and absent. Several sightings of the same item add up to that item's quantity; they still answer for only one item.

publication       draft → posted       operator chooses to use the observation
completeness      incomplete / complete     derived from the facts it must cover
settlement        editable / settled       determined by a close still in force

Both draft and posted counts remain editable while unsettled; correcting the quantities or the count's own date preserves the publication decision. A cancelled count remains in history as withdrawn evidence: cancellation is how either a draft or a posted observation is retired. Counts within a closed period are settled, as are those supplying its chosen opening or closing evidence even when walked outside its dates. Settlement fixes the count without changing its publication decision: a complete draft can support a close while remaining a draft. Reopening releases that settlement and retains the prior draft or posted state; the original close keeps the evidence it relied on (§8).

A count records explicit quantities of zero or more, in known units, at the storage location observed. A draft may start empty and grow as the walk proceeds. The coverage question stays separate from recording the next observation: a walk in a cold room must be able to preserve what has been seen before everything has been seen.

What a full count must answer for is the storage location's candidate list: every item carried at a non-zero quantity by the preceding close, or by the warehouse's initial balances before its first close, together with every item that moved there from that boundary through the count's date. Movements matter even when an arrival and departure cancel exactly. Publishing another full or spot observation neither adds items to this list nor removes them: operational observations are not the accounting basis against which a full walk is judged. A zero for a required item is confirmed, never assumed. An item carried at zero with no activity stops demanding a confirmed zero each period; an archived item still carried by the books remains part of the walk.

Completeness follows the current facts. A delivery the next morning does not belong to yesterday's walk, but a receipt backdated into yesterday does. Correcting the initial balances can likewise introduce an item that the walk never counted. Either correction can make a full count incomplete without changing its draft or posted state, withdrawing its explicit observations, or replacing the accountant's closing selection. Closing requires complete evidence, so the missing observation must be supplied before the period can settle.

Counting is per storage location because a walk is a walk: someone goes to the cellar, or the bar, and comes back able to speak for that space and no other. The spot form (below) walks one storage location too, and speaks only for the items it lists.

A warehouse close gathers one chosen full count from every active storage location that carries opening stock, has activity during the period, or holds active assets. A posted observation of positive stock also establishes that the storage location was used, even when no receipt explains it. That requires a full walk, not coverage of every item an operational observation happened to name. A location used in the period belongs to it even if registered later. A location with an empty starting balance, no activity, no observed stock and no assets needs no observation of nothing. That known empty state differs from an uncounted location whose books or observations claim stock. The walks may finish on different days, but together they are the evidence for the warehouse balance. Once the period closes, the chosen set is fixed so a later walk cannot rewrite which observations supported the close.

Worked example. A storage location starts empty and has no movements. A posted spot count observes 3 kg of rice, so daily on-hand reads 3 kg and the location needs a full count for closing. Rice is still absent from the accounting candidate list: it has neither an initial balance nor a movement. An empty selected full count is therefore complete and can settle the location at zero. The spot observation remains part of the operational history; it supplies neither a financial overage nor a required closing item. If the chosen full count instead records the 3 kg, that observation supplies the overage to reconcile. The two books answer different questions from different evidence.

A never-used, empty location can be archived immediately. Until the warehouse's first close its initial balances are still a draft, so archiving the location discards them with it. A used location must first be counted in full at zero and that zero settled by a warehouse close. A complete count alone is still a working claim. Any later accounting activity demands a new count and settlement, even when an arrival and departure add up to zero. Archiving also requires releasing the warehouse default, all consumption routing and every active fixed asset. All these obligations must be satisfied together. Restoring a location manually removes its movement lock without changing past counts or movements.

What a full count covers — one shape per contour, and one thing that is never there

A count is one thing, and which thing it is comes from the warehouse it walks. A warehouse admits one family of item — operating stock or the fixed-asset register, never both (see Scope & locations §4b) — so a sheet asks one kind of question. On a stock warehouse it asks how much is here, in quantity rows; on the books that carry the register it asks is this exact unit still here, one tick per serial, with no quantities on it at all. Nobody walks a page with two halves, and no walk of an asset contour can put a quantity onto books that hold none.

Within a stock warehouse's sheet there are still two kinds of quantity row, because the things behave differently once the count is read (the treatments themselves are taught in Item model & policies):

On the sheet How it is counted May rows be added? May the count find more than the book?
stock (perpetual inventory) quantity rows, as many sightings as the walk produced yes yes — an overage
small tools (expensed on write-off) quantity rows, offered from the book so the walk can tick through them yes yes — the sighting stands, but no correction posts for the surplus, at whatever storage location it was found, until a document explains the units
counted consumables (expensed on receipt, counted) quantity rows, like stock yes yes — and the find enters at zero with no guard at all: the cost already left at the door and can never be expensed again

And on the register's own books, one section and one only:

On the sheet How it is counted May rows be added? May the count find more than the book?
fixed assets (capitalized) one row per serial, a checkbox — the whole form yes — any unit the register knows, on every scope yes — the sighting stands as a discrepancy, and nothing about the register moves until a document moves it

One kind of goods is deliberately absent from both, and the absence is not an oversight. Consumables — the goods expensed the moment they arrive: the salt, the oil, the paper napkins — never reach the book at all. Receiving them books an expense and no quantity, so there is no on-hand to walk against, no difference to accept, and nothing a close could settle. The period still reports what they cost, because that money was genuinely spent; what it can never report for them is a gap, because there is no claim there to disagree with. Counting them would be counting something the books never claimed to hold.

That split is worth naming precisely, because "consumables" is the word an operator reaches for when they mean everything that gets used up. Here the two words divide the work: stock is the flour, the beef, the wine — goods carried on the ledger, walked, counted, and valued — while consumables are exactly the goods expensed at the door, gone from the record the moment they arrive. The counted consumable sits between them: money settled at the door like a consumable's, a quantity that walks like stock's — so its rows join the sheet and settle at zero.

Stock is the open case, and rightly so: a sack of flour nobody recorded is an ordinary find, and the overage of §4 records it at zero. Small tools are just as open, for the plainest reason there is — a sheet that cannot write down eight pans where the book calls six is not a count, it is the book copying itself. The whole job of the walk is to say what is there, and a document that will not hold that number is worse than no document.

What the sheet may say and what the books may absorb are two different questions, though, and it is the second one that has to be guarded. Quantity that appeared on the books at zero cost would later leave as an expense — the day the pan is written off, the day the asset is disposed. Expense with no purchase behind it is precisely the shape auditors read as tax evasion, so found units reach the books only when a priced document explains them. Which is why the two gestures part company here: the count records eight pans, and the correction waits. A small tool counted above its book posts no overage at all. The one way through is to enter the goods receipt that was never entered — the delivery those two pans arrived on, at what they cost — which raises the book to eight and gives the found units their price in a single honest gesture, after which the gap melts like any other journal fix (§4). There is no second route to found value, deliberately: it comes from the document that paid for it, or it does not come at all.

Often, though, no value was found in the first place — the pans were already on the books, just not where the book put them, and the document that answers is the transfer nobody wrote. That is why the correction waits for the whole item and not merely for the row that reads high. A storage location short of pans and another holding extra are, nine times in ten, one fact told from two ends; settling the shortage on its own would expense pans that are sitting twenty meters away in the next room, and a close would carry that mistaken expense into the next period. So the walk records both readings, and the correction stays out until a document says which story is true. It costs nothing to wait: unlike a delivery or a breakage, a correction is a conclusion being drawn, not an event that already happened.

The warehouse's initial balances (§4) supply the starting quantities and costs, small tools included. A counted consumable starts with a quantity and zero value: its treatment keeps the count beside a cost already expensed.

Fixed assets have the same split, answered in their own way on their own contour. The sheet pre-draws the serials these books expect — that is what makes the walk short and the question clear — but the walker may tick any unit the register knows, including one the books place elsewhere entirely or have already written off. Refusing those would leave the person holding the unit unable to say so, and the mistaken sheet as the only record; and accepting them costs nothing, because a tick moves no value. What cannot be typed onto a sheet is a serial the register has never heard of: such a unit enters by being registered, carrying its cost, which is the same "no value from nowhere" rule the small tools answer with a waiting correction.

That generosity belongs to both full and spot counts: a tick places nothing and prices nothing, so being surprised is free wherever it happens. A unit on another warehouse's books still comes here on a transfer and nowhere else; the tick simply records that someone was looking at it.

A tick that disagrees with the register — an asset seen at another storage location, on another warehouse's balance, or after its disposal — becomes a discrepancy on this view, and so does a unit two walks reported from two different storage locations. A discrepancy moves nothing by itself; it is answered by the document that moves the unit, posted by whoever answers for the books, and it clears itself once that document exists.

Every scope may carry serials, and every scope does the same job with them: the sheet pre-draws the room's roster and the walk ticks what it sees. A tick is a sighting; a serial left unticked says nothing by itself — one walk not seeing a unit is not a verdict on the unit. What an unticked serial means is read at the close, across every walk the accountant trusted: a unit nobody ticked anywhere reads missing, and that is a fact the close refuses to seal over until the unit is found or disposed. The section is taught in full in Fixed assets §7: a tick freezes nothing and moves nothing, and missing is derived, never a status.

Forcing the book to agree with what was seen is a separate, deliberate gesture, often by a different person on a different day. The storekeeper walks — perhaps daily, perhaps a week before anyone reconciles. The accountant then compares each item's count against the book's claim, fixes the journals the gap points at (a missing transfer, an unposted receipt — each fix shrinks the gap, live), and accepts what survives, item by item, for a room, or in bulk. An explicitly recorded quantity, including zero, is evidence for that item even while the rest of the walk is unfinished. An item nobody has counted has an unknown quantity and no difference to approve. Completing the walk establishes the whole room's evidence for closing the period.

An acceptance is a decision on file, not a posting. It approves the item's full signed difference in one room: the shortage or overage the accountant answers for. Nothing reaches the ledger until the close consumes that decision. Unaccepting withdraws the approval; the reconciled quantity returns to the running book's claim, with no stock movement to take back. While the approval is current, reconciliation includes the accepted shortage or overage and leaves no remaining difference. The accepted quantity still states exactly what the accountant approved; it does not disappear when the remaining difference becomes zero. An item holds one decision per room at a time. Repeating an unchanged approval leaves the original decision and its approver intact; accepting a changed difference replaces the decision, and accepting again after withdrawal is a new one.

The decision is about the number, because the number is what the close settles. While the row's difference still equals the accepted one, the approval stands, whatever documents arrived in between: journal fixes that cancel each other out leave the same shortage, and the close posts the same correction. When the difference moves — a late receipt, a recount, other dates or counts — the approval is stale. It shows what was accepted beside what the difference is now, and contributes no correction to reconciliation until it is accepted again or withdrawn. A row the documents walk back to agreement is stale too, never quietly clean. Splitting the two gestures separates the counter from the approver: reconciliation accounts for current decisions, while the running ledger carries the recorded movements until the close settles those decisions.

The spot form — an honest running balance between closes

A full walk answers for a whole room; most days nobody has time for one. The spot form is the smaller gesture: a list of items counted in one room on one day — the flour and the oil after a delivery, the spirits behind the bar on a Monday — and nothing said about anything else. It is a count like any other: one room, sightings summed per item, and it moves nothing. When the operator posts it, it re-bases the running book: from its date, each item it lists reads the counted quantity plus the movements after that day, in that room. Silence on it means nothing — an item it does not list keeps whatever basis it had — so it demands no coverage, and a later posted observation wins over an earlier one, item by item.

That is its whole purpose: an operator who wants the balances they order and cook against to stay honest between closes, without closing. It is not evidence for a close and never claims to be. A spot form is never seated (§3) and never carries a cost; it re-bases quantity and only quantity. The shrinkage it reveals stays on the running book as a smaller number, expensed by nothing short of a close, and the pool's price does not move for it.

Truing the book mid-rhythm — close early

Publishing a count creates no movement and prices nothing. A published full or spot walk keeps the running quantity honest (above), but the drift it reveals is settled — expensed into the cost of goods, the price struck over it — by nothing short of a close. A business that wants the settled book trued in the middle of its rhythm has a straightforward answer: close early. One week into a monthly cadence, walk every room, accept the differences, and seal that week; the month-end boundary is still waiting where it always was (§2). Whatever the rhythm, a close rests on a complete count wherever stock, activity or assets require one, so its balance rests on a full picture.

Reading the book at a date the close did not choose

Closing on the 3rd of July because that is when the last room was walked is honest, and it is also inconvenient for everyone outside the business who asks what the books held on the 30th of June. So the book is readable at any calendar day, without a second close and without moving the one that happened.

Inside a sealed period the answer is that period's settled truth, read backwards. The corrections the close posted are dated at its end, but the drift they settle happened somewhere inside the span and nobody can say when — so they count for every day of it, not only the last one. The value uses that period's own price, the figure the close already proved and handed forward. That holds whatever the period's calendar: a period sealed on the 7th of July because that is the day the last room was walked prices the 30th of June at the price it struck, and any calendar window inside a closed period is answered exactly — the quantity from the settled movements, the value at the struck price of the period each day falls in. This is what makes the export to the operator's books indifferent to when a warehouse happens to close (see Financial boundary §4).

In the open period the running book stands, item by item at each storage location, on the latest posted count that explicitly observed that item, plus movements after that day. Full and spot counts supply that observation alike; an item omitted from a later count keeps its existing basis. Without a published observation in the open period, the starting claim is the preceding close or, before the first close, the warehouse's initial balances. An empty initial balance starts at zero, with every movement from the opening date included. The derivation is Stock ledger's, §4.

A draft or cancelled count supplies no published operational assertion. A posted count is a provisional reading, not a correction and not settled history. Reconciliation instead compares the accountant's selected full counts against the initial or settled balance and the period's business facts (§3). Frequent observations keep daily operations useful without disguising the differences that a close must settle.


3. The reconciliation row — one room, one item

The close computes one reconciliation row for each (storage location, item) pair it walked. The grain is the room because that is where a walk happened: a store six kilos short and a bar four kilos long are two facts, and probably one unrecorded move between them. Netted into a single two-kilo shortage the record would go quiet about both, and the settlement would expense flour sitting twenty meters away. The warehouse figure is still the sum of its rooms — derived, never the thing a difference is recorded against.

Every figure is in the item's base unit — the canonical unit each item is stored and costed in, with every unit converted to it at the moment anything enters the book (see Units of measure). Every figure has a quantity side and a money side.

A row is just bookkeeping arithmetic made visible: start with what was on hand, add everything that came in, subtract everything that went out, and you have what the book claims should be on hand. In order:

opening on-hand           initial balances, or last period's closing rolled forward
+ supplies                received this period from a supplier      (supplier → internal)
+ transfers in            received from another warehouse           (internal → internal)
− transfers out           sent to another warehouse                 (internal → internal)
+ production output       what production returned                  (production → internal)
− production input        all stock taken, including production loss
− sales                   sold dishes, recipe-exploded to leaves    (internal → customer)
− direct sales            a stocked item sold as-is, 1:1            (internal → customer)
− internal use            staff meals, recipe tests — by category   (internal → customer or scrap)
− wastage                 spoilage / trim                           (internal → scrap)
+ period corrections      explained quantity changes established during reconciliation
= projected on-hand       what recorded facts and proposed corrections say should remain

The sales line is a recipe explosion — unpacking a sold dish into the raw ingredients its recipe says it consumed (the textbook name is exploding a bill of materials). The full mechanics live in Sales & consumption; here we only need the result: every sold dish lands as depletions of its leaf ingredients, in base units, in this row.

Notice where each outflow goes. A sold dish, a direct sale, and a comped plate (a sale at €0 — the customer transaction happened) all leave to the customer side. Internal use goes where its consumption category points: eaten — a staff meal — to the customer side too (a person consumed the food), used up — a recipe test — to scrap, the destination wastage always takes (consumed by the process rather than served to a person). The destination says what kind of departure it was; the reason code is what tells a sale from internal use within the same destination.

The row does not wait for a walk: the decomposition above is readable at any moment of the open period, so the table serves as the period's working document long before any evidence exists. A count only adds the assertion layer on top, and a row nobody has counted carries no count rather than a count of zero — absence of evidence is not a counted nothing.

Then the count arrives:

count                 the PHYSICAL count — an assertion of absolute on-hand, not a delta
variance = count − projected on-hand     the residual gap at the chosen period end

Note what the projected on-hand deliberately excludes: the count. The count is a physical assertion, not a transaction, so it is never summed into the book's projection — that would be circular. The variance is the quantity still unexplained after the recorded facts and the period corrections have been considered: over-portioning, unrecorded spoilage, theft, or another unresolved cause, reduced to one difference per item and storage location.

Acceptance approves that remaining difference as shortage or overage without asserting a more specific cause. Its sign follows the variance: a shortage is negative, an overage positive.

reconciled book      = projected on-hand + accepted correction
remaining difference = count − reconciled book

projected 100 kg, counted 94 kg → raw variance −6 kg
accept shortage −6 kg          → reconciled book 94 kg, remaining difference 0 kg

The remaining monetary difference uses the open period's current reference price. The accepted shortage retains its own value at that same price: accepting 6 kg at €2/kg leaves no unexplained difference and €12 of accepted shrinkage. Acceptance settles the quantity and evidence; its value follows the period's price until close. An overage adds quantity at zero value and never offsets the cost of a shortage. The running ledger still holds 100 kg until the close posts the accepted shortage. Once closed, the period keeps its struck price and actual correction values, including the rounding amounts assigned when the books settle.

Production input includes both what the outputs absorbed and what was lost. If a shift took 400 g and the outputs absorbed 372 g, the full departure is 400 g, of which 28 g is production loss. That 28 g explains part of the departure and is never deducted again. Write-offs account for their own departures, separately from this production loss; the input and cost relationship is taught in Recipes & production.

A subtlety on the column names. Underneath, every line above is the same primitive — a stock movement from one location to another (see Stock ledger), distinguished by where it came from, where it went, and its reason. Supplies is just the movements that ran supplier → internal; wastage is the movements that ran internal → scrap; and so on. The friendly column labels are a reporting view over the underlying movements grouped by their (from, to, reason). The labels are for human eyes; the primitive doing the work is the movement.

The accountant's two choices — the boundary and the evidence

A close rests on two deliberate choices, and both belong to the accountant.

The first is the boundary: the day the period ends. It is the only date the accountant names for that close. The period begins on the warehouse's opening date for the first close (§4), and on every later one the day after the last seal. Like the evidence below, the boundary belongs to the warehouse and everyone in the company shares it until the close seals it or someone chooses another. Until one is chosen, the boundary its cadence offers (§2) stands in for it: today while that day has not yet arrived, and never a day before the period begins.

The second is the evidence. Completeness is a claim about one moment, so the close reads its numbers from a set of forms somebody chose deliberately: one full count per storage location requiring a count (§2). There is no candidacy rule and no window — the person answering to the auditor chooses the walk they trust. The choice belongs to the warehouse, one closing seat per storage location, and everyone in the company shares it. The accountant can choose a draft or a posted full count, complete or incomplete, and retain that choice as it is corrected. Nothing quietly replaces a selected count with a newer one. Its explicit observations support the reconciliation as the work proceeds; the period can settle only when every required item is answered for. Which items and storage locations are required is a question about the boundary: an item that first arrived after the period's end is the next period's business, and a walk taken before that arrival still answers for everything the period held. A complete draft is sufficient: publication serves daily operations, not the accountant's choice of evidence.

Posting a full count supplies the closing choice when that storage location has none; it never displaces evidence already chosen. Choosing a stock count as the source of initial quantities (§4) answers a different question and does not select closing evidence.

The seat is the close's choice, not the running book's. Between closes the book stands, item by item, on the latest posted observation, selected or not (§2). The close, the reconciliation, and every preview of them read the selected counts alone. So the two can differ on purpose — a newer posted walk that was never selected moves what the cooks see, and the accountant still answers for the one they chose.

The boundary and the evidence meet in one principle. A closing form asserts at the day the period ends, whatever its own date. A form keeps its own honest date, and that date is information for the choice — it is how the accountant judges whether the walk is fresh enough to trust — but it is never a term in the arithmetic. Real life postpones counts: the storekeeper is away, and the walk that should have happened on the 30th happens on the 7th. The model accepts that honestly, the way audit practice long has. The accountant takes the form dated the 7th as the answer for the 30th and answers for that judgment; the difference is read against the book on the 30th, and the correction posts dated the 30th.

30 Jun                    1 – 7 Jul                    7 Jul
period's last day         trading, recorded            full count — keeps its
      │                   as it happens                own honest date
      ▼                                                     │
difference = counted − book on 30 Jun  ◄────────────────────┘
correction posts dated 30 Jun          July's trading is July's business

Choosing closing evidence preserves the count's own honest date: replacing it with the period end would invent a walk on that day, while trusting it openly is a stated judgment anyone can inspect. Nor is a late count ever rolled back through the movements after it — never a bridge. Had the 7 July walk been carried back to 30 June through July's journal, June's variance would depend on July's journal being complete, and June could never be final until July was; every period would wait on the next, and none would ever close. An accountant who does not trust a stale walk therefore has two honest answers, and neither is a bridge: get a fresher count, or end the period on the count's day — close through the 7th of July, and let the books answer for the 30th of June afterwards, which they do exactly once the period is sealed (§2, reading the book at a date the close did not choose).

The warehouse's initial balances answer a different question: what the books begin with at the start of the opening date (§4). Closing evidence answers what remains at the end of the chosen period. A full count supplies that evidence for a whole storage location; a spot count speaks only for its listed items.


4. Corrections and residual differences

Explained corrections established for a period

Sometimes reconciliation establishes what happened within the period but cannot establish its exact day. A period adjustment records that knowledge, its explanation, and the resulting quantity changes. Its accounting date is the period's chosen last day. This date says which period receives the correction; it does not claim that consumption, preparation, or a transfer happened that day. When the original document can be corrected accurately, that document remains the direct home of the corrected fact.

The correction belongs to the warehouse's continuing preparation for a close. Changing the boundary moves its accounting date with that boundary; replacing closing counts preserves the authored correction. Until close, its effect belongs to reconciliation and the proposed period price. Daily operational balances keep their posted facts. Closing establishes the corrected quantities and values together with any accepted residual shortages or overages.

The explanation determines the accounting effect:

Established fact Period correction
Goods consumed or wasted Remove quantity for the stated consumption or loss reason, at the period price.
Goods moved between storage locations Record one or more moves within the warehouse, preserving each item's quantity between its source and destination; its common cost pool is unchanged.
Materials transformed into another item Connect input depletion to output receipt, carrying the inputs' period cost into the output.

For example, the accountant establishes that 10 kg of raw salmon became 9 kg of cured salmon during June, but has no reliable dates for the individual batches. The period adjustment states those quantities and explains the evidence. The 10 kg leaves the raw-salmon pool and its cost enters the 9 kg of cured salmon. It does not assert an individual production session or identify an unknown cook. The treatment of normal yield loss and abnormal loss follows Recipes & production.

These corrections cover stock and counted consumables within one warehouse; counted consumables carry quantity but no inventory value. Fixed assets require their own identified-unit evidence in the asset register. The quantities determine how recorded costs are consumed or carried into another item. Purchases and their incurred costs belong to the corresponding procurement documents.

An explained correction and an accepted residual difference answer different questions. Recording a missed transformation explains where stock went. Accepting a remaining 200 g shortage settles what is still missing. The close preserves both separately, so the explanation remains available with the settled result.

Accepting the remaining count difference

A non-zero variance cannot just be erased — it has to be explained and recorded. Nothing posts by itself: whoever reconciles works each row's gap down by fixing journals or recording explained period corrections, then accepts what survives, and the close turns each accepted residual difference into a correction movement against a virtual holding place called stock-loss (a bookkeeping counterpart, not somewhere anyone can walk — the place a discrepancy goes so the two sides of every entry still balance). There are two correction kinds:

Correction The movement it posts Meaning Effect on on-hand
overage stock-loss → internal the count found more than projected +
shortage internal → stock-loss the count found less than projected (the shrinkage case) −

The arithmetic that turns a variance into an overage or a shortage:

final qty = projected on-hand − shortage + overage   the reconciled closing quantity (= the count)
check     = variance − overage + shortage            MUST land at ~0 once the row is explained

Read plainly: a positive variance (counted more than projected) is absorbed by an overage; a negative variance (counted less) is absorbed by a shortage. Once the matching correction is posted, the check lands at ~0 and the final quantity equals the physical count — the book has been forced to agree with reality. That is "count wins" expressed as movements: the count never rewrites the moves it disagrees with, it posts a correction against stock-loss, so the loss stays a quantified fact with a counterparty somebody can total and question (§8). Because the corrections exist only inside the close, there is nothing to take back beforehand: the undo for a decision made too early is unaccepting it. The corrections become part of that close's settled result. Withdrawing the close withdraws their effect together with it, while preserving the original result (§8).

A difference settles where the walk happened

A warehouse with several storage locations is walked several times: the bar, the cellar, and the satellite store each get their own count. Each of those counts settles one storage location against the book kept for it. Three walks that disagree with their books produce three corrections, each recorded against the storage location that was actually counted.

storage location     book  counted   difference   what is recorded
bar                   12      6         −6        bar        → stock-loss   shortage 6
cellar                40     44         +4        stock-loss → cellar        overage  4
satellite              8      6         −2        satellite  → stock-loss   shortage 2

The warehouse still lands four units lighter, because the warehouse figure is the sum of its storage locations — it is derived, never an endpoint a correction is posted to. What it is not is a single four-unit shortage booked against the cellar, with the other two quietly patched to match. A storage location that lost nothing must never be recorded as having lost something, and quantity must never be recorded as having moved between storage locations on evidence that says no such thing.

That honesty has a visible cost, and it is the right cost. If a porter carried six bottles from the bar to the cellar and told nobody, the two walks report a shortage of six and an overage of six where a single unrecorded move explains both — and the total volume of gross differences looks worse than the business really performed. The warehouse's value is still the net, because value is a warehouse-level figure; the gross differences at each storage location are the honest record of what the walks observed. If stock really did move, the business records the move. The system never invents one on its behalf.

A stock count that says nothing about an item asserts nothing about it. A required item nobody walked is a gap that keeps the period open (§7), not a shortage to post. An item seen only in an operational observation is not a required closing item (§2); omitting it from the chosen count creates no financial discrepancy.

Initial balances — where the warehouse's books begin

A business can begin keeping stock records with goods already on hand. Asking it to invent a lifetime of deliveries would invent history, not explain the goods. Its initial balances instead state what it owns when these books begin: quantities at each storage location and the costs those quantities carry. A priced goods receipt explains a new arrival; an initial balance explains the stock already there at the start.

The opening belongs to the warehouse, with one date for all its storage locations. It states the balance at the beginning of that day. All receipts, issues and transfers dated that day belong to the first period; earlier facts belong to the history the opening summarizes. One beginning means a relocation within the warehouse always leaves one storage location and reaches the other on the same side of the accounting boundary.

opening date: 1 June, beginning of day

before 1 June       initial balance          1 June onward
earlier history  →  stock carried in     +    every dated movement
                    by storage location      of the first period

An opening is a statement of starting stock, not a physical-count observation. Each item omitted at a storage location starts at zero there. An empty opening therefore states zero throughout the warehouse: subsequent receipts, transfers and production establish its stock in the ordinary way. An empty storage location does not need a separate document to assert that zero.

Each storage location has one basis for its initial quantities:

Basis What the opening means
Manual The operator declares the items and quantities independently.
Clean start Nothing is carried into the books at this storage location.
Stock count One chosen ordinary full stock count supplies the items and quantities.

A draft or posted full count can supply that third basis; operational publication is irrelevant to the choice. While the opening is unsettled, its quantities follow the selected count. Adding, correcting or removing an observation changes the initial quantities it supplies, including removing items the count does not name. To correct these quantities independently, the operator changes the basis to manual; while they come from a count, that count is where they are corrected. An empty selected count states zero today, while retaining its role as the source of subsequent corrections.

The source remains a full count of that same warehouse and storage location for as long as it supplies the opening. Cancelling it, moving it to another warehouse or storage location, or making it a spot count first requires a different opening source or an independent manual declaration. The starting claim remains the operator's deliberate choice throughout.

The count establishes quantity, not cost. An item's already established unit cost remains its opening cost when the count changes its quantity; a newly introduced item still needs the cost its treatment requires. Choosing that count for the opening is a declaration of starting stock, distinct from publishing it as an operational observation. A draft can therefore supply initial quantities without becoming a posted count.

The opening date and the count's own date answer different questions. The count keeps the day it was walked; the operator chooses to use its quantities for the beginning of the warehouse's books. A count made a month earlier can supply that opening, and the operator answers for trusting it. Correcting either date preserves the selected source; the warehouse's opening date determines which movements belong to its first period.

The distinction from a full count is important. An opening defines the starting claim; a full count checks the stock that should follow from that claim and the business facts. Leaving flour out of an opening means no flour was carried in. Leaving flour out of a full count when the books carried it means nobody has answered for it. The first is an explicit zero balance; the second is missing evidence.

Worked example. A warehouse opens on 1 June with 20 kg of flour worth €16 in the cellar and nothing at the bar. A 5 kg delivery to the cellar on 1 June belongs to June, so its end-of-day book holds 25 kg. A 3 kg relocation to the bar on 2 June leaves 22 kg in the cellar and 3 kg at the bar. The warehouse still holds 25 kg; both storage locations have used the same starting date.

A working opening, then a settled beginning

Until the warehouse's first close, its starting quantities, costs and date remain correctable. The running book and provisional prices follow the current opening; a correction replaces the starting claim rather than adding another arrival. Full counts are checked against that same claim (§2). If flour is added to the initial balances and an unsettled full count never counted flour, that count is incomplete, even when another full count has already observed it.

The first close settles the opening and its source counts together. Each source count becomes fixed evidence even when its own date lies outside the closed period. The initial quantities remain those the close settled. Every subsequent period inherits the preceding close's quantities and value. The initial balances stay fixed while any close remains in force: changing them would silently change the foundation of all the periods resting on them. Returning the books to their beginning requires withdrawing the dependent closes (§8). Once no close remains in force, the initial balances can be corrected again.

The costs supply the first period's value anchor, with quantities converted to the item's base unit. Positive stock and small-tools quantities need a stated cost, which may genuinely be zero; a missing cost is not a zero cost. A counted consumable begins with its quantity and no value, because its cost has already been expensed. Fixed assets take their historical cost and placement from their register, as taught in Fixed assets; the warehouse's opening date does not create or place an asset.

From the opening date, issues use the provisional price founded on the initial balances and the period's arrivals. Wastage, consumption, transfers, recipe costing and replenishment therefore share one starting claim. The opening itself is not a receipt or a second physical arrival. It states quantity and value.

Settling the history before the opening

Adoption may begin with incomplete records: deliveries entered to compare prices, sales missing, or consumption recorded before any receipt. That untracked era is the history before the warehouse's opening date. A balance requested before that date reads those original facts. From the opening date the initial balances govern, including zero for anything omitted.

The first close makes that boundary explicit. For each item and storage location it compares the earlier journal with the declared initial quantity and settles their difference immediately before the opening date. The original documents remain the record of what was entered; the settlement explains how their residue became the starting stock. It compares against the underlying journal, not against the running balance already founded on the opening, so the assertion is used once.

earlier book       what the journal claims immediately before the opening
initial quantity   what the warehouse declares at the start of the opening day

boundary difference = initial quantity − earlier book

The declared initial value is the first period's anchor. The boundary's quantity differences are valued at the price that first period strikes, except the share of an arrival that merely clears a negative earlier book, which carries no value. A pool opened at zero with no priced arrivals has no value to put on that settlement. This accounts for the earlier record separately from the period's own receipts, use and closing discrepancies.

Worked example. Before 1 June, the incomplete journal carries 100 kg of flour at €0.80/kg, minus 5 kg of rice, 30 kg of sugar at €1/kg, and no spices. The warehouse opens with 20 kg of flour at €0.80, 10 kg of rice at €1.20, and 2 kg of spices at €3. Sugar is empty. With no later arrivals to change those prices:

flour   earlier 100 kg → initial 20 kg
        80 kg to stock loss at €0.80                     −€64
rice    earlier −5 kg  → initial 10 kg
        15 kg from stock loss: 5 kg clears the deficit,
        10 kg carries the struck €1.20                  +€12
spices  earlier 0 kg   → initial 2 kg
        2 kg from stock loss at €3                       +€6
sugar   earlier 30 kg  → initial 0 kg
        30 kg to stock loss at the empty pool's €0         €0

1 June begins: flour 20 kg/€16 · rice 10 kg/€12 · spices 2 kg/€6 · sugar 0/€0
31 May boundary settlement: €46 net expense

The earlier journal's values remain attributable to their original facts; they are not added to the declared opening value. A sale dated before the opening is likewise already answered for by that starting balance. However late it arrives, it does not deplete the stock a second time. A sale on the opening date belongs to the first period and depletes it normally.

A storage location added after closing

A warehouse can add storage locations throughout its life. Once a close has established its books, a new storage location starts at zero. Stock reaches it through a receipt, production or a transfer, with the document explaining where both the quantity and value came from.

If a count finds goods there that nobody recorded, the discovery is an ordinary discrepancy, not a second opportunity to declare initial capital. For stock, an overage adds quantity at zero value; a known missing receipt or transfer is corrected at its source. Assigning a cost to the discovery would create value inside books that have already accounted for their starting stock. The accounting grounds for that distinction are taught in Costing & valuation.

Small tools and fixed assets retain their own rules (§2): a sighting does not create a valued durable unit. The missing priced document or registration explains it. A counted consumable's overage enters at zero, because its cost was already expensed and cannot be expensed again.


5. Striking the period's price — how shrinkage lands in COGS

This is the heart of the close. It is the reason the costing chapter points here: the close does not merely fix quantities, it settles what the period's stock was worth, so that the value lost to shrinkage flows into cost of goods sold rather than vanishing or hiding on the balance sheet.

(The full derivation lives in Costing & valuation; here is the part the close owns.) Weighted-average cost means every unit of an item is valued at one blended price — you don't track which physical kilo came from which delivery; you pool them and average. The close blends once for the whole period, over what the pool opened with and what came into it, and then values every movement of the period that took stock out at that one figure.

The order matters, and it is the order of the two truths the close settles. First count truth: whatever gap survives acceptance posts as an overage or a shortage (§4), so the pool's quantity now equals what was physically there. Then price truth: with the quantity honest, the price is struck and every issue of the period is restated to quantity × price — the sales, the wastage, the staff meals, the transfers out, the ingredients drawn into batches, and the count's own shortage. The survivors are worth the counted quantity at that same price, and that figure rolls forward as the next period's opening value. Even when the count matches the book to the gram, the price truth still does work: issues recorded in March at March's running estimate settle at March's final figure.

 two truths, in order
 ────────────────────
 count truth  (how much)   count ≠ book   →  overage / shortage movement
 price truth  (worth)      the period's one price  →  every issue of the period
                                                      restated to qty × price

Why this is the mechanism, concretely. Suppose the book projected 650 kg of flour but the count found only 640 kg. The 10 kg gap posts as a shortage, and it is valued exactly like a sale of 10 kg would be — at the period's price. That flour was consumed by something the book couldn't see, and that consumption is precisely part of the period's food cost. The shrinkage does not vanish and is not parked in some suspense account; it leaves the books through the same door every other issue does. §9 walks the full numbers end to end. Where that cost ultimately goes is the financial boundary: cost of goods sold — with shrinkage inside it — is one of the conceptual accounts the stock domain exports to the operator's accounting system (see Financial boundary).

What a close sends on

A transfer dispatched while this warehouse was still open left carrying an estimate, and the warehouse it went to may already have closed the day it landed. Striking this period's price restates the leg that was sent, and the difference travels to the receiving warehouse's open period as news it has yet to hear. That difference is value this period moved onto someone else's books, so it sits beside the period's own figures rather than inside them: the reconciliation of a sealed period shows what it sent on, as a single signed amount, for exactly the reason an accountant would ask — "this period is closed, so where did that euro go?"

The pricing touches pools, never the register

Everything above is about pools — the fungible stock and small tools whose value is a blend that a count can disturb. (A counted consumable's pool joins the close with nothing to price: its blend is zero by construction.) The register is deliberately untouched by all of it, on its own books as everywhere else. A close prices no asset, freezes no asset figure into the snapshot, and posts no adjustment against the register. Depreciation keeps its own calendar (see Fixed assets §4), and an asset's book value on any date is simply its cost minus the depreciation posted through that date — reproducible from the record at any moment, by anyone, without a snapshot to trust.

So what a warehouse's balance is made of depends on what it admits, and the close computes only the first two lines:

stock contour   =  stock pools           ← counted, priced, frozen by the close
                +  small-tools pool      ← counted, priced, frozen by the close
                +  counted consumables   ← counted, frozen at quantity; value zero always

asset contour   =  Σ asset book value ← derived from the register, never frozen

The division of labor is clean: the count verifies that the asset is there, and the calendar values it. Neither borrows the other's job.


6. The self-check — proving the value ties out

A close can balance perfectly on quantity and still be wrong on money. So the close proves itself a second way, with a money waterfall: the sum of every valued flow over the period must reconcile the opening value to the closing value. This is the classic accounting tie-out — the detailed item-by-item ledger (the sub-ledger) must agree, to the cent, with the single control total it rolls up into.

check (money) = opening value
              + receipts value
              + (transfers-in value − transfers-out value)
              + overage value
              + late value news
              − sales value − direct-sales value − internal-use value
              − wastage value
              − shortage value
              − closing value
              = 0

It lands on zero exactly — to the cent. The fractions of a cent a six-decimal price leaves behind are placed, never smeared (where, and why, is Costing & valuation's), so the waterfall closes precisely. Zero means zero: if the ledger and the arithmetic disagree by any amount at all, the period does not close. A check that forgave a cent would forgive the first cent of a real error too, and a warehouse's books are small enough that every cent has an explanation.

A snapshot never seals value behind stock that isn't there. A pool with nothing in it is worth nothing, and no pool carries negative value behind real stock. Where the arithmetic would leave either, the close books that money out as a price difference instead (see Financial boundary) — the waterfall counts it, so the identity still closes, and the figure is visible as an expense rather than buried in a closing balance nobody can explain.


7. Deterministic close-blockers — why a close refuses to run

A close must refuse to run while the books are inconsistent. The reasons it refuses are deterministic: they are computed, not discovered by judgment. The system enumerates every row and finds every problem — that completeness is the guarantee that no bad row slips through. The division of labor is one line:

The system enumerates the blockers → the agent diagnoses and ranks them → the operator approves → the deterministic path posts.

The blockers

The first period begins on the warehouse's opening date, so its end cannot precede that date. Its initial quantities also need the costs their accounting treatment requires (§4). A missing cost leaves the starting value unknown; an explicit zero cost is a stated value. Both the date and the value must be established before the first period can settle.

Warehouse and row-level problems, computed before any snapshot is written:

  1. A location without complete chosen evidence — a storage location whose starting stock, period activity or active assets require a full count (§2), but whose closing evidence is absent or incomplete. A known unused, empty location needs no count; an unobserved quantity in a used location is not zero.
  2. An unreconciled variance row — an item whose gap between the chosen count and the book at one location, recomputed live, is non-zero and nobody has accepted. This is the working list the accountant burns down: each journal fix melts a delta and each acceptance settles one. Its twin is a stale acceptance — an approved decision whose row's difference has moved since, including back to zero. It is answered by accepting the current difference, or by unaccepting and fetching a fresher count. The close refuses while either remains open. A small tool counted above its book is the one row acceptance cannot settle — there is no overage to post for it (§2) — so it stays open until a document explains the units, which is exactly the missing paperwork the surplus was evidence of. Two documents can: the transfer that carried the pans from wherever the book still holds them, or the receipt that bought them.

This one is judged per storage location, not on the warehouse total, and the reason is the whole point of counting one storage location at a time. Pans found at the bar and pans missing from the store net to nothing at the warehouse grain, and a total that reads zero would close the period over both facts at once — units sitting somewhere the book does not put them, and units gone from where it does. Each storage location answers for what it holds. 3. An item the count never saw — a storage location's non-zero book, of either sign, for an item its chosen count has no explicit observation of. Choosing or publishing that count does not establish its coverage. A backdated receipt or a correction to the initial balances can also introduce an item the count never answered for; the period stays open until that quantity is observed, including an explicit zero where nothing remains.

A negative book is the sharpest case. The book never refuses to record a fact, so a sale that outruns its delivery drives the pool negative and stays visible there; the guard sits here, at the close. A period must not seal a negative quantity into its closing balance, because a snapshot says what the warehouse has, and no warehouse has minus four kilos. It is judged per storage location, like a variance row, so a long sibling room never hides it. Two things answer it: the missing receipt or transfer, which lifts the book honestly, or a count that walks the item — a find that covers a deficit answers it (§4). 4. A tick the register contradicts — a chosen form ticking a unit the books place in another room or another warehouse, or one they have already written off. A tick is a sighting, and a sighting the register disagrees with is a fact somebody must answer: record the transfer the unit evidently made, record the disposal, or correct the tick. What is never allowed is a silent re-stamp of the register from a checkbox. Its sibling, a tick conflict, is two chosen forms ticking the same unit — both sightings are facts, so the walks have to be settled between people. An untick is a legitimate answer for the walk, but the unit it leaves unfound blocks all the same: a missing unit — on the books, ticked by no chosen form — holds the close until somebody produces it (a tick at wherever it stands, and the transfer follows the evidence) or disposes it. A period never seals around a serial nobody can find. The full story is in Fixed assets §7.

Period-level problems, which block the whole close because the period's consumption cannot even be computed:

  1. No recipe in force for a sold made-to-order item — the item was sold during the period but has no recipe in force on its sale date, so it cannot be exploded into ingredient consumption. Why this is a hard blocker: if a sold made-to-order item silently exploded to zero consumption, its ingredients would never deplete, theoretical usage would understate, and the variance would be quietly wrong. The close must refuse rather than publish a recipe-less zero.
  2. Unresolved sales line — a held line within the period whose answer is still missing: an unmapped till or delivery-platform name. The first period includes the opening date itself. These are surfaced for resolution, never silently zeroed (see Sales & consumption). Until resolved — or the ticket that carries them withdrawn — they block the close.

  3. An unfinished recipe build — a required choice is unanswered or the saved choice no longer fits the dated recipe, on a sale, an internal use, or a write-off of a made-to-order item. An internal use's or write-off's question belongs to its restaurant's consumption warehouse — or, when its line names a location, to that location's warehouse. The missing choice refuses the close until someone makes it, whatever the line has already spent. Optional empty slots and genuinely empty recipes are complete. A question dated on or before the closed-through day, or, before the first close, before the warehouse's opening date, does not block a later close. A menu default never supplies the missing choice on the accountant's behalf.

The close computes the full list of problems first and stops if any exist. Only a clean enumeration proceeds to write the period snapshot.

The three roles, and why they're split this way

  • The system enumerates (deterministic). It computes the reconciliation for all warehouses and runs the warehouse and row checks, producing the complete set of blockers plus the count of period-level problems. This is the coverage guarantee: the list of what blocks the close is computed, never guessed.
  • The agent diagnoses and ranks (advisory). When there are blocked rows but no period-level problems, the agent — Dough — explains and prioritizes them: "these three rows probably point to one missing transfer; fix that first." It produces an explanation, never a posting. If the period itself can't be computed (a recipe-less sold item or an unresolved sales line), there is nothing to rank, so the agent stays out of it.
  • The operator approves; the deterministic path posts. The reconciliation proposes the exact corrections (overage / shortage); accepting a row is the approval made explicit — the accountant approves a row or a set of rows, and the close re-verifies every one of them, posts exactly those residuals, and writes the snapshot. The agent's diagnosis is input to the operator's decision — never the decision, and never the write.

This is the same discipline the whole product follows: the deterministic engine owns correctness and completeness, the agent owns explanation and ranking, and the human owns approval. Numbers that affect the books are never narrated into existence by an agent.


8. Returning a closed period to reconciliation

A close establishes a settled result. While it remains in force, documents inside its dates stay settled and late facts belong to the open period, as taught in Stock ledger. A period reopening deliberately withdraws that close so its span can be reconciled again. This answers an accidental close, a mistaken reconciliation, a decision to settle a different interval, or a goods receipt inside the span that must be corrected (Stock ledger §6).

The dependent closes belong to the decision

Each closing balance supplies the next period's opening balance. Only the latest close still in force in a warehouse can return to reconciliation. To return an earlier period, the accountant withdraws its successors one at a time, newest first. Four weekly closes can therefore return through four separate decisions, leaving no settled period resting on a balance already withdrawn. The time elapsed since closing does not decide which periods can return; their dependencies and the evidence do.

The return is confined to one warehouse. The span being reconsidered, including its dependent later movements, must be free of transfers to or from another warehouse and of value adjustments that connect their books. Such a transfer carries a value the other warehouse has used, even when its period is still open. A move between storage locations of the same warehouse stays within this boundary.

Withdraw the settlement; retain what happened

Reopening withdraws the effects of closing: its overages and shortages, the period price, and the closing balance used to begin later periods. Receipts, sales, wastage, production, and movements between storage locations remain business facts. Their provisional values are recomputed against the boundaries that remain. A late sale is reconsidered from its original facts, so an adjustment carried forward only because of the withdrawn close does not survive alongside the same fact in the reopened period.

Locations archived on the strength of that settlement return to use in the same decision. Their movements become editable again and their zero is no longer settled; they can be archived again only after the new reconciliation settles them at zero. Locations whose settlement still stands retain their archive.

The selected counts become editable again, retaining whether each was a draft or posted observation. The close's withdrawal does not publish an observation that the operator had kept as a draft.

If the first close is withdrawn and no close remains in force, the warehouse's initial balances, opening date and source counts are correctable again. The count-backed initial quantities follow their selected sources again. Initial balances supply the provisional starting claim for all storage locations. A correction recomputes the open book and the completeness of unsettled full counts; their closing selections remain the accountant's choices. Closing again settles that opening once, not as a second arrival. Asset purchases, disposals and depreciation remain their own facts throughout, since a period close did not create them.

Resume the work and preserve its history

The return retains the exact dates and counts the accountant chose, the quantities entered, and corrections already made to the source documents. An original approval returns wherever its row still shows the accepted difference (§3), taking the place of a later decision that no longer does; where the difference has moved, the row reopens as a difference awaiting acceptance. A later count does not silently replace the count the accountant chose. With several closes returned, reconciliation resumes from the earliest one; each later selection remains available as the record of that close's work.

The reversed close remains historical evidence: its original result, counts, decisions, and valuation are preserved, together with who reversed it, when, and why. It no longer supplies current balances. Closing again establishes a replacement close with its own result and a relationship to the closes it replaces. An auditor can distinguish what was originally concluded from what was subsequently corrected. If the evidence cannot establish which effects belong to a close or how the retained facts must be treated, the period remains closed; missing history is not permission to guess.

Four weeks and one month are different averaging intervals

Returning four weekly closes permits one monthly close from the same business facts, the chosen opening, and the final physical counts. The intermediate counts remain observations; the shortages and overages created by their withdrawn closes no longer act as independent events in the month. A remaining month-end difference is settled from the month-end evidence.

The new result is what a direct monthly close would produce from those same facts. It need not reproduce the sum of the old weekly costs. With no opening stock or count differences, buy 10 kg for €100 and use 8 kg in the first week, then buy another 10 kg for €200. Weekly closing prices the use at €80 and leaves 12 kg worth €220. One monthly average is €15/kg: the same use costs €120 and the same 12 kg is worth €180. Both account for €300; changing the averaging interval changes how that value is divided between consumption and stock.


9. Worked example — a period with a count shortage

One warehouse — the kitchen store, the one that supplies the kitchen station — one item, flour, for the month of June. All quantities in kg (the base unit); money in the company currency (euros here).

Opening (rolled forward from May's close):

  • opening qty = 200 kg, opening cost = €0.80/kg, so opening value = €160.00.

Movements posted during June:

Flow Movement Qty (kg)
supplies (one receipt) supplier → kitchen store +500
transfers in — 0
transfers out — 0
sales (dishes, exploded to flour) internal → customer −40
internal use (staff meals, an eaten category) internal → customer −3
wastage (a spilled bin) internal → scrap −5

The receipt's net value (its landed cost, after freight and non-recoverable tax — see Costing & valuation) is €424.00 for the 500 kg, so the receipts value = €424.00.

Step 1 — Projected (the book's claim).

projected on-hand = opening + supplies + transfers in − transfers out
                    − sales − direct sales − internal use − wastage
                  = 200 + 500 + 0 − 0 − 40 − 0 − 3 − 5
                  = 652 kg

The book says 652 kg of flour should be on hand.

Step 2 — The count (the observation). On 30 June the storekeeper walks the bin and writes 640 kg. The count covers what the books require and moves nothing; the accountant later names it as the room's evidence for the 30th.

count    = 640
variance = count − projected on-hand = 640 − 652 = −12 kg

The book is 12 kg short of reality — flour the system was never told about (over-portioning, uncounted spillage, trim, theft). Count wins.

Step 3 — Reconcile the row and accept it. The variance is negative. The accountant checks the journals — no missing transfer, no unposted receipt — and accepts the row at −12 kg. The close then posts a shortage of 12 kg (an internal → stock-loss movement, dated 30 June):

shortage  = 12
final qty = projected on-hand − shortage + overage = 652 − 12 + 0 = 640 kg   ✓ equals the count
check     = variance − overage + shortage = −12 − 0 + 12 = 0                  ✓ row reconciled

The check is 0 and the final quantity is 640 — the book now agrees with what is actually there.

Step 4 — Strike the period's price.

period price = (opening value + what came in) / (opening qty + the qty that came in)
             = (160.00 + 424.00) / (200 + 500)
             = 584.00 / 700
             = €0.834286 / kg

Everything that left the pool in June — the sales, the staff meals, the wastage, and the shortage the count has just settled — is valued at €0.8343/kg.

Step 5 — Where the shortage lands in COGS.

sales         40 kg × 0.834286 =  €33.37
internal use   3 kg × 0.834286 =   €2.50
wastage        5 kg × 0.834286 =   €4.17
shortage      12 kg × 0.834286 =  €10.01  + the pool's last cent  →  €10.02
closing      640 kg × 0.834286 = €533.94

The 12 kg the count could not find is worth €10.02, priced exactly as a sale of 12 kg would be. That value is not carried forward as an asset and not parked anywhere: it leaves inventory as part of the period's cost of goods sold. That is how shrinkage lands in COGS — the missing flour is issued like anything else, and the issue is what makes it cost.

The stray cent is the rounding a six-decimal price leaves behind when it is multiplied out across five figures. Rather than smear it, the close puts it on the period's last ordinary issue of the pool — here the shortage, dated the 30th — so the sum below closes exactly instead of nearly.

Step 6 — Self-check (money waterfall).

160.00 (opening) + 424.00 (supplies) + 0 (transfers)
 − 33.37 (sales) − 2.50 (internal use) − 4.17 (wastage) − 10.02 (shortage)
 − 533.94 (closing)
 = 0.00

The row ties out to the cent: opening value, plus what came in, minus everything that went out (the shortage included), equals the closing value. The close is balanced.

Step 7 — Roll forward. July opens with an opening qty of 640 kg and an opening cost of €0.834286/kg (June's closing price). Value is conserved across the boundary; June's €10.02 of shrinkage has already become June's cost of goods and does not haunt July.

Step 8 — Restaurant attribution. The 40 kg of sales were internal → customer movements, each stamped with the restaurant that sold the dish (the 3 kg of staff meals — internal use under an eaten category — went to the customer side the same way, because a person ate the food). The flour's cost was computed once, at the kitchen store (€0.8343/kg); the attribution of 40 × 0.834286 = €33.37 of flour cost rides on those movements into whichever restaurant earned the sales. §10 explains why this is a re-slice, not a second valuation.


10. Restaurant P&L — a profit-center roll-up, not a second valuation

Profit-and-loss is computed at the restaurant grain, while valuation stays at the warehouse grain (see Scope & locations). A profit center is simply a part of the business whose profit you measure on its own — here, a restaurant. This separation is what lets one commissary feed two restaurants and still produce two correct P&Ls.

The rule:

The stock-cost part of a restaurant's P&L rolls up the value of consumption movements stamped with that restaurant — never a second place where stock is valued.

Mechanically, every consumption movement carries both a warehouse (whose cost pool it depletes, and therefore what it cost) and a restaurant (whose P&L it lands in). To produce a restaurant's cost of goods for a period, sum the money of the consumption movements stamped with that restaurant. There is no separate per-restaurant average cost; the cost was set once at the warehouse, and the restaurant only attributes it. The company roll-up is the aggregate over its restaurants (and, for the inventory balance sheet, over its warehouses) — never a separately valued grain.

This is why the close runs per warehouse but the P&L reads per restaurant. The warehouse close establishes what things cost and what is on hand; the P&L roll-up re-slices that already-costed consumption by who earned the sale. The two reports are computed from the same movements at two different grains, and neither double-counts the other. (The worked commissary example in Scope & locations shows two restaurants drawing the same dough cost into two independent P&Ls.)

Revenue and commercial expenses come from the sale's classified financial statements, on each statement's own business date. A late commission or refund therefore appears in its own reporting window without moving the original stock cost. Tax, tips payable and pass-through collections stand apart from revenue; estimates and unclassified amounts stand apart from confirmed totals. See sales and consumption for the classification boundary.

The resulting contribution is known revenue less known consumption and commercial costs. It is not a complete company profit figure: payroll, rent and other books remain outside this report. Missing financial statements, incomplete customer or settlement amounts, and unresolved stock lines each keep that contribution provisional. Resolving a stock name does not certify missing money.


See also

  • Costing & valuation — the one price a period carries, landed cost, the net-vs-gross feed, and what becomes of a transfer's value news that arrives after a period seals; the value side of everything above.
  • Financial boundary — the conceptual accounts the close's results export to the operator's accounting system: cost of goods sold (food and packaging buckets), shrinkage within it, and the price-difference expense.
  • Scope & locations — warehouse (valuation and close grain) vs restaurant (P&L grain), the consumption warehouse selection, and which warehouse a depletion lands in.
  • Sales & consumption — how sales become the consumption movements the close totals, the hold of unmapped sold names, and the late-sale rule.
  • Stock ledger — the movement primitive every figure is built from, and the close boundary that separates correcting from carrying forward.
  • Recipes & production — production, the storage location a batch draws its inputs from, and the schedule move that puts a wrong-recipe journal right.
  • Procurement — receipts feeding the supplies line, and the order ↔ receipt match with its own price tolerance, distinct from the close self-check.
  • Item model & policies — which items appear on a count at all, and how each accounting treatment is counted and verified (consumables are excluded entirely; a counted consumable settles at zero; a small-tool surplus is recorded but corrected only by a priced receipt; a fixed asset is confirmed against the register, never added to it from a sheet).
  • Fixed assets — the asset register the roster confirms, the depreciation calendar the close never touches, the transfer that moves a unit from one warehouse's books to another's, and the missing unit a period will not seal over.
  • Units of measure — the convert-to-base rule every reconciliation quantity depends on.
  • Glossary — the recipe, its active-from date (which the recipe-less blocker checks), warehouse, restaurant, item, and unit vocabulary.
Last updated · History