Hiring guide

Bookings, invoices, revenue and cash: reconcile four different events

By CFO Index · Published

Sales says the company won €24,000. Billing shows €12,000. The accounts show €2,000 of revenue, and the bank shows nothing. All four can be correct for the same customer at the same reporting date. A useful CFO report connects the events instead of forcing every system to show the sales team's number.

Give each number a definition and a cutoff

Define bookings as a commercial management metric before using it. State which signed commitments qualify, whether the measure uses full contract value or annualised value, and how cancellation rights, renewals, usage estimates and changes are handled. Keep unsigned pipeline outside the defined signed-bookings total. Invoices record amounts billed; recognised revenue follows the applicable accounting policy; cash records actual receipts at the specified point, such as the bank. None of these labels should silently substitute for another.

Keep recognition policy separate from billing configuration

The IFRS Foundation's IFRS 15 overview links revenue to the transfer of promised goods or services and the satisfaction of performance obligations. It does not make a contract signature or bank receipt a universal recognition trigger. Have your accountant confirm the applicable framework and actual contract treatment. Stripe's documentation separately describes product behaviour: its Revenue Recognition process uses finalised invoices and service periods. A configured billing schedule is evidence to examine, not proof that the accounting judgement is correct.

Follow one contract through four events

Hypothetical example, excluding tax, fees, currency effects, refunds and other contracts: a customer signs on 20 September for twelve months of a service starting 1 October, priced at €24,000. The agreed invoice schedule is €12,000 on 1 October and €12,000 on 1 April. The first invoice is paid into the bank on 15 November. For this illustration only, assume the accountant has approved €2,000 of revenue in each service month and the company's bookings definition counts the full signed value once. This is not a recognition rule for real subscriptions.

Illustrative contract C-001 — cumulative amounts in EUR at each cutoff
CutoffBookingsInvoicedRecognised revenueBank receipts
30 September24,000000
31 October24,00012,0002,0000
30 November24,00012,0004,00012,000

Explain the gaps rather than adding the columns

At 31 October, 12,000 of the defined contract value has not yet been invoiced. The first 12,000 invoice is unpaid, while recognised revenue is 2,000 under the stated assumption. At 30 November, collection of that invoice does not create a second booking or another 12,000 of revenue. The four cumulative columns describe different events and must not be added into a sales total. Do not automatically label every difference deferred revenue or a contract asset; the correct balance-sheet presentation requires the accountant's assessment.

Join records with identities, not customer names alone

Retain contract ID, version, customer and legal entity, invoice and line IDs, service dates, accounting schedule reference and receipt allocation. One contract may have several invoices; one payment may settle several invoices. Support those relationships explicitly so joining exports does not multiply the contract value across invoice lines. Keep original currencies and conversion rules visible. Where card processors are involved, separate payment capture from settlement to the bank and explain fees or amounts still held.

Maintain separate movement checks

Reconcile each view to its own source and period: new bookings and signed changes to commercial records; invoices and credits to billing; recognised revenue to the accounting schedule and ledger; collected amounts to reconciled receipts. For a simple receivables roll-forward, opening receivables plus invoices, less credits, allocated receipts and write-offs, with any other adjustments explained, should reconcile to closing receivables. That is not a bookings-to-revenue formula. Trace differences by contract before treating them as errors.

Test the exceptions before automating the report

Use a small test set: a signed contract not yet started, an unpaid invoice, a part payment, a credit, an amendment and a renewal. Specify which measures should move and which should remain unchanged in each case under the agreed definitions. Stripe notes that cancellation of a subscription alone does not change an already-finalised invoice's recognition schedule; confirm the necessary billing and accounting actions rather than assuming the status change did everything. Keep the expected and observed results with the report.

Ask the CFO for an explainable bridge

The acceptance test is one customer traced from the signed agreement through billing, the revenue schedule and bank collection, followed by reconciliation of the population totals. Record unresolved links, owners and material limitations. This gives management a way to distinguish selling, delivering, billing and collecting before making hiring or spending decisions. A dashboard is useful only if someone can explain why those four numbers differ.

Sources and further reading

Find relevant CFO support