Back to Blog

OCR to Your Accounting System: How to Stop Retyping Invoices Into Three Places

Process AutomationAugust 20, 20268 min readJuhász Ferenc

Reading text off a supplier invoice is the cheap, solved part. Docparser sells 100 documents a month, up to five pages each, for $39, which its own pricing page works out to $0.3900 per credit, and Parseur parses 20 pages a month free. If your only problem is that a PDF is not machine readable, you can fix that this afternoon.

Everything after extraction is the project. Which supplier record does this belong to, which nominal codes do the lines hit, does it match the purchase order, who approves it, and how does it reach Xero, QuickBooks or Sage without creating a duplicate. That last mile is where these projects stall, and where the vendor pages stop.

Why the same invoice gets keyed three times

The invoice arrives by email. Someone saves it to a folder with a filename that made sense at the time, keys the header into the accounting system, then keys the lines again into whatever second system runs the business: a job costing sheet, a stock system, a spreadsheet the finance manager keeps because the report she needs exists nowhere else. Nobody designed this, it accumulated.

What extraction actually returns, field by field

Header fields are the reliable ones, because they appear once and are usually labelled: supplier, invoice number, date, due date, net, VAT, gross, currency. A decent parser gets those off a clean PDF.

Line items are where it gets interesting. Tables run across pages, descriptions wrap onto a second row, subtotals appear mid-table, delivery charges and settlement discounts show up as lines that look like goods. A parser that reads one supplier's table geometry correctly can produce nonsense on the next, and supplier invoices are multi-layout by definition. Docparser prices that honestly: multi-layout parsers are a paid add-on at $25.00 a month, their parsing assistant $149.00 per layout.

Then there are the fields that are not on the document at all: your nominal code, your cost centre, the PO number when the supplier could not be bothered to quote it. Those come from rules, history or a human. Supplier identity is a matching problem too: two spellings, one creditor.

Before you over-engineer it, note how little HMRC asks for. Under Making Tax Digital, for each supply you receive you must record the time of supply, the value, and the input tax you will claim, with no requirement to split inputs by VAT rate. Line-level capture is a business requirement, not a tax one.

The accuracy figures you will be shown

Every vendor quotes an accuracy percentage and most quote a straight-through processing rate. We went looking for an independently checkable public benchmark for either and could not find one: the named studies everyone cites sit behind registration walls, and the microsites quoting them cite each other. Treat any percentage as marketing until someone tells you what it was measured on.

Reason about it instead. Accuracy at character, field and document level gets worse in that order, because one bad character ruins a field and one bad field ruins the document. The number that counts comes from running a batch of your own invoices through a trial and counting what you had to touch.

Getting the data in: Xero, QuickBooks Online, Sage

Xero. Supplier bills go through the same endpoint as sales invoices, https://api.xero.com/api.xro/2.0/Invoices, which supports GET, PUT and POST, creates purchase bills and attaches files to them. A bill is the ACCPAY invoice type and the response carries a HasAttachments flag. One detail from Xero's own field table will bite you: ACCPAY invoice numbers are explicitly non-unique, so Xero takes the same one twice and duplicate detection is your job.

The rate limits are per connected organisation: 5 calls in progress at once, 60 a minute, 1,000 a day on the starter tier or 5,000 on higher tiers, with a 429 and a Retry-After header when you breach them. Sixty a minute sounds tight until you batch: several invoices per POST, with a practical ceiling of about 50 nodes per request. And the number that decides architecture: Xero is designed for volumes up to 5,000 purchase bills per month.

QuickBooks Online. The Bill object is a first-class AP transaction, described by Intuit as a request-for-payment from a third party for goods or services. Two fields are required: VendorRef and at least one Line, either ItemBasedExpenseLine or AccountBasedExpenseLine. The throttles are roomier at 500 requests a minute per company, and attachments run to 10,000 per transaction, so there is no excuse for leaving the source PDF in a folder somewhere.

Sage Business Cloud Accounting. The v3.1 API exposes a Purchase Invoices endpoint with read and write access, described as the invoices you see under the Purchases menu, alongside Purchase Credit Notes and an Attachments group.

If your finance system is a desktop product or an ERP configured a decade ago, do not assume either way: we could only verify documentation for the cloud products. Ask your vendor in writing whether it accepts a posted purchase invoice from outside, by what route, and what happens to the attachment. A file import rather than an API is workable, it just changes the design.

Purchase order matching and approval, the step the cheap tools skip

A parser hands you structured data. It does not hold a document in a "waiting for Dave" state for days, re-route it when Dave is on holiday, or keep an audit trail your accountant accepts.

Two-way match compares invoice to PO, three-way adds the goods received note, and every business has its own tolerances, its own handling of part deliveries, its own threshold below which a variance auto-approves. Those are policy decisions, not something a vendor ships in a default config. So is approval: bands by value, delegation when someone is away, a record of who approved what. If the tool does not own that state machine, a person does, in an inbox.

The review queue never goes to zero

Exceptions are a permanent feature rather than a defect: a new supplier with an unfamiliar layout, an old one redesigning their template, a quantity that does not match the PO. Your confidence threshold is the dial, and it is a business decision rather than a technical one. Strict, and more lands in review while fewer wrong postings reach the ledger. Loose, and errors accumulate somewhere less visible. Give the queue an owner and a reason code on every item, and when the reasons cluster on the same few suppliers, fix those. A queue nobody owns becomes a second inbox, and the retyping returns through the side door.

HMRC already has an opinion about retyping

This is where an efficiency question becomes a compliance one. HMRC's VAT Notice 700/22 defines a digital link as a transfer needing no manual intervention, then closes the obvious workaround: HMRC does not consider the use of cut and paste or copy and paste to select and move information as a digital link. Manually transferring data between the products that make up your functional compatible software is not acceptable under Making Tax Digital. CSV import and export, automated data transfer and API transfer all are.

The scope cuts both ways. Those rules govern the structured records HMRC calls your electronic account, and the same notice says you must keep additional records such as invoices but do not have to keep those digitally. Scanning on its own satisfies nothing, the extracted fields are what count. If you are self-employed, GOV.UK wants records kept at least 5 years after the 31 January deadline for the relevant tax year.

The direction of travel is fixed. The EU's VAT in the Digital Age package was adopted on 11 March 2025 and in force since 14 April 2025, with digital reporting reaching cross-border B2B from 1 July 2030 and national real-time reporting systems required to align with the EU model by 1 January 2035. Poland is further ahead, with a Ministry of Finance countdown to KSeF for everyone from 1 January 2027. Buy from suppliers in a mandate country and structured invoices arrive whether you asked or not.

When the subscription parser is the right answer

Often, and we would rather say so than sell you a build you do not need. If you handle a couple of hundred invoices a month, your suppliers send standard layouts, your accounting system is cloud based with a supported API, there is no PO matching and one person approves everything, buy the subscription. You may already own it: Xero UK lists smart document capture on every business tier and includes Hubdoc. Watch the entry plan: Ignite at £16 a month excluding VAT is limited to entering 10 bills, while Grow at £37, Comprehensive at £50 and Ultimate at £65 get automated bill entry and bill tracking. QuickBooks UK runs from £10 to £123 a month plus VAT at 20%, with receipt capture from the entry plan.

Three things flip the answer. Volume is the blunt one. Xero's designed limit of 5,000 purchase bills a month is a real architectural line, and the platforms built for that kind of throughput price accordingly: Rossum's Starter plan starts at $18,000 a year. Rules are the subtler one. Matching logic nobody else uses, allocation across jobs or cost centres, approval routing that mirrors how you actually delegate: a configuration screen runs out long before that does, and what is left gets done by hand every month.

Then there is reach. If the data is not allowed to leave your network, or the finance system takes a posted bill by no route anyone can name, the quality of the extraction stops mattering. A print shop we built for put it well: off-the-shelf might have covered 70% of it, and the remaining 30% was the part eating the day.

Our own numbers, to compare like with like: builds start at €3,500 fixed and most land between €8,000 and €30,000, fixed, with a €1,200 Process Automation Audit for murkier processes, credited in full against the build. One price, you own the code, no per-user fees.

If you are a step earlier, still weighing whether to hire someone, we priced that out in before you hire a data entry clerk. To put your own volumes against a build, use the automation cost calculator. For a straight answer on whether your finance system will take a posted bill, ask us. If a £37 subscription solves it, we will say so.

invoice automationOCRaccounting integrationXeroQuickBooks

Share this article

Juhász Ferenc

Founder & CEO