BlogResources

Automating receipt collection: the image, the data and the record

Collecting receipts is the easy half. What HMRC needs kept, what extraction can and cannot decide, and how to build a process that survives an enquiry.

Rebecca PearsonRebecca PearsonUpdated 11 min read

Summarize with AI

Automating receipt collection: the image, the data and the record
On this page

A WhatsApp bot collects receipts for an accounting practice by letting clients photograph a receipt at the till and send it in one action, then extracting the data, flagging doubtful rows for review, and storing the image linked to the ledger row. The photograph is only the first step. The steps after it decide whether the record holds up when an inspector examines it.

A receipt supports two claims: the business incurred the expense wholly and exclusively for the business, and, where relevant, VAT was charged and is recoverable. Those claims must hold up one to five years later, to a reader who was not there. That requirement should shape the process, not the convenience of capture.

What we'll cover

Key takeaways

  • A receipt automation must keep the image and the ledger row permanently linked, because the image is the evidence and the row is only an assertion.
  • Capture works when the client needs one action at the moment of spend and receives a confirmation.
  • Extraction fails most expensively when it returns a plausible wrong number, so flag low-confidence rows, check the arithmetic and set a value threshold.
  • A VAT claim needs the VAT registration number, so the whole receipt must be in the photograph, and card slips are not VAT invoices.
  • Give the review queue a named owner, because an unowned queue is where flagged receipts disappear.

The image and the data are different things

A photograph of a till receipt is evidence. The row in the ledger saying £42.60, Sundries, 14 March is a record. Evidence and record serve different purposes and fail in different ways, and a process that conflates them produces a ledger nobody can defend.

The accounts are built from the row, and the image proves the row. If you discard the image after extraction, the row becomes an assertion. If you keep the image without linking it, finding the evidence for one line means searching a folder of nine hundred photographs.

Build the pairing of image and row first. The pairing must survive software changes, staff changes and the client moving to a different bookkeeper, which a chat thread cannot guarantee.

What actually has to be kept

Digital copies are acceptable. HMRC (His Majesty's Revenue and Customs, the UK tax authority) does not require the paper, provided what you hold is legible and complete.

Retention periods are longer than most clients expect. Self-employed records must be kept for at least five years after the 31 January submission deadline for the relevant tax year, and company records for six years from the end of the financial year they relate to (self-employed, company).

Many clients must now also keep records digitally. Making Tax Digital for Income Tax obliges sole traders and landlords over the qualifying income threshold to maintain digital records and report quarterly through compatible software, phasing in from April 2026 above £50,000, April 2027 above £30,000 and April 2028 above £20,000 (HMRC guidance). For those clients, a carrier bag of receipts in December is no longer a viable method.

The storage question therefore comes before the capture question. Decide where the images live, who can retrieve them in four years, and what happens to them if the client leaves.

Capture at the moment of spend

Capture a receipt at the till, not later. A receipt captured at the till is complete and legible. The same receipt captured at month end may have been through a wash cycle, and many receipts do not exist by year end.

Three things make capture happen at the till.

It takes one action. Photograph, send, done. Any step requiring a login or a category choice moves the task to later, and later is where receipts die.

It uses something already in their hand. Messaging channels work because the client already has the app open and has nothing to learn.

It gets acknowledged. Without a confirmation, careful clients send the same receipt twice and careless clients assume it went through when it did not.

A weekly prompt helps clients who spend regularly and annoys clients who do not. Set the cadence from how often each client transacts, and let clients turn it off.

Building it with CodeWords

CodeWords connects to 3,000+ integrations (CodeWords integrations directory, 2026), and each connection is made once and reused.

  1. Open CodeWords and start a new automation.
  2. Describe what should happen in plain language to Cody, the automation builder: who is prompted and how often, what happens when an image arrives, which fields you want read, and what confidence level sends something for review.
  3. Authorize the connections to your ledger system, your document storage, and the channel clients send from.
  4. Describe the exceptions: an unreadable image, a total above a threshold you want to see, a supplier you have never seen before, something that is not a receipt at all.
  5. Run it for one client for a month before extending it, and reconcile the extracted rows against the images by hand once to see where it disagrees with you.

You describe the outcome; Cody builds it, connects it, and deploys it. The Free plan covers light use. Pro costs $39 per month and Business costs $100 per month as usage grows (CodeWords pricing page, 2026); details are on the pricing page.

Extraction and the confidence problem

Extraction reads the merchant, date and total from a photograph. It works on a clean receipt and is unreliable on a creased thermal receipt photographed in a car. The failure that matters is not the obvious one.

An extraction that fails visibly is harmless, because someone fixes it. An extraction that returns a plausible wrong number is the expensive failure: a £4.60 read as £46.00, a date read from the card authorisation rather than the transaction, a total that captured the subtotal because the VAT line wrapped.

The design question is what the system does when it is unsure. The answer must be something other than guessing confidently.

Show the confidence. A row the system is unsure about arrives marked for review instead of dropping silently into the ledger.

Set a value threshold. Review anything above a figure you choose regardless of confidence, because a wrong large number costs more than a wrong small one.

Check the arithmetic. Where a receipt shows net, VAT and gross, the three figures must add up.

Watch new suppliers. Review a merchant that has never appeared before; a merchant that appears weekly carries less risk.

The decisions a machine should not make

Extraction reads what is printed, but several later decisions are not printed anywhere. A machine should not make these four decisions.

Business or personal. A supermarket receipt cannot tell you whether the spend was stock, staff refreshments or the client's weekly shop.

Entertaining or subsistence. The tax treatment of a restaurant bill differs sharply depending on who was at the table. That fact lives in the client's memory and nowhere on the paper.

Capital or revenue. A £900 laptop and £900 of consumables photograph identically.

Which entity. Clients with more than one company sometimes pay for one company's costs from another company's account.

Capture the missing fact while the client still remembers it. One question at the moment of sending costs nothing and removes a query from your month-end process.

Why the VAT position needs more than a total

For VAT-registered clients, the receipt must support the input tax claim, so it needs more than a total.

A simplified VAT invoice, available where the supply does not exceed £250, has to show the supplier's name, address and VAT registration number, the time of supply, a description of what was supplied, and for each rate the gross amount payable and the rate applied (VAT Notice 700). Above that threshold, a full VAT invoice is required, with more detail again.

Two consequences follow for the capture process. A photograph that cuts off the foot of the receipt cuts off the VAT registration number, which makes the claim supportable. Card machine slips are not VAT invoices: they prove a payment, not the supply, so the till receipt matters and the card slip stapled to it does not.

Tell clients once, plainly, that the whole receipt must be in the frame. This saves repeated requests.

Where receipts go missing

Between apps. Screenshot from an email, saved to a camera roll, never sent.

In the wrong thread. Sent to a staff member's personal number, then lost when that phone is replaced.

Under a subscription. Recurring card payments generate email invoices nobody photographs, and these can be a small client's largest deductible spend.

At the point of extraction. The receipt is captured, unreadable, flagged, and then never chased because the flag sat in a queue nobody owns. Give the queue a named owner, because a review queue without a person attached accumulates unresolved items.

Making it survive

Keep the image and the row linked, permanently, in a place that outlives your current software.

Give the review queue an owner and a maximum age.

Ask the unknowable questions at capture, not at month end.

Do not let the chat thread be the archive. Messaging platforms are a transport, and retention obligations run for years.

Reconcile against the bank periodically. Transactions with no receipt are the gap that matters, and only the bank feed can show you it.

Limits worth knowing about

Extraction accuracy depends on the photograph, and no model reads a receipt that has been through a wash.

Software cannot recover a missing receipt. You can reconstruct some from card statements and supplier portals, which is a manual job.

Some clients will not photograph anything. For these clients, offer a different service at a different fee.

Confidence scores route work and do not guarantee accuracy, so the arithmetic checks matter more.

Faster capture does not improve coding judgement. It delivers more receipts sooner, and they are labelled correctly only if you asked the right question at the right moment.

What to build first

Start with one client for one month, covering capture and review only. Add no ledger integration, no categorisation rules and no prompts to the rest of your clients. The flow is: photograph in, stored, extracted, and reviewed by you against the image.

Two habits make the difference. Keep the image tied to the row it produced, because the link matters when someone asks questions and you cannot rebuild it then. Put a person's name on the review queue, because the receipts that hurt are the ones that arrived, failed quietly, and sat in a list nobody opened.

Frequently asked questions

Does HMRC accept photographs of receipts?

Yes, HMRC accepts digital copies provided they are legible and complete. For many clients, digital record-keeping is now a requirement under Making Tax Digital for Income Tax rather than an option, with the requirement phasing in from April 2026 by income level.

How long do receipts need to be kept?

Self-employed people keep records for at least five years after the 31 January submission deadline for the relevant tax year. Companies keep records for six years from the end of the financial year they relate to. Choose storage with those periods in mind, since the images must stay retrievable throughout.

What goes wrong with automatic extraction?

The dangerous failures are plausible wrong values, not obvious ones: a misread decimal, a date taken from the card authorisation, or a subtotal captured as the total. Arithmetic checks and a value threshold catch more of these failures than confidence scores alone.

Is a card machine slip enough for VAT?

No, a card machine slip is not enough for VAT. It evidences a payment, not the supply. The claim needs a VAT invoice. For supplies up to £250, a simplified invoice must show the supplier's VAT number, the time of supply, a description and the gross amount at each rate.

Why does the whole receipt need to be in the photograph?

The foot of a receipt is the part most often cropped, and it carries the VAT registration number. Without that number, the input tax claim is harder to support. Tell clients to keep the whole receipt in the frame when they photograph it.

What should happen to an unreadable image?

The system should flag an unreadable image and chase the client while they still have the paper, which means within days. A flag that sits in an unowned queue for three weeks is the same as no capture at all, so name an owner for the queue.

How do I find receipts that were never sent?

Reconcile receipts against the bank feed. Transactions with no matching receipt show the gap, and only the bank feed can reveal it. Subscriptions billed by email are often the largest part of the gap, so check recurring payments first.

Get started today

Your first workflow is free to build.

Describe what you need. Cody handles the build, the connections, and the deployment.