◆ Case study · Ace Money Transfer · FinTech
We automated KYC onboarding and removed €40,000 a year of manual review
A full-stack identity-verification system pairing OCR with facial recognition to onboard customers without manual review, plus a lightweight YOLOv8n document classifier for edge deployment.
€40k
annual cost removed
98%
field-detection accuracy
70%
less compute vs. baseline
The problem
Every new customer arrived as a photograph of an identity document, and every one of those photographs was read by a person. That queue set the pace of onboarding: applicants waited, reviewers burned hours on transcription, and the cost of the team scaled linearly with growth.
The documents themselves were the hard part. Passports, national IDs and driving licences from different countries share no layout, no field order and no fonts. Photographs arrived skewed, glare-blown, cropped and low-resolution. A generic OCR pass over that input produces confident nonsense, which in a compliance workflow is worse than producing nothing at all.
The team also needed the verification to prove that the person submitting the document was the person pictured on it — a separate problem from reading the text, and one with its own failure modes.
What we built
-
Classify the document before reading it
A YOLOv8n classifier identifies the document type and locates it in the frame first. Knowing the layout up front turns an open-ended reading problem into a bounded extraction against a known template. We deliberately chose the nano variant so the model could run at the edge, which is where the 70% compute reduction against the baseline came from — the heavyweight pipeline never runs on frames that do not contain a usable document.
-
Normalise the image, then extract
OpenCV handles deskewing, perspective correction, glare suppression and contrast normalisation before a character ever gets read. Most OCR accuracy is won or lost here rather than in the model: a correctly rectified image with even lighting is a far easier input than anything a phone camera produces unassisted.
-
Field-level extraction with PaddleOCR
PaddleOCR reads the normalised crop, and extraction is scoped to the regions the classifier established. Fields are validated against the format each document type guarantees — checksum rules on document numbers, date ranges on expiry, character sets per issuing country — so a misread fails a validation rule instead of silently entering the record.
-
Match the face to the document
DeepFace compares the portrait extracted from the document against the applicant’s submitted selfie, producing a similarity score rather than a boolean. The threshold is a policy decision the compliance team owns, not a constant buried in the code.
-
Route the uncertain cases to a human
Every field carries a confidence score, and the pipeline is explicitly built so that low-confidence extractions escalate rather than pass. Automation removed the routine 90-odd percent of the queue; it did not remove the reviewer from the cases that genuinely need judgement. This is the design decision that made the system acceptable to compliance.
-
Serve it as an API
The whole pipeline sits behind FastAPI, so onboarding calls one endpoint and receives structured, validated, confidence-scored fields plus a face-match result.
The outcome
- €40,000 a year in manual review cost removed, by taking the routine cases out of the queue entirely.
- 98% field-detection accuracy across mixed international document types and real-world photograph quality.
- 70% less compute than the baseline pipeline, by classifying cheaply before extracting expensively.
- Onboarding latency moved from human-queue time to API time, so applicants stopped waiting on reviewer availability.
Why this stack
- PaddleOCR
- Strong multilingual recognition and permissive licensing, which matters when documents span issuing countries.
- YOLOv8n
- The nano variant runs at the edge. Classifying before extracting is what cut compute by 70%.
- DeepFace
- Face verification with swappable backends, so the matching model can change without touching the pipeline.
- OpenCV
- Deskew, perspective correction and glare handling. Most accuracy is won in preprocessing.
- FastAPI
- Typed request and response models, so the contract with the onboarding service is enforced rather than documented.
Frequently asked
Can this replace a KYC SaaS vendor like Sumsub or AU10TIX?
It can, and for this client it did. The trade-off is real: a vendor gives you compliance coverage and a support contract out of the box, while a custom build gives you control of the thresholds, no per-verification pricing, and the ability to handle document types a vendor does not prioritise. The economics tip toward building when your verification volume is high enough that per-check pricing dominates, or when your document mix is unusual.
How accurate does OCR need to be for compliance work?
Higher than any single number suggests, because the important property is not raw accuracy but calibrated confidence. A system that is 98% accurate and knows which 2% it is unsure about is safe, because those cases escalate. A system that is 99% accurate with no confidence signal is not, because you cannot tell the wrong answers from the right ones.
How long does a build like this take?
A working pipeline on your real document mix takes weeks rather than months. The long pole is never the model — it is assembling a representative sample of genuinely bad input, because the system is defined by how it handles the worst 5% of photographs, not the clean ones.
Does it work on documents from countries you have not seen?
The classifier needs examples of each document type to route confidently. Unseen types are detected as unknown and escalated rather than guessed at, which is the correct behaviour — adding a new country is a training-data task, not a rewrite.
More on document intelligence, ocr & kyc
- GuideIntelligent document processing: OCR, IDP and document intelligence explained
- ServiceOCR & document AI development
- ServiceKYC & identity verification automation
- IndustryAI development for FinTech
- ArticleOCR for KYC: document verification that works
- ArticleCustom KYC vs Sumsub, AU10TIX and Onfido: build vs buy
- ArticleIntelligent document automation: from extraction to the action that follows
- ArticleDocument workflow automation: what it costs and what it saves
- ArticleGoogle Document AI vs a custom IDP pipeline
- ArticleAI document management workflow: from filing to acted-on data
- ArticleText classification techniques for document AI
Have a project like this?
Production-grade, owned end to end. Usually a reply within a day.