Production · LLM system
Concur Automation
An LLM-assisted classifier for corporate card transactions, built so the model can suggest but never decide.
Every cycle, about 1,900 corporate card transactions had to be reviewed and classified before the close could move. The monthly review took 36 hours, inside a five-day close across two legal entities.
I gathered requirements from accounting, IT, and BI, then built the classifier in C#/.NET on Azure Functions. The OpenAI API proposes a classification for each transaction, and deterministic rules sit around every call.
Then I benchmarked it against the human reviewers, transaction by transaction. Humans still post, and every run writes an audit log.
- Monthly review time
- 36 h → 10 min
- Exact match to human reviewers
- 95–97%
- Misclassifications in the benchmark
- 0
- Transactions per cycle
- ~1,900
Re-run the human benchmark on a fresh cycle each quarter, so the match rate stays a measured number rather than a launch-day one. Then test the same guardrail pattern, one phase at a time, on the next manual review in the close.
- C#/.NET
- Azure Functions
- OpenAI API
- SAP Concur
- Deterministic rules
- Audit log