KashBI

Cash flow scenarios: what if your best customer pays late?

How to build base, prudent and optimistic scenarios, run a simple stress test and act in time when a big customer slips to 60 days.

You are going to close the month with €60,000 in the bank and nobody is losing sleep. The big order will be paid on time, the bank is reconciled and payroll goes out on schedule. Then on a Monday you get an email from the customer that accounts for 30% of your revenue: “from now on we are going to pay with a two-month delay.” Your spreadsheet still looks green at seven days out. At six months, it does not.

Cash flow scenarios exist for this. To know, before it happens, how much your cash gets squeezed when one of today’s assumptions becomes tomorrow’s actual problem. A scenario is not a prediction with decimal places. It is a useful question with the arithmetic done. “What happens if…?” with a number at the end.

What a cash flow scenario really is

A scenario is the same 6 or 12 month cash forecast with a different assumption. You change two or three things (how one customer pays, the pace of sales, a new hire) and recompute the balance month by month. You do not touch accounting. You change nothing in Odoo. You change the assumption and look at the ending balance.

It is worth keeping at least three:

The common mistake is to work only with the base and improvise when a hit arrives. A prudent scenario drawn today takes half an hour. A loan asked for in panic costs more and comes on worse terms.

The levers that actually move cash

In a small business, a handful of levers show up on next month’s bank statement when they move. The rest is noise.

More exist (quarterly VAT, annual insurance, year-end bonuses) but they already live in your base if it is clean. If it is not, before building scenarios learn how to build a cash flow forecast from scratch.

Base, prudent, optimistic without getting lost

A scenario that moves fifteen levers at once is useless. Rule: each scenario moves one or two levers, not five. The goal is not to predict the future, it is to isolate a threat.

A layout that works:

  1. Base: your current forecast with the payment dates you have in Odoo.
  2. Prudent A: the big customer pays 60 days late for four months.
  3. Prudent B: revenue drops 15% for two months of next quarter.
  4. Prudent C: two new hires start in April.
  5. Optimistic: you close that prospect (€12,000 extra monthly revenue from May).

Twenty minutes if your base is clean. If not, review overdue invoices, old balances and missing recurring payments first.

Worked example: a customer worth 30% paying 60 days late

A services firm invoices €100,000 a month: €30,000 to one big customer, €70,000 across a book of smaller ones. Fixed costs (payroll, employer taxes, rent, utilities, recurring suppliers): €85,000 a month. Opening cash: €60,000.

Base: everyone pays the month after invoicing. The balance grows €15,000 a month.

Stress: the big customer announces 60-day payment. Nothing else changes. The January invoice, which in the base would have been collected in February, lands in April. The February one lands in May. For two months you collect €30,000 less than in the base, so you lose €15,000 a month instead of gaining it.

Month Collections base Collections stress Payments Balance base Balance stress Gap
0 0 0 0 60,000 60,000 0
1 100,000 70,000 85,000 75,000 45,000 -30,000
2 100,000 70,000 85,000 90,000 30,000 -60,000
3 100,000 100,000 85,000 105,000 45,000 -60,000
4 100,000 100,000 85,000 120,000 60,000 -60,000
5 100,000 100,000 85,000 135,000 75,000 -60,000
6 100,000 100,000 85,000 150,000 90,000 -60,000

Two readings people often miss:

  1. The deepest hole is not the permanent loss. The lowest point is €60,000 below base at month 2. From month 3 the monthly flow matches the base again, but the balance stays €60,000 below base forever: two months of the big customer’s invoice got pushed off the cliff.
  2. The real risk is what you cannot see. If month 2 was supposed to carry a €50,000 investment payment, the stress balance drops to -€20,000. The scenario tells you before you get there.

Run it with your own numbers. If the stress balance touches your floor, or goes below zero, you have a decision to make before that month arrives.

The simplest stress test you will run

Push three changes into your forecast at once:

Look at the worst month. Touches zero: short on buffer. Below zero: short on financing. Doing this once a quarter does more for peace of mind than any dashboard polished to the pixel.

Decisions that come out (and when to take them)

What you see with time, you negotiate. What you see late, you improvise. If treasury lives in a spreadsheet and reworking the scenarios eats two afternoons of formulas, move to a tool that compares scenarios side by side and keeps the numbers in sync with Odoo data. Kashbi runs them on top of your real forecast, with confirmed sales orders, estimated taxes and recurring payments already in.

With scenarios in place, the next thing is tightening the short window: the 13-week cash flow forecast is where the game is played, and the treasury KPIs an owner tracks every week tell you whether your collections policy is working.

Frequently asked questions

How often should I review scenarios?

Once a month is enough for a stable small business. At a turning point (product launch, losing a large customer, a rate hike) refresh the base every week.

How many scenarios are too many?

Three is the useful minimum, five the comfortable maximum. If you are tempted to go to eight, you are probably mixing different levers in the same scenario. Separate them and go back to three.

Should I show the stress scenario to the bank?

Yes, if you are asking for financing. A bank manager appreciates seeing the prudent scenario alongside the request: it saves work and builds trust. What they do not want is an optimistic scenario sold as reality.

What minimum balance should I set?

One month of fixed costs as a floor, two as a comfortable target. In businesses with strong seasonality or customer concentration, two months as the floor. It is the level below which you start deciding against the clock.