Case study Wholesale & distribution Berlin · EUR · VAT 19 %

The order was worth €73,784. It also had twelve days where the bank would have said no.

How a drinks wholesaler used day-by-day cash modelling to keep a Net 60 contract — and what the model said about five different ways to pay for it.

Every distributor knows this moment. A tender comes in that is bigger than anything you currently ship. The margin is good. The customer is solid. And then you read the terms: payment sixty days after delivery.

You will buy the goods in October. You will pay your supplier in November. The money arrives in December. Four times over.

The profit-and-loss account says yes. The question is whether the bank account agrees, and on which specific days it does not. That is not a question a spreadsheet answers well, because the answer is not a monthly total — it is a Friday.

What follows is a worked example on a real dataset, run in Golden Inventory. Every figure came out of the app; nothing is illustrative.

The company

MetroFresh Distribution, Berlin. A B2B drinks and dry-goods wholesaler running two locations and four staff, serving five standing customers on weekly and monthly routes. It charges 19 % VAT on a trade price list and files a monthly return (UStVA), paid on the 10th of the month after.

Position on 12 September 2026
Cash in the bank€28,550
Agreed overdraft (Kontokorrent)€15,000
Standing costs, eleven rows€11,300 / month
Wage bill€14,200 / month
Revenue, next 170 days, net of VAT€421,969
Projected profit€25,352
VAT paid to the tax office in the window€32,360
Lowest projected cash+€4,476
Days below the agreed limit0

Comfortable is the wrong word. Solvent, and thin. The lowest point falls on 28 September — payroll day.

The tender

Hotel Central Group puts its conference-catering supply out to tender. MetroFresh wins it. Four monthly drops — 15 October, 15 November, 15 December, 15 January — of €50,502 each at volume prices, €60,097 with VAT. €202,008 of new revenue. The condition of the contract is Net 60.

Accepting it is not only a sales decision. To ship a 900-case water drop on top of the weekly routes, the warehouse has to carry more stock, so the reorder levels on twelve lines go up. That stock has to be bought, and the two suppliers who carry those lines are on Net 30 and Net 45.

Buy in October. Pay the supplier in November. Get paid in December. Four times, overlapping.

And the VAT on each drop falls due on the 10th of the month after it ships — a month before the customer pays it.

Run one — accept it and change nothing

One screen, three fields: where to start, how far to look, what is in the bank that morning. Everything else the run takes from records that already exist — the orders, the vendors' terms, the reorder rules, the standing payments, the VAT settings.

The simulator panel: start 12 September 2026, run until 28 February 2027, money on that day 28,550, and two switches, above a line reading Reads 22 purchase orders, 96 sales orders, 9 repeating, 6 expense orders, 20 items that reorder, 57 planned payments.
The line under the button is the run telling you what it is about to read. Nothing on this screen changes a record.

The run plays 170 days forward in under a second. Here is the answer.

Daily cash balance chart from September to February. The line rises and falls, with two clusters of red points dropping to minus 29,929 in November and December.
Cash balance, day by day. Red marks every day the account is overdrawn.

Run — tender accepted, nothing else done

Opening cash
28,550.00
Closing cash
67,880.27
Lowest
−29,928.962026-11-20
Orders shipped
960 deferred

Closing cash is higher than opening cash. Profit is €99,136 — nearly four times the pre-tender figure. Every one of 96 orders ships on time.

And the line goes through the floor twice.

A panel headed Cash you have to cover, measured against your agreed overdraft of 15,000. The largest single shortfall is 14,928.96. Two rows: 18 to 23 November, six days, lowest minus 29,928.96, short by 14,928.96; and 8 to 13 December, six days, lowest minus 28,367.54, short by 13,367.54.
Twelve days past the agreed €15,000 overdraft. At the worst point MetroFresh needs twice the facility it has. An unarranged overdraft of that size is a phone call from the bank, a returned direct debit, and a supplier who now wants payment in advance.

The monthly view hides it completely

Monthly cash flow table with a Taxes column. The November row shows net minus 36,225.08 and a closing balance of minus 251.66; taxes paid are 4,186.23 in October, 6,071.45 in November and 8,264.87 in December.
November closes at −€252. On a €15,000 facility that is a rounding error. A monthly cash-flow forecast would have called this contract comfortable.

A month has a closing balance. A business has Fridays.

Sort the day log by balance and the worst days come to the top, with the documents that caused them.

The day-by-day log sorted ascending by balance. The top rows are 20 November at minus 29,928.96, naming Marketing agency retainer and AUTO-SN-NUTS12, then 10 December, Tax paid, VAT 2026-11, 8,264.87, at minus 28,367.54.
The 20 November low is not the contract directly. It is paying for the stock the contract needed — six Rhein beverage orders on the 18th, then AUTO-SN-NUTS12, €4,070 with VAT — next to an ordinary €1,100 marketing retainer, three and a half weeks before the first contract payment arrives on 14 December.

October's VAT return, €6,071, left the account ten days before that low. The December gap has a tax date in it too: November's VAT, €8,265, is due on 10 December, in the middle of the second trough.


First, what does not work

Before spending money on a solution, it is worth pricing the free one. “Just pay late.” The app has a switch for exactly this — Do not pay if there is no money — which holds each payment until the balance can cover it.

Run A — hold what the bank cannot cover

Lowest
−14,976.36
Days below limit
0
Profit
99,136unchanged
Payments held
8on 25 days

The hole closes. The profit and loss account does not move by a cent, because the cost of November is a cost of November whether or not the bank moved. That invariant is what makes the two runs comparable at all.

The day log names the price.

The day-by-day log for the hold run, sorted by balance. Several rows read Payment held, naming Contract cleaning - depot, VAT 2026-11, AUTO-SN-CHOC24 and AUTO-DR-OIL12.
Eight held payments. The cleaning contractor. Six separate replenishment orders. And November's VAT return, held from its due date on 10 December to the 13th. The tax office is not a supplier you can ask for patience. The model does not price that damage — but it names every payment, so you can decide whether you are willing to spend it.

A stopgap, not a plan. Now the real levers.

Five levers, measured one at a time

Each row below is the same company, the same contract, the same 170 days, with exactly one thing changed.

One variable at a time · 12 Sep 2026 – 28 Feb 2027
Change Lowest cash Days below limit Worst shortfall Profit
Accept, change nothing−29,9291214,92999,136
A — Hold payments the bank cannot cover−14,976099,136
B — Rhein Beverage Bottlers to Net 60+4,476099,136
B — Rhein to Net 45 only−27,322612,32299,136
C — Seven “non-essential” lines bought to order−33,7212018,72187,529
D — Three outside services paused−26,739911,739108,706
E — Four standing costs cut−29,0791214,079101,656

B — Supplier terms are the most powerful thing on the list, and they are free

One vendor. Rhein Beverage Bottlers carries the beverage lines, which is most of the contract by volume. Moving them from Net 30 to Net 60 solves the entire problem on its own — the trough returns to +€4,476, exactly where it was before the tender, and closing cash improves by €34,977.

Nothing was borrowed. Nothing was cut. The payment terms simply match the terms MetroFresh itself was forced to accept.

Note the row under it, though. Rhein at Net 45 — a much more likely outcome of a real negotiation — closes the November gap and leaves December's: six days and a €12,322 hole, with the VAT payment inside it. The lever is sensitive to exactly where it lands, which is worth knowing before the meeting rather than after it.

C — The obvious saving that costs more than it saves

Here is the finding that justifies running the model at all.

Deferring stock on seven lines the contract does not touch — pasta, rice, beans, chocolate, soap, flour, crisps — looks like free working capital. Stop filling the shelf with them; buy them only when an order needs them.

It makes everything worse. Twenty days below the limit instead of twelve. An €18,721 shortfall instead of €14,929. And €11,607 of profit gone.

The day log explains it. 61 of the 96 deliveries wait for stock, and the run records 416 daily “still waiting” entries against them, concentrated on five documents and led by the weekly routes. Four never ship before the window ends. Four deferred lines do the damage — crisps and flour sit on the weekly routes, beans and soap on the monthly ones — and an order that is short one line does not ship at all.

Stop stocking the crisps, and you stop delivering to the kiosk. Revenue falls €30,409, profit €11,607, and the cash position gets worse, not better. No spreadsheet catches this, because a spreadsheet does not know which items are on which order.

D and E — Real, and not nearly enough

Pausing the IT retainer, the marketing agency and the depot cleaning from November to January stops €9,570 of payments and adds all of it to both cash and profit. Trimming four standing costs — a software tier, the bookkeeper, fuel, the insurance excess — adds another €2,520.

One detail worth having: the app does not pause “the 15th”. It pauses the occurrence, on the working day the schedule actually falls — the November IT retainer is the 16th, because the 15th is a Sunday. Three of the nine occurrences in this season shift like that. Hard-code the dates and you under-count by €3,190.

Both levers help. Neither closes a €14,929 hole on its own, because the hole is a timing problem and these are run-rate savings. Together they take the shortfall to €10,889 — useful, and not the answer.

F — The loan: how much, and exactly when

A working-capital line is a question, not a record, so it goes on the what-if lane. It reaches a projection only when the run is explicitly asked for it.

The what-if lane on the simulator page, showing one row: loan, Working-capital line - Sparkasse offer, 2026-11-16, 15,000.00 in, then 24 times 662.50 every month.
“A cost you are thinking about. It is in no report, no balance and no statement, and a simulation holds it only while this switch is on.”

How much? On its own, drawn on 18 November, €15,000 is just enough. It brings the trough to −€14,929 — €71 inside the agreed facility — and clears both gaps. €20,000 leaves €5,071 of room. €40,000 puts the trough back to +€4,476, and costs the most.

How late can it be signed? This is the one worth knowing.

€15,000 line, 24 monthly repayments of €662.50
DrawnDays below limitRepaid in this window
1 October1fails by €591
18 November0€1,987.50
19 November1fails by €5,090
1 December6fails by €14,929

18 November is the safe day. Draw on the 19th and a €5,090 hole opens — six beverage orders are paid on the 18th, one day before the money arrives. Draw early and it fails too: signed on 1 October, the first €662.50 repayment leaves on 1 November, and the trough misses the limit by €591.


The plan MetroFresh actually ran

Not one lever. Four, in the order of what they cost.

Cumulative — each step adds to the one above it
Step Lowest cash Days below Shortfall Closing cash
Accept, change nothing−29,9291214,92967,880
1. Rhein negotiated to Net 45−27,322612,322102,857
2. + three outside services paused Nov–Jan−23,49268,492112,427
3. + four standing costs cut−22,11267,112114,947
4. + €15,000 drawn 16 November−7,1120127,960

Run — the plan

Opening cash
28,550.00
Closing cash
127,959.85
Lowest
−7,111.652026-12-11, inside the facility
Orders shipped
960 deferred
Daily cash balance chart under the plan. The line climbs to 142,541, with one short cluster of red points in December at minus 7,112.
One short red stretch left on the chart, around the November VAT payment, at worst −€7,112 — comfortably inside a €15,000 facility. The run has nothing left to warn about: the Worth knowing panel does not appear.

What it was worth

Decline the tender Accept, no plan Accept, with the plan
Revenue, net of VAT€421,969€623,977€623,977
Profit€25,352€99,136€111,226
VAT paid in the window€32,360€36,760€36,760
Closing cash€70,308€67,880€127,960
Days past the overdraft limit0120

Accepting without a plan ends the window with less cash than declining.

Against declining the tender: +€85,874 of profit. Against accepting it and improvising: +€12,090 of profit and +€60,080 of cash, and twelve fewer days of explaining yourself to a bank.

The borrowing needed was €15,000, not the €40,000 an anxious owner would have asked for — and the difference between signing on 18 November and signing on 19 November was the difference between a plan and a shortfall.

What the model does not do

Any forecast that does not state its limits is marketing, so:

The point

MetroFresh's contract was never a bad deal. It was a good deal with a twelve-day hole in it, and the hole was invisible at monthly resolution, invisible in the P&L, and invisible in the bank balance until the week it arrived.

Finding it took under a second. Testing five ways to fix it took an afternoon — including the one that would have made everything worse.