AI Tools for Mortgage Lenders: Processing, Disclosures, Audit Trails

Coding Liquids tutorial cover featuring Sagnik Bhattacharya for AI Tools for Mortgage Lenders: Processing, Disclosures, Audit Trails.
Coding Liquids tutorial cover featuring Sagnik Bhattacharya for AI Tools for Mortgage Lenders: Processing, Disclosures, Audit Trails.

A small lender can use three kinds of AI tool: document readers such as Amazon Textract's lending feature, condition trackers that turn underwriting conditions into a checklist, and checkers that compare generated disclosures with loan data. Keep the loan system as the record, make a person accept every AI value, and log each suggestion and decision.

None of the three should write the regulated disclosure or decide a loan. The system that generates disclosures stays rule-based; AI reads around it, compares against it and drafts the plain-language notes that sit beside it. The audit trail is your own record of what the tool suggested and who accepted it, because a chat history is not one.

Follow me on Instagram@sagnikteaches

How the three layers work, in plain English

Readers, trackers and checkers are different jobs with different failure modes, so it helps to see how each one works before choosing tools.

Connect on LinkedInSagnik Bhattacharya

A document reader does two things in sequence. Optical character recognition turns the pixels of a scanned page into text. Then a model works out what the page is (a pay slip, a bank statement, a tax form, an insurance declaration) and pulls labelled values out of it: employer, period end, gross year to date, account number, closing balance. Many readers return a confidence score for each value, a number (Amazon Textract's scale, for example, runs from 0 to 100) estimating how likely the reading is to be right, and that score decides which values a person must look at. For the plain comparison with older scanning software, see AI document extraction versus traditional OCR.

Subscribe on YouTube@sagnikteaches

A condition tracker starts from text you already hold, the underwriter's conditions letter, and turns each condition into a row: what is asked, which document could satisfy it, who owes it, when it is due and its status. A language model proposes a match between an uploaded document and a condition. It cannot know whether the match is sufficient, so its highest status is "possible match" and only a person writes "cleared".

A checker takes two sources that should agree, such as a generated disclosure and the loan data behind it, and reports the differences. A drafter turns approved facts into plain-language notes, for example why an estimate changed. Neither generates the regulated document, which stays with the rule-based system that applies timing and fee rules identically every time.

All three share one weakness: they sound sure when they are wrong. A reader will return a tidy income figure from a page where it took the year-to-date column for the current period. The design question for each layer is where a person looks, what they compare against, and what gets logged.

The Complete Excel Course with AI Integration thumbnail

The Complete Excel Course with AI Integration

From formulas and pivot tables to Power Query, DAX, VBA and AI with Copilot, ChatGPT and Claude — hands-on from the first lesson.

By Sagnik Bhattacharya and Virginia Thorn, Primetime Emmy Award winner

Buy now

Who sells each layer, and what the vendors publish

Prices below are USD list prices from vendor pages read in November 2026. Where a vendor publishes none, the table says so; ask for a written quote that separates per-loan, per-user and set-up charges.

LayerExamplesWhat the pages sayPublished price
Loan origination system (the record)Encompass from ICE Mortgage TechnologyPresents itself as a foundation for AI adoption, with help on document collection, data verification and quality checks, and calls the platform "reliable and auditable"None
Borrower portal and document collectionFloify; BlendFloify's site cites document management and automated disclosure workflows for lenders and brokers. Blend names AI products such as Autopilot Pre-underwriting and Navigator, an AI agent for loan officersNone for either; demo or request first
Cloud document readersAmazon Textract (its mortgage-document feature); Azure Document Intelligence, now listed under Microsoft's Foundry Tools; Google Document AITextract classifies lending pages and routes each to the matching extraction. Azure lists prebuilt models for mortgage forms, bank statements and pay stubs. Google lists bank statement, pay slip and tax-form parsersTextract $0.07 a page ($70 per 1,000) in the cloud region I checked, charged on the pages it classifies and extracts. Azure $10 per 1,000 pages for its standard prebuilt set; mortgage models not itemised
General assistantsChatGPT Business, Claude Team, Gemini in Workspace, Microsoft 365 Copilot BusinessDrafting and summarising. Business plans do not train on business content by default. Copilot interactions appear in the Microsoft 365 audit log; OpenAI documents compliance logging for Enterprise and Edu workspacesCopilot Business $21 per user a month on annual billing ($18 promotional to 31 December 2026)

Two cautions follow. The cloud readers need a developer or IT partner to wire into a process, so a small lender usually reaches them through a vendor or a consultant rather than directly. And the Textract FAQ says the service may store and use processed documents to improve its own and other machine-learning services unless you opt out through an organisation-level policy. That is exactly the sort of default to find and switch off before the first borrower file goes through. Business-tier assistants start from the opposite default, but confirm it for the plan you actually buy; the questions to ask before buying AI that touches client data gives the longer list.

Document intake: what AI reads well and where it slips

Intake is the layer with the clearest payoff, because every file needs the same pages sorted and read. It also hides the most dangerous errors, because a wrong income figure looks as tidy as a right one. The slips worth testing for are specific:

  • Pay slips: the year-to-date column read as the current period; pay periods that straddle two months; a bonus line read as base pay.
  • Bank statements: a transfer between the borrower's own accounts read as a deposit; a page missing from the middle of a PDF; two accounts in one file.
  • Scans: skewed, low-resolution or photographed pages; handwriting; a redaction that hides the very figure you need.
  • Packages: several documents merged into one PDF, which has to be split before it can be read.
  • Names and dates: day and month swapped, suffixes dropped, maiden names on older documents.

The numbers for a small lender, using assumptions you should replace with your own. Say it closes 38 loans a month and an average file runs to 55 pages:

  • Pages: 38 x 55 = 2,090 a month.
  • Reading cost at $0.07 a page: 2,090 x $0.07 = $146.30. Allow 30% for re-uploads and it is about $190.
  • Indexing by hand at 20 seconds a page: 2,090 x 20 = 41,800 seconds, about 11.6 hours.
  • With a reader, the processor glances at every classification (5 seconds a page, about 2.9 hours) and fixes 10% of pages at 30 seconds each (209 x 30 = 6,270 seconds, about 1.7 hours): roughly 4.6 hours.

The saving is about 7 hours a month. That is worth having but it is not the headline. The bigger gain is spotting a missing page or a stale statement on the first day rather than at underwriting, which is the subject of catching missing documents before underwriting.

One rule keeps the errors out of the file: set confidence thresholds per field. A page can be sorted automatically at 95 or above, but any value that feeds income, assets or liabilities is checked by a person whatever its score. If you would rather use a general assistant than a reader, whether Claude can read payslips and bank statements for a mortgage case covers the line-by-line checks.

Condition tracking: from underwriter's letter to checklist

A conditions letter is a list written as prose. Turning it into rows is the safest first use of a language model on a live file, because the source text is yours and the output is easy to check. This prompt does the conversion:

Turn the underwriting conditions below into a table with one row per condition and these columns: number, condition wording copied exactly, document type that could satisfy it, who owes it (borrower, processor, third party), due date if stated, status.
Rules: copy the wording exactly and never paraphrase a condition; if a due date is not stated write NOT STATED; set every status to OPEN.

CONDITIONS
[paste the letter]

Matching uploaded documents to those rows is a second step, and this is where the status rule earns its keep. Here is a slice of an illustrative file:

ConditionTool's proposalPerson's decision
Most recent two months' bank statements, all pagesPossible match: two statements uploadedNot cleared: page 4 of the second statement is missing
Written explanation for the $4,200 deposit on 14 SeptemberNo match foundOpen: letter requested from the borrower
Evidence of homeowners insurance in force at closingPossible match: declarations pageNot cleared: the policy starts two days after the scheduled closing
Signed authorisation from both borrowersPossible match: signed formNot cleared: second borrower's signature missing
Pay slip dated within 30 days of closingPossible match: period ending 30 September, closing on 21 OctoberCleared: 21 days

Across all 12 conditions on that file, the tool proposed 9 matches and found nothing for 3. A person cleared 6 and sent 3 back. Without the review, 3 of the 9 proposals would have reached underwriting marked as complete, and each would have cost a day or more in a conditions loop. The rule is simple to state: the tool's highest status is "possible match", only a named person writes "cleared", and the log records who.

Disclosures: what AI may check or draft, and what stays rule-based

Required borrower disclosures are produced by the loan system from loan data under fixed timing and fee rules. That determinism is the point. A language model writes a fluent, slightly different answer each time, so it should not author the form or decide when it is due. It has two useful jobs around it.

Check: does the document match the data?

A reader extracts the key fields from the generated PDF and the checker compares them with the loan system. An illustrative run:

FieldLoan systemDocument readsResult
Loan amount$312,000$321,000Mismatch: digits transposed
Loan term360 months360 monthsMatch
Estimated closing costs$9,480$9,840Mismatch: digits transposed
Rate lock expiry12 December12 DecemberMatch
Borrower nameAs on the applicationAs on the applicationMatch

Run it on every generated document before it reaches the borrower. The tool reports differences; a person fixes the data or regenerates the document and logs both runs. The check catches keying and transposition errors. It does not test whether the fees are right, and it is not a compliance review.

Draft: plain-language notes beside the disclosure

When an estimate changes, the borrower gets the updated disclosure plus a short note saying why. The note is a sensible job for an assistant, provided it works from the system's change log and nothing else. The facts block might read: "Appraisal fee changed from $600 to $750. Reason recorded: property classed as complex. Date of change: [date]." The first draft came back like this (illustrative):

Hello [first name], the appraisal fee on your estimate has changed from $600 to $750 because the appraiser classed the property as complex. Nothing else on the estimate has changed. Your updated disclosure is attached.

The middle sentence is the problem. The tool had no way to know it, and the system's change log showed a second change, a rate lock extension fee. The fix is procedural: the note lists every logged change, or points the borrower to the attached disclosure for the full list, and the processor reads the log before sending. A sentence that makes a claim about the whole file is one an assistant should never be allowed to supply.

The audit trail: what to log, and why chat history is not it

Three layers of record exist, and only one of them proves a decision. Platform logs show that someone used a tool: Microsoft 365 Copilot interactions are written to the Microsoft 365 audit log along with the files Copilot accessed, and OpenAI documents compliance logging for Enterprise and Edu workspaces. The loan file shows what ended up in it. The decision log, which you build, shows what the tool suggested, who accepted or rejected it and when. A reviewer, whether your own quality-control team or an outside party, will want to answer four questions from it: which AI touched this file, what did it suggest, who accepted it, and which version was running.

TimeStepTool and versionOutputPerson and decision
09:12Sort page 14Reader v2.3"Pay slip", confidence 97Auto-sorted; sorting only
09:12Read pay slipReader v2.3Gross year to date $41,300; period end 30 September; confidence 91Processor accepted at 09:40 after checking the page
10:05Match condition 3Tracker prompt v4Possible match: declarations pageProcessor: not cleared, policy starts after closing
14:30Compare disclosureChecker v1Two mismatchesProcessor corrected the data, regenerated, re-ran: clean

Records like these are only worth having if they are hard to alter: append-only, with times and names generated by the system rather than typed. Log the tool and version every time, because models and prompts change underneath you. Leave the original documents untouched and link every entry to the loan number. Keep the log for as long as your loan-file retention rules require, which your compliance contact can confirm, and once a month pull ten closed files and walk each log from first entry to last. Gaps show up quickly when someone reads it end to end. Who approves what, and how to make that review fast, is covered in setting up human review for AI work.

Due diligence on the tool itself, before borrower data goes in

A tool that handles loan files is a service provider, and your investors, warehouse lenders and regulator may each expect you to have vetted it. Put these questions to every vendor and keep the written answers with the contract:

  1. Are inputs or outputs used to train or improve models, and how do we opt out?
  2. How long are inputs, outputs and logs kept, and can we delete them?
  3. Who at the vendor can read our data, and which subcontractors process it?
  4. Can we choose where data is stored and processed?
  5. Does the system record which model version produced each output, and will we be told when it changes?
  6. Can we export our logs and data if we leave?
  7. What incident notification commitment is written into the contract?
  8. Do our investors and warehouse lenders allow third-party AI on loan files, and under what conditions?

The last question is the one most often skipped. A tool can satisfy your own compliance contact and still breach a condition in a funding agreement.

Four assumptions small lenders get wrong

  1. "Our loan system's AI makes us compliant." Compliance stays with the lender. Ask the vendor to show, on a test loan, where an AI-suggested value is recorded and who accepted it.
  2. "High confidence means correct." A confidence score estimates how likely a reading is to be right. A figure read with 97 confidence from the wrong column is still wrong, which is why income and asset values get a person's eyes whatever the score.
  3. "AI can decide the easy loans." Keep AI out of decisions about who is approved and on what terms unless compliance has tested the tool for unequal outcomes. Processing support is a different job and a much safer one.
  4. "We can pilot on live files." Pilot on closed files, where the right answers are known and no borrower is affected by a mistake.

A 60-day pilot on 50 closed files

The plan below uses one document type, pay slips, because they are numerous, their fields are few and a wrong figure is easy to spot.

  1. Days 1 to 10: choose the document type and write down the fields that matter: employer, period end, gross for the period, gross year to date.
  2. Days 11 to 25: run 50 closed files through the reader. At 55 pages each that is 2,750 pages; at $0.07 a page the reading cost is $192.50 at list price. Compare every output with the answer already in the file.
  3. Days 26 to 40: score three things: sorting accuracy, exact-match accuracy on the four fields, and silent errors, meaning a wrong value returned with a high confidence score.
  4. Days 41 to 50: switch on the decision log, re-run 10 files and walk the log with compliance.
  5. Days 51 to 60: decide. Either go live on new files for that one document type, with the rule that a person accepts every value, or stop and write down why.

Pass marks I would set before starting, which are illustrative: 98% sorting accuracy, 95% exact match on the four fields after thresholds are applied, and no silent errors on income fields. One silent income error means tightening the thresholds and rerunning the test. For the origination side of the business, AI tools for loan officers: CRM, follow-up and compliance checks covers the same discipline for messages and notes. If you would rather map the whole loan path with someone, that is the kind of job my AI implementation consultation covers.

Further reads

Sources: vendor pages read in November 2026 (Amazon Textract pricing and FAQ, Azure Document Intelligence model list and pricing, Google Document AI processor list, Microsoft Purview audit documentation, OpenAI compliance logging help article, Microsoft 365 Copilot Business pricing, ICE Mortgage Technology, Blend and Floify product pages). Prices are USD list prices and change.

Want an audit trail built into your loan process?

On a 1:1 call we'll walk through your loan file steps, pick the one where a reader or checker earns its place first, and decide how each AI step gets logged and reviewed.

Book a 1:1 call with me