Station 7 of 10
Accounting, the close and reports in Odoo
What you leave this station with
A month closed by your own hand against a written checklist, a complete bank reconciliation, and the ability to read the three statements and trace any figure back to the movement that produced it.
Everything so far generated entries. This station asks the question every company asks at the end of every month: are these numbers right, and how would I know?
That is precisely the line between an accountant and a system user. The user opens the report and reads the figure. The accountant opens the report and knows which figure in it deserves suspicion, and where the error usually comes from. This station teaches the second.
Bank reconciliation — and why it is the first step, not the last
Reconciliation matches what is in your books against what is on the bank statement. It precedes everything else in the close for one reason: the bank statement is the only external source in your entire ledger. Every other figure you wrote yourself. This one was written by a third party with no interest in flattering your results.
Odoo handles it on a matching screen that puts statement lines beside book entries, pairing what agrees and leaving you what does not.
The whole skill is in what does not agree. There are four kinds, and each means something specific.
| Case | What it means | What to do |
|---|---|---|
| In the books, not at the bank | A cheque issued and not cashed, or a payment recorded and not executed | A legitimate item in transit — track it, and question it if it lingers |
| At the bank, not in the books | Bank charges, interest, a direct collection from a customer | A missing entry — record it now |
| Two different amounts for one transaction | Currency difference, transfer fees, or a keying error | Investigate at source; never plug the gap with a difference |
| Duplicated in the books | The payment was recorded twice | Reverse one of them — and this is the dangerous one |
The second case is both the commonest and the one that gets forgotten: monthly bank charges nobody records, so your profit reads higher by exactly that amount every single month.
The rule: no month closes with a single unreconciled bank balance. An unmatched balance is not a balance, it is an estimate.
The suspense accounts — the fastest check in the close
This is the most useful paragraph in the station. Three intermediate accounts, each of which should sit near zero at the close, and any balance on them names your problem for you.
Goods received not invoiced — the account you read at station four. A credit balance means goods received whose supplier invoice never arrived. Your expenses are below the truth, so your profit is above it. Open the balance, name the receipts, chase the invoices.
Goods delivered not invoiced. The mirror image: goods that left, whose cost was recorded, and whose invoice was never issued. Your revenue is below the truth. This is the “to invoice” report from station five restated in the language of accounts.
Transfer and cash-in-transit accounts. A balance here means an amount that left one till and never reached another — a pending cash transfer, or a payment recorded twice by two different routes.
Anyone who opens these three before opening the income statement saves themselves hours of explaining numbers they cannot explain.
The close checklist — in the order that works
The order is not a matter of taste. Each step corrects what the next one reads.
- Reconcile every bank and cash account. Nothing precedes this.
- Inspect the three suspense accounts and clear them with the invoices they are waiting for.
- Review the ageing report, receivable and payable. An old balance on a customer is either a payment never matched to its invoice, or a debt whose impairment should be recognised.
- Match the stock valuation report against the stock account in the trial balance. A difference here is a movement recorded in one and not the other, most often an inventory adjustment that was never posted.
- Review the taxes — the tax report must be built from the entries and not from an external file, which is the subject of station eight.
- Post the adjusting entries: depreciation, prepayments, accruals.
- Read the statements, then close the period.
- Actually lock the period with a date limit that blocks posting into a month gone by. This step is forgotten more than any other, and the consequence is a figure changing in a month that was already published.
The three statements — how to read them
The income statement answers: did I make money this period? It is a period statement, not a moment — its figures reset to zero at the start of each fiscal year.
The check worth running on it every month is the gross margin percentage, not the amount. The percentage exposes what the amount conceals: sales growth lifts absolute profit even while the margin collapses. And if the percentage moves materially from one month to the next with no known commercial cause, the reason is almost always one of three, all of which you have now met: a costing method that changed, a large inventory difference, or delivery in one month and invoicing in the next — that last one being what station five set out.
The balance sheet answers: what do I own and what do I owe? It is a moment statement. The most useful thing on it for a non-accountant is the stock balance — if it is growing faster than sales, you are converting cash into idle goods, and that runs months ahead of a liquidity crisis.
The cash flow statement answers: where did the cash go? It is the statement that resolves the contradiction that baffles owners: profit on paper and an empty till. The explanation is always one of three: customers who have not paid, stock that piled up, or assets bought for cash.
The report you must learn to build yourself
Do not settle for the packaged reports. Learn to filter any report by period and then group it by an axis — partner, item, account, or analytic account.
That single skill removes half the development requests that reach consultants. And when you get to station nine you will find that much of what arrives described as “a custom report” is a grouping the requester did not know existed.
The acceptance test for this station
- Run a full bank reconciliation that includes a bank charge which was not in your books.
- Clear the three suspense accounts, and name the cause of each balance before you clear it.
- Close a full month against the checklist above, and set a date limit that blocks posting into it.
- Pull the gross margin percentage for two months and explain the difference by one specific cause.
- Build a sales report grouped by item for a defined period, and match its total against the income statement.
If you want the logic of the close independent of any system, it is set out in the ledger and the close.
What comes next
You now know how to close a month and read its result. But all of it was general accounting that would serve any country. The next station comes down to yours: localisation and e-invoicing — which module serves Saudi Arabia and Egypt, what Odoo ships itself and what needs a third party, and where the product does not reach at all, as detailed in the Odoo guide.
