AI Underwriting Copilot for a Digital Lender — Decisions in 4 Minutes, Not 6 Hours
The Problem
Our client processed around 400 personal loan applications per day. Each required a credit analyst to manually:
- Download open-banking transaction exports (usually a 300–800 row CSV)
- Cross-reference bureau reports from Experian and TransUnion
- Apply internal risk policy rules documented in a 47-page PDF
- Write a 200-word decision rationale for audit
Average time per decision: 6 hours. Average error rate on policy-rule application: 12% (caught by QA, but still requiring rework).
With loan volumes growing 40% YoY, the analyst headcount required to maintain throughput was unsustainable.
Our Solution
We built a three-layer AI pipeline:
Layer 1 — Data Ingestion & Normalisation
We integrated directly with Plaid for real-time open-banking data and Experian's Connect API for bureau data. A lightweight ETL normalised transaction histories into structured spending categories (rent, utilities, gambling, subscriptions) using rule-based classification supplemented by a fine-tuned DistilBERT model for merchant name disambiguation.
Layer 2 — Risk Signal Engine
A Python FastAPI service computed 140+ derived features from normalised transactions:
- Rent-to-income ratio trend (3-month rolling)
- Discretionary spend volatility
- Overdraft frequency and recurrence patterns
- Gambling transaction flags with severity scoring
Layer 3 — LLM Decision Layer
We used GPT-4o with structured output (JSON mode) to generate the decision rationale. The prompt included:
- Computed risk signals as a structured context block
- The full 47-page policy document (chunked via RAG with Pinecone)
- Bureau summary
- Any prior loan history from the client's internal CRM
The LLM outputs a structured JSON containing: decision (approve/decline/refer), confidence score, policy rules applied, and decision rationale in plain English.
Human-in-the-Loop
Decisions with confidence < 0.82 are routed to a human analyst for review. This accounts for ~8% of applications — the genuinely ambiguous cases where human judgment adds real value.
Results
90× faster decisions — from 6 hours to 4 minutes median end-to-end (including bureau API latency).
−18% default rate in the 6 months post-launch, compared to the same period prior year. The LLM's application of policy rules was more consistent than human analysts — particularly on edge cases covered in appendices of the policy document.
PCI-DSS Level 1 compliant — all financial data is processed in a dedicated VPC with no persistent storage of raw bank credentials.
£1.2M annual analyst cost reduction through redeployment (not redundancy — analysts now focus on referred cases and policy development).
Architecture Notes
One non-obvious decision: we chose GPT-4o with JSON mode over fine-tuning an open-source model. The policy document changes quarterly. Fine-tuning requires retraining cycles; RAG-based prompting lets the compliance team update the source PDF and the model adapts instantly. The latency cost (GPT-4o adds ~800ms) was acceptable given the 6-hour baseline.
We also built a full shadow mode — for the first 8 weeks, the AI ran in parallel with human analysts. Decisions were logged and compared. This gave the client's compliance team the evidence they needed to sign off on production deployment.