kodie
Tasks · 29 August 2026

How to check that every job actually got billed

Nobody notices the invoice that was never raised. That is precisely what makes it expensive.

Every business that does work before it bills for it loses some of that work. A job gets completed, the paperwork does not make it back, and no invoice is ever raised. There is no error message, no complaint and no gap in the accounts, because as far as the system is concerned the invoice never existed.

This is the quietest way a business loses money, and it is close to ideal work for an agent, because it is a job nobody wants and nobody misses.

Why it happens

The job finished somewhere other than the office. An engineer, a cleaner, a driver completes work and the record of it lives on a phone, on paper, or in a WhatsApp message.

Somebody was going to check. There is usually a person who reconciles this, and they are usually the busiest person, and reconciliation is always the thing that slips when the week goes wrong.

The variation was never captured. The job was quoted for one thing and turned into another. The extra hour, the extra site, the additional materials. Everyone knows about it on the day and nobody writes it down.

It fell between two systems. The scheduling system knows the job was completed. The accounting system knows what was invoiced. Nothing compares the two, because comparing them is somebody's manual job.

The check itself

The logic is simple, which is why it is worth automating rather than agonising over.

Take everything marked complete in the period. From the job system, the scheduler, the rota, wherever completion is recorded.

Take everything invoiced in the period, plus a margin either side. Invoices often land in the following month, so a strict month boundary produces false alarms and destroys trust in the report immediately.

Match them. By job reference where one exists, and by customer plus date plus amount where it does not.

Report the three exception types, not the matches. Completed but not invoiced. Invoiced but not matched to any completed job. Invoiced for a materially different amount than the job was worth.

That last category is the one people forget, and it catches both undercharging and the awkward opposite.

Making the report survive contact with reality

The first time you run this, the list will be long and most of it will be noise — timing differences, jobs invoiced in batches, a customer on a monthly consolidated invoice. This is normal and it is where most attempts die, because the report cries wolf and everybody stops reading it.

The fix is to spend the first fortnight teaching it what a false alarm looks like. Consolidated billing, retainers, jobs that are deliberately not chargeable, the customer with the odd arrangement. An agent handles this well because you can tell it in a sentence rather than writing a rule.

By the time the list is short, every line on it is worth money.

Who should see it

Weekly, to one person who can act on it. Not a dashboard nobody opens, and not a monthly review — by month end nobody remembers the job well enough to reconstruct what happened.

The businesses that get the most from this are the ones where the report goes to the person who can raise the invoice, and where it is short enough to clear in ten minutes.

What it connects to

The agent needs to see whatever records completion and whatever raises invoices. In practice that is usually a scheduling or job system on one side and an accounting package on the other, and often a spreadsheet somewhere in the middle. That is a normal shape and does not need replacing first.

This job also pairs naturally with chasing what has been invoiced but not paid — one finds the money you never asked for, the other finds the money you asked for once.

If you suspect this is happening but cannot prove it, that suspicion is usually right. Tell us how work gets recorded and we will tell you where the gap is likely to be.

The repetitive layer of your week, handled

Kodie agents run reports, chasing, checking and reminders for UK businesses — from £349/month, everything included.