In many Belgian SMEs, the cash position has a filename. It usually ends in _v4_final_OK.xlsx, it lives on one person's machine, and nobody else really dares to touch it. That file is not a sign of negligence: it is a rational answer to an urgent need, built by someone who knows the business better than any software does.
So the problem is not that it exists, but that it is still carrying the cash position three years later, while the company itself has changed. At doo.FINANCE, we open that file on almost every first cash management engagement. It is often well built, sometimes brilliant. And it still costs three very concrete things: re-entry time, a permanent gap with the real bank balance, and decisions taken too late. Here is why the spreadsheet always wins at the start — and why it always loses afterwards.
Why the spreadsheet always wins at the start
Nobody chooses Excel to manage their cash position: you end up there, because at the moment the question comes up, it is the only answer available. The spreadsheet has three advantages no tool can take from it at the outset:
- It is free and already there. No budget to defend, no contract, no line item to justify to your business partner.
- It is immediate. No project, no requirements document, no steering committee. A blank sheet, an hour, and the question "will we get through the month?" has an answer the same evening.
- It matches the mind of whoever built it. One tab per bank, a colour for what is uncertain, a line reading "Janssens deposit – to be confirmed", a VAT provision for the quarter. No standard configuration produces that level of detail.
That third point is decisive, and almost always misunderstood. The strength of the spreadsheet is not technical, it is cognitive: it does not model your sector, it models your company, as seen by the person who runs it. That is why it wins — and exactly why it will lose.
In a Belgian SME, that file often has one more particularity: its column headers mix French and Dutch, because it has been handed over twice, by two different people. Nobody complains about it as long as its author is around to read it.
And why it always loses afterwards
It dies the day its author goes on holiday
Try it: hand the file to somebody else for two weeks of leave, with no commentary.
The questions arrive within hours. What does the column "expected at 60 d" mean — 60 days after the invoice, or after month end? Is the quarterly VAT already in the outflows? Does the line in orange mean "not yet invoiced" or "invoiced but doubtful"?
Those rules exist and they are sound. They are simply written down nowhere: they live in their author's head. The risk is not that the file is wrong — it is usually very accurate. The risk is that it becomes unreadable as soon as it changes hands, which is precisely the moment the company needs it most: holidays, illness, departure.
It does not know where its figures come from
A spreadsheet keeps no link back to the source document. A pasted value is an orphan: no invoice, no negotiated due date, no modification history.
As long as everything is going well, that has no consequence. The day a figure is disputed — with the bank, or simply between business partners — nobody can trace it back to the document without reopening the accounts. The discussion then stops being about the decision to take, and becomes a discussion about how reliable the file is.
It grows faster than the company
One more major client, invoicing in a foreign currency, a second company: every new development adds a column, a tab, a formula that references the previous one. That is the paradox of the tool — the more the company succeeds, the more fragile the spreadsheet becomes, and the less anyone dares to rebuild it.
What the spreadsheet really costs: three lines
Plenty of articles will tell you how many hours a month "SMEs lose" with their spreadsheet. We will not: there is no recent, verifiable Belgian study putting a figure on that cost, and a European average tells you nothing about your own company. What the cost does show up on is three lines you can measure in your own business this week.
One point on scope: this article is about the tool. The warning signs of a cash position under strain — DSO lengthening, projected balance diving, dependence on a handful of clients — are covered in a separate article on our French site, under a different legal framework. The question asked here comes earlier: what are you looking at those signals with?
1. Re-entry time
In an SME running on a spreadsheet, every euro appears twice: once in the accounts, once in the file. Bank statements pasted then reclassified, supplier invoices re-entered with their due dates, salaries and VAT added by hand.
How to measure yours: time the weekly update once, from downloading the statement to the "projected balance" line. Multiply by 52. That figure is yours, and it is worth more than any sector average.
That time costs twice over: it is almost always consumed by the most qualified person on the team, the one you were expecting analysis from — not data entry.
2. The gap between the spreadsheet balance and the bank balance
That gap is never nil. A partial payment, a credit note, a forgotten direct debit, bank charges, an invoice settled in two instalments: every week adds its own divergence.
The gap in itself does not matter much. What it triggers matters a great deal more: past a few hundred euros, nobody quite believes the file any more. And a forecast nobody believes in is no longer used to decide — it is used for reassurance. That is the most expensive shift, and the quietest.
How to measure yours: one Monday morning, compare the "balance" line in your spreadsheet with the real balance on your accounts. Note the gap. Do it again the following Monday. If the gap grows instead of closing, your file has stopped being an instrument of measurement.
3. The decision taken too late
This is the most expensive line, and the only one that appears on no invoice.
A typically Belgian example. Since 1 February 2022, the payment term between businesses is 30 calendar days where no contrary agreement exists, and it cannot exceed 60 calendar days — the Act of 14 August 2021 amended the Act of 2 August 2002 on late payment to that effect. The period for verifying the goods or services is now included in that term, and can no longer be used to extend it.
The practical consequence: a client who pays at 58 days is within their rights. They will not appear on any overdue list, no reminder will be triggered — and they still weigh on your cash position. That strain is predictable, provided the real due dates are visible somewhere. In a spreadsheet updated "when there is time", they are not.
What gets paid then is not a penalty, it is something given up: an investment postponed that could have been financed, a hire frozen one quarter too long, a credit line negotiated under pressure — and therefore at the worst possible price.
What changes when the cash position is run in the ERP
The argument is not that "the ERP does it better", but that three tasks stop being human work.
Bank reconciliation stops being data re-entry
In Belgium, the banks make available CODA, an electronic XML format designed for importing account statements. In Odoo, those files are imported from the bank journal; through CodaBox, they are even retrieved automatically every 12 hours.
Once the transactions are in the system, reconciliation models take over: Odoo's documentation is explicit — thanks to them, the ERP automatically preselects the matching entries. People arbitrate the ambiguous cases instead of processing the obvious ones. We go through that configuration in our article on automating bank reconciliation with models.
That is where the change of nature lies: the bank balance is no longer a value copied into a cell. It is the balance.
The forecast feeds on real due dates
In a spreadsheet, a due date is data somebody entered — and therefore data that ages. In an ERP, it is carried by the invoice itself: it updates when the invoice changes, and disappears when the invoice is paid.
Three standard Odoo reports are enough to cover the essentials:
- the aged receivable report: sales invoices awaiting payment, month by month;
- the aged payable report: what you owe, and for how long you have owed it;
- the executive summary, which shows among other things the average number of days your clients take to pay you, your own for paying your suppliers, and a short-term cash forecast.
None of them requires any data entry: they read what is already there — precisely the material your spreadsheet spends the week reconstituting. We support the roll-out of these indicators as part of financial reporting.
One single version of the figure
The real gain is not the time saved: it is that there are no longer two answers to the question "where do we stand?".
The invoice sent to the client, the one that will feed your VAT return on Intervat, Belgium's VAT filing portal, and the one that weighs on the forecast are the same object. The figure is then identical whether the question is asked in French or in Dutch — which is no small matter in a mixed Belgian team.
A word of context: since 1 January 2026, all Belgian companies must be registered on the Peppol network in order to issue and receive electronic invoices. Your invoicing data therefore now arrives structured. Re-entering it in a spreadsheet amounts to degrading data that is already clean.
How to leave Excel without breaking what works
The spreadsheet is not the enemy. What causes the problem is that it has become the source. A successful transition happens in three steps, in this order.
- Make the input reliable before touching the reporting. Bank connected or CODA imported, invoices recorded with their real due date — the one that was negotiated, not the default invoice date. Without that discipline, no forecast is worth anything, whatever the tool.
- Have the forecast come out of the system, not out of the file. You start from the client and supplier due-date schedules, and add by hand only what the system cannot know: an investment decided but not yet ordered, a dividend.
- Keep the spreadsheet as a view, never as a source. Exporting it to simulate a scenario or to present to your banker: perfectly fine. Re-entering an amount in it: that is where the cycle starts again.
The routine counts as much as the tool: twenty minutes every week, at the same moment, are worth more than a sophisticated dashboard consulted twice a quarter. Many Belgian SMEs do not need a full-time finance director to keep that rhythm — a fractional CFO arrangement is enough to establish it.
Take back control of your cash position with doo.FINANCE
Do you recognise your own file in this article? That is rather a good sign: somebody in your business took the cash position seriously well before the company gave itself the means to. doo.FINANCE, an Odoo Gold Partner, puts in place the management that takes over: automated bank imports, reliable due-date schedules, a forecast fed by your real invoices, and fractional CFO support to hold the rhythm. The first conversation is mostly about looking at your file together.
Let's talk about your cash position →Frequently asked questions
Can you really manage your cash position without Excel?
Yes, on one condition: that the input data is clean. If your invoices carry their real due date and your bank statements arrive automatically, the standard reports of an ERP such as Odoo give you the essentials with no data entry at all. The spreadsheet keeps its usefulness for simulating scenarios, but it stops being the source of the figure — and therefore the source of the gaps.
What is the legal payment term between businesses in Belgium?
Where no contrary agreement exists, it is 30 calendar days. Since 1 February 2022, it can under no circumstances exceed 60 calendar days between businesses, whatever their size: this is the Act of 14 August 2021, which amended the Act of 2 August 2002 on late payment. The period for verifying the goods or services is included in that term and can no longer be used to extend it. A client at 58 days therefore remains within their rights: your forecast has to anticipate them, not chase them.
Can Odoo import Belgian bank statements automatically?
Yes. The CODA format, used by Belgian banks, imports directly from the bank journal in Odoo. With the CodaBox service, CODA files are retrieved automatically every 12 hours. Reconciliation models then preselect the matching entries, which reduces bank reconciliation to arbitrating the genuinely ambiguous cases.
At what point should an SME abandon its cash spreadsheet?
Three signals are enough: only one person knows how to update it, the gap with the bank balance grows from one week to the next, or the update takes longer than the reading. The third is the most telling: when producing the figure costs more than deciding on it, the tool has changed sides.
