Ryz Labs/Guides/Underwriting document AI
Guides

AI underwriting document processing: how a Ryz pod built it

How a senior Ryz AI pod built underwriting document intake for a commercial lender: classifying files, extracting fields with sources, spreading financials, flagging gaps.

AI underwriting document processing takes the files a credit application arrives with, such as financial statements, tax returns, account statements, rent rolls and entity documents, and classifies them, extracts the fields underwriters need with a source reference for each value, checks them against each other and assembles a draft spread for the analyst to review. This guide describes how a Ryz AI pod built that intake workflow for a commercial lender: the problem, the architecture and the analyst's workflow. The client is confidential and we do not publish figures for this project, so there are no performance numbers here, only how the system works.

The problem

Underwriting starts with a pile of documents. A single commercial application can include several years of financial statements, business and personal tax returns, interim statements, account statements, a debt schedule, rent rolls for real estate, and formation and ownership documents for every entity in the structure. They arrive as scans, phone photos, password-protected PDFs and spreadsheets, often in several batches.

Before any credit judgment happens, an analyst has to sort the files, find what is missing, re-key numbers into a spread, check that totals foot and that the tax return agrees with the financial statements, and chase the borrower for what is still outstanding. That work is slow, repetitive and easy to get slightly wrong, and every hour spent on it is an hour not spent on the actual credit question.

What the pod built

A Ryz pod of senior engineers worked on the lender's team, in its cloud and repos. The workflow has six stages.

1. Intake and checklist

Each application has a document checklist driven by the loan type and borrower structure. As files arrive, the system matches them to the checklist, notices duplicates and newer versions, and shows the analyst and relationship manager what is still missing.

2. Classification and splitting

Borrowers often send one large PDF with many documents inside. The pipeline splits it into individual documents, classifies each one (for example a balance sheet, an income statement, a business return, a personal return, an account statement, a rent roll, an operating agreement) and identifies the entity and period each covers.

3. Field extraction with sources

Layout-aware parsing preserves tables, then models extract the fields each document type needs into a typed schema: line items from statements, schedule figures from returns, ending balances from account statements, unit and lease data from rent rolls, owners and signatories from entity documents. Every value keeps the page and location it came from, and low-confidence values are marked for review rather than guessed.

4. Cross-checks

Deterministic code checks the extracted data for consistency: statements foot, the balance sheet balances, revenue on the return is reconciled against revenue on the statements, rent roll totals tie to reported rental income, and entity names and periods agree across documents. Each failed check becomes a specific question for the analyst or the borrower.

5. Draft spread

Extracted line items are mapped to the lender's spread template and chart of accounts. Mapping rules the analysts approve are reused, so the same borrower's statements map the same way next period. The output is a draft spread, never a final one: the analyst reviews it, adjusts it and signs it.

6. Analyst review

The review screen shows each value next to the source page, with confidence, the check results and the history of corrections. Analysts accept, correct or reject values; corrections are saved as labeled examples for the evaluation set. The credit memo, the risk rating and the decision stay with the underwriting team.

Architecture

LayerWhat it doesTypical tools
IntakeReceives files, tracks the checklist, handles versions and duplicatesPython workers, queues, the lender's document store or loan origination system
OCR and layoutText, tables and structure from scans and PDFsAWS Textract or Azure AI Document Intelligence
Classification and extractionSplits packets, labels document types, extracts typed fieldsAnthropic or OpenAI models through the lender's approved cloud endpoints
Checks and mappingFooting, cross-document reconciliation, spread mappingPython rules with unit tests per check
Data storeExtracted values, sources, corrections and mapping rulesPostgres, with outputs feeding the lender's warehouse
Review interfaceSource viewer, approvals, borrower follow-up listsReact with single sign-on through the lender's identity provider
QualityField-level scoring against analyst-labeled packages, per document typepytest-based eval harness in CI, Langfuse or OpenTelemetry traces

The rule across every Ryz credit build holds here: models read and extract, code checks and calculates, people decide. No model makes or recommends a credit decision in this workflow.

What makes underwriting documents hard, and how the pod handled it

Where it fits in the credit lifecycle

Underwriting intake is the front door. Once a loan closes, the same parsing, extraction, eval and review foundation supports ongoing monitoring: covenant monitoring for cash-flow facilities and borrowing-base certificate automation for asset-based ones. Building that foundation once in your own cloud is what makes the second and third workflows faster to add. For the broader view, see financial services AI engineering and AI agent development for financial services.

Building it with Ryz

Ryz AI pods are one accountable team of senior engineers who work on your team, in your stack, cloud and repos, reporting to your leads, on US business hours. You meet the named engineers before the engagement starts, and engineers can start in under two weeks once you say go. Typical cost is $7,000 to $15,000 per engineer per month, with leads from $15,000, quoted per team. A pilot pod of a tech lead and two senior engineers starts at $35,000 per month ($15,000+ plus 2 × $10,000 to $15,000); a full pod of about seven senior engineers starts at $75,000 per month. Project cost is team size × months × monthly rate. More on the model at AI pod teams.

When to buy instead

If your applications are mostly standardized consumer files, a packaged document processing product may cover them well. If you would rather license a full loan origination platform with built-in extraction, a platform vendor fits better. Building pays off when documents are varied and commercial, your spread templates and credit policy are your own, and you want extracted data and corrections in your environment.

Related

FAQ

What is AI underwriting document processing?

It is a system that classifies the documents in a credit application, extracts the fields underwriters need with a source for each value, checks the documents against each other and produces a draft spread for an analyst to review.

Does the AI make the credit decision?

No. Models read and extract, code runs the checks and the spread mapping, and the underwriting team reviews every value and makes the credit decision.

Which documents can it handle?

The build described here covers financial statements, business and personal tax returns, account statements, debt schedules, rent rolls and entity documents. New document types are added by defining their schema and building labeled examples.

Can it run in our own cloud?

Yes. A Ryz pod builds in your AWS or Azure accounts and repos, calls models through endpoints you approve, and keeps documents and extracted data in your environment. You own all code and IP.

How much does it cost to build?

Cost is team size × months × monthly rate. Ryz engineers typically cost $7,000 to $15,000 per month each; a three-person pilot pod starts at $35,000 per month.

Questions we didn't answer? Email info@ryzlabs.com.

Thanks — your message has been sent. We’ll get back to you soon.

Something went wrong while sending your message. Please try again or email info@ryzlabs.com.

Explore Ryz Labs

Software development servicesAI development teamsIndustriesStaff augmentationAI pod teamsNearshore software developmentHire engineers by roleEngineer ratesGuidesBuyer guidesCase studiesHow we vet engineers

Ryz Labs

Senior engineers on your team. AI pod teams that ship.

Tell us what you're building. You get a scoped plan, a price and the names of the people who would do the work.

  • Only the top 1% of tens of thousands interviewed make it
  • On US business hours, including New York hours
  • Trusted by Fortune 500 engineering teams

Tell us who you need

A Ryz partner replies with a scoped team plan.

Start a conversation →

Prefer to talk? Book a 15-min call →