Work · Operations · Documents
45 sec Median time to parse and score a bank statement
Lenders receive bank statements by email and upload all day, in every format a bank can produce. We built an intake pipeline that classifies, parses, normalizes, and scores each statement automatically, so a deal file is ready to read before anyone opens it.
45 sec
Median parse, statement to score
6
Statements per file, handled together
0
Retyping by staff
01The problem
Every lending decision starts with bank statements, and every statement arrives differently. Some come as clean PDFs, some as phone photos of paper, some as scans rotated sideways. A single application usually carries several months of them, often from more than one bank.
Someone on the team has to open each one, figure out which bank and which account it belongs to, and retype deposits, balances, and negative days into a spreadsheet before an underwriter can look at the deal.
- Hours of manual reading and retyping per application
- Typos and missed pages that surface later as bad decisions
- Deals waiting in an inbox while a competitor answers first
02What we built
An intake pipeline that starts working the moment a document arrives, whether it lands in an email inbox or a web upload. The system first classifies each page, separating bank statements from applications, IDs, and junk, and splitting combined files into individual statements.
Each statement then goes through OCR and a language model extraction pass. OCR turns the page into text, even from photos and skewed scans, and the model pulls the fields that matter: bank, account, period, deposits, ending balances, negative days, and recurring obligations.
Extracted data is normalized into one schema regardless of which bank produced the statement, so six statements from three banks read as one continuous financial picture. A scoring layer runs on top and flags the patterns underwriters care about.
The whole pipeline runs on Google Cloud, and results land directly in the tools the team already uses. Nothing is retyped, and a person only steps in when the system flags a page it cannot read with confidence.
03What changed
The median time from a statement arriving to a parsed, scored result is 45 seconds. Work that used to sit in an inbox for hours now finishes before anyone has opened the email.
Files with up to 6 statements are handled as a unit, split, parsed, and merged into one view of the applicant's cash flow. Nobody reconciles months across banks by hand.
Retyping dropped to zero. Staff review flagged pages and exceptions instead of transcribing numbers, and underwriters open deals that are already structured and scored.
The practical effect is speed where it counts. Applicants get answers faster, and the team spends its time on judgment instead of data entry.
A real engagement, anonymized. Client details are withheld under confidentiality.
Next step
Drowning in documents someone has to retype?
If your team reads statements, invoices, or applications by hand, the same pipeline applies. We build it inside your stack, in your vocabulary.
More work