Yes — and the interesting question is not whether it can read the scan, but how you find out when it read it wrongly.
Key takeaways
Yes. AI reads scanned PDFs routinely, and for clean, machine-produced scans of standard documents it does so well enough to run a process on. The condition is that a scan carries no underlying text, so every field is a recognition result rather than a retrieval — which means a firm needs a way to detect a wrong reading that looks right.
Practically: expect good results on printed invoices, statements and forms; expect trouble with handwriting, stamps over text, faint thermal receipts, heavy skew and photocopies of photocopies.
In a digital-text PDF the characters exist and the problem is layout. In a scan, both problems arrive at once: work out what the marks are, and then work out what structure they sit in. Column boundaries, table rules and the difference between a footnote and a total all have to be inferred from pixels.
Three things degrade that badly and are worth checking before blaming the software. Resolution below roughly the level at which small print stays crisp. Skew, because a page photographed at an angle turns straight table rules into diagonals. And contrast, which is why faded till receipts are the single worst input most practices handle.
Microsoft's Azure Document Intelligence documentation draws the distinction explicitly, describing deterministic extraction from structured documents alongside analysers driven by a language model. The difference matters more than the branding.
Deterministic recognition returns what it saw, with a confidence score, and returns a mess when the input is a mess. Its failures are usually visible: garbled characters, empty fields, a confidence value on the floor.
A generative model reads the page in context and produces a fluent, complete-looking answer. When it cannot make out a digit, it may supply the digit that makes the invoice add up. That is a better guess and a worse failure, because nothing on the surface tells you it happened.
The design conclusion is not that one is better. It is that a generative reading of a scan needs an external arithmetic check, because it has removed the visible symptom that the deterministic route would have given you.
A year-end client delivers 340 scanned receipts as a single PDF: mostly phone photographs, some till rolls, a few restaurant bills with handwritten tips.
Split into single documents first — a 340-page pack extracted in one pass produces one long unverifiable list. Per document, four fields: vendor, date, total, tax. Anything the tool marks low-confidence, and every document where extracted tax is not a plausible proportion of the total, goes into a review queue with the image beside it.
In practice the printed receipts clear, the handwritten tips do not, and the thermal rolls that have faded to grey do not. The firm reviews perhaps forty images instead of 340 — and, importantly, knows which forty. Tools built for this workflow accept exactly these inputs; Dext's capture page describes mobile photograph, upload and email-forward submission with automatic extraction of supplier, date, tax and total.
A confidence score is only useful if something acts on it. The pattern that works is three lanes: high confidence posts and is sampled; medium confidence posts with a flag and is reviewed in batch; low confidence does not post at all until a person has looked at the image.
Set the thresholds from your own documents rather than the vendor's default, and set them once you have measured a few hundred of your own. A threshold copied from a vendor's test mix is a guess about somebody else's paper.
Firms sometimes treat a scan as a convenience copy. Canadian record rules do not. Under section 230 of the Income Tax Act, records kept electronically must be retained in an electronically readable format for the retention period, which subsection 230(4) generally sets at six years from the end of the last taxation year to which the records relate. Subsection 286(3.1) of the Excise Tax Act imposes the equivalent requirement for GST/HST records.
Two practical consequences. Keep the image as well as the extracted values, because the image is the record and the extraction is a derived dataset. And be careful with tools that store the only copy offshore, since subsection 286(1.2) of the Excise Tax Act requires GST/HST records to be kept in Canada, in English or French, unless the Minister authorises otherwise. Our sister firm's answer on what records to keep for a CRA audit is the client-facing version of the same point, and whether electronic records are acceptable on a passing of accounts covers a different but related question about copies.
Some documents should not go through an extraction pipeline at all: handwritten ledgers, documents where a signature or an alteration is the point, and anything so faint that a person has to squint. Running them through anyway produces output that looks like the rest of the file and is not. Route them to manual entry and mark them as such.
Client scans also carry personal information, and the Office of the Privacy Commissioner's generative AI principles make clear that using a generative tool does not put the activity outside Canadian privacy law. Upload the pages the engagement needs, not the whole box.
Does it read handwriting?
Sometimes, and unreliably. Neat block capitals on a form often work; cursive on a receipt often does not. Treat any handwritten field as a review item by default rather than discovering the problem one client at a time.
Should I OCR the file first, then extract?
If your extraction tool does its own recognition, running a separate OCR pass first can make things worse by baking in one tool's errors before the second tool sees the image. Feed the image to the tool that will do the extraction.
Is a scan good enough for the client's records?
The rules turn on whether the record is retained and readable, not on whether it is paper. Keep the image, keep it readable for the retention period, and keep the arrangement documented — and take advice on the client's specific obligations rather than assuming yours transfer.
A 30-minute call is enough to tell you whether AI pays for itself here.