Case study/AI compliance automation
Checking a whole client file for compliance in about a minute
A proof of concept built for a client, tested on files from a large New Zealand financial advice firm. It reads a client file, checks it against each step of the advice process, and backs every finding with evidence quoted from the file.
I designed and built it end to end, and I own the code.
AI product engineer · Full-stack

The problem
Financial advisers in New Zealand follow a set advice process, and the firm they work under is accountable for every file. Checking a file by hand means reading the fact find, needs analysis, statement of advice and the emails around them, then confirming each step was done properly.
That takes hours per file, so firms review a sample and hope it's representative. Problems in the files nobody checks surface late, if at all.
What I did
01
Turned the advice process into rules
Each step of the advice process became a configurable rule with its own criteria, so the checks can change when the firm's policies or the regulations do.
02
Read every kind of document
Built ingestion for PDFs, Word documents and email content, so a whole client file can be uploaded and checked in one go.
03
Used AI where it helps
Gemini reads the documents against each rule and returns a pass, partial or fail, quoting the passage and document it's based on, so a reviewer sees why, not just what.
04
Kept a person in charge
It's a tool for the compliance team, not a replacement. Every result shows its evidence so a reviewer can check it, and the final call stays with them.
05
Turned gaps into next steps
Each gap comes with its impact on the client and a suggested fix, so the report tells the adviser what to do next, not just what's wrong.
06
Packaged it to run anywhere
A React front end and a Node and Express back end, shipped in Docker behind Nginx, so it can be deployed on a client's own servers.
How it works
A run on a made-up sample client file, from upload to the gaps it found.

01Upload the whole client file at once: the fact find, statement of advice, engagement letter and emails, as PDF, Word or text. 
02Each step gets a pass, partial or fail. Every check quotes the passage and document it's based on, or says when nothing was found, so a reviewer can check the evidence. 
03Each gap comes with its impact on the client and a suggested fix.
Stack
- React 19 and Vite
- A simple screen to upload a file and read the results.
- Node.js and Express
- The API that takes the documents and runs the checks.
- Gemini API
- Reads the documents against each rule and explains its decision.
- Multer, pdf-parse and Mammoth
- Upload handling and text extraction from PDFs and Word documents.
- Docker and Nginx
- Packaged to deploy the same way anywhere.
Outcome
In the demo, it reviewed a nine-document sample file in about a minute. Done by hand, a review like this takes hours.
Its findings matched the issues the firm's compliance team had already flagged in the same files.
As a proof of concept, it checked the standard advice process only, not the firm's own policies on top. Adding those would be the next step in a full build.