Split
Each scan can hold dozens of staff documents. Boundaries are found in layers: DOCSTART barcodes on divider pages, brown divider cards detected by colour calibration, OCR on page corners as a fallback, and AI vision as the last resort.
Software · Case study
Record Digitisation is an automated pipeline that takes scanned paper records, splits them into individual documents, works out what each one belongs to, classifies it and files it, with anything uncertain routed to a human. Built from scratch and proven on a Nigerian university's entire staff archive.
The problem
Records pile up for decades: appointment letters, CVs, payslips, certificates, forms and correspondence. Finding one means finding the right cabinet, the right folder, the right page.
Scanning alone doesn't fix it. You get 150–300 page PDFs with dozens of different people's documents merged together, covers scanned upside-down, names the OCR can't read. Typing it all into folders by hand takes a team months and still produces mistakes.
It was proven on staff personnel files, but the same pipeline suits any organisation sitting on a large paper archive: student records, patient files, legal and civil-service registers.
How it works
Each scan can hold dozens of staff documents. Boundaries are found in layers: DOCSTART barcodes on divider pages, brown divider cards detected by colour calibration, OCR on page corners as a fallback, and AI vision as the last resort.
The staff member's name is read and matched against the registry with exact normalised matching (titles like “Dr.” and “Prof.” and word order are handled), then fuzzy matching with a confidence score. The PDF filename is a fallback when OCR garbles the name.
Every document is labelled by type (CV, appointment letter, payslip and more) using pattern matching plus AI, with a confidence score on each.
Approved documents are named DocumentType_Date.pdf and filed under
StaffName_StaffID/Section/, with a metadata file written beside each:
staff ID, department, page count, extracted text and a SHA-256 integrity hash.
Anything it can't match with confidence goes to a manual review queue. Nothing is guessed, and nothing is silently misfiled.
See it work
A simulation of one scan file moving through the pipeline. It uses invented sample names; no real records are shown.
—What it produces
// one folder per staff member
Sample_Adaeze_S0231/
├─ Open/
│ ├─ CV_2021-03-12.pdf
│ └─ Payslip_2026-08-31.pdf
└─ Master/
├─ Appointment_Letter_2019-02-04.pdf
└─ Promotion_Letter_2023-07-19.pdf
// metadata written beside every file
{
"staffId": "S0231",
"name": "Sample, Adaeze",
"department": "Sample Department",
"faculty": "Sample Faculty",
"documentType": "Appointment Letter",
"pages": 3,
"scanDate": "2026-09-14",
"sha256": "9f2c…e41a",
"ocrText": "…"
}
Built for messy reality
Under the hood
AI models are used only where the local methods fall short. Where records are sensitive, that behaviour can be reviewed and configured with your IT team.
Tell me about your records, how many files, what condition, what you need the archive to do. I'll show you how the system would handle them.
ianquadril@gmail.com