User Acceptance Testing for Finance Systems
UAT is where the people who'll use a finance system verify it does what they need, with real business scenarios and real numbers that must reconcile. What makes finance UAT different, what good UAT needs, and why sign-off is a decision, not a formality.
User acceptance testing (UAT) is where the people who'll actually use the system verify it does what they need — with real business scenarios — before go-live. It's the final check that the system is fit for purpose, not merely that it technically works. And in finance, that distinction is everything: a system where every button functions but the month-end numbers don't reconcile has passed technical testing and failed the only test that matters. UAT is the business saying, on the record, "yes — this does the job," or catching the reason it doesn't while it's still cheap to fix.
What UAT is — and isn't
UAT is often confused with technical or system testing. They answer different questions:
| System / technical testing | User acceptance testing | |
|---|---|---|
| Asks | Does the software work as built? | Does it solve the business problem? |
| Run by | Developers, QA, the project team | The actual end users |
| Against | Technical specs | Real business scenarios |
| Passes when | No defects | The business can do its job and signs off |
You need both. But passing system testing tells you the software functions; only UAT tells you it's the right software, correctly configured for how the business actually runs.
Why finance UAT is different
Most UAT can lean on click-through happy paths. Finance can't, for two reasons:
- The numbers must reconcile. A finance system's output isn't "a screen" — it's a position, a payment, a posting, a revaluation that has to balance and tie back to source. UAT has to check the numbers, not just the navigation.
- The processes are periodic and real. Month-end close, a payment run, a revaluation, a bank reconciliation — these are the scenarios that matter, and they only exercise the system properly with realistic data and real period logic.
What good UAT needs
- Scenarios from real business processes — the actual close, the actual payment run, the awkward intercompany case — not a generic script.
- Realistic data — enough volume and messiness that edge cases surface. Clean toy data hides the problems you'll hit live.
- The actual users — the analysts and accountants who'll operate it, whose judgement of "fit for purpose" is the one that counts.
- Defined pass/exit criteria — agreed before UAT starts, so "done" is a standard, not a mood.
- A sign-off — an explicit, accountable decision at the end.
Scenarios, not just scripts
A test script checks that a function works step by step; a test scenario checks that a real piece of business can be completed end to end. Finance UAT needs the scenario level — "produce the month-end cash position from these statements and reconcile it" — because that's where configuration gaps and fit-gap shortcuts reveal themselves. Scripts prove the parts; scenarios prove the whole.
Sign-off is a decision
The end of UAT is a sign-off, and it should be treated as a real decision by the business owner accountable for the outcome — not a signature collected to hit a milestone. Sign-off means: we have tested this against how we really work, and we accept it into production, with these known limitations. That last clause matters — sign-off with a clear-eyed list of accepted issues is honest; sign-off that pretends there are none is how known defects walk straight into go-live.
What usually goes wrong
- UAT as a demo. The project team drives, the users watch and nod — so nothing is actually tested, and the real problems surface after go-live.
- The wrong people. Managers or IT test it instead of the day-to-day users, so "fit for purpose" is judged by people who won't live with it.
- Happy-path only. Clean data and the easy cases, so the messy real-world scenarios that break things are never tried.
- No exit criteria. No agreed definition of "passed," so UAT ends when time runs out, not when the system is ready.
- Defects triaged into go-live. Known problems reclassified as "post-go-live fixes" under deadline pressure — the ones that come back as production incidents.
Run real scenarios with real users and realistic data, check that the numbers reconcile, agree exit criteria up front, and treat sign-off as an accountable decision — and UAT becomes the safety net it's meant to be. Pass it honestly, and cutover is the calm step it should be rather than the moment the untested truth arrives.
Part of the Finance Systems Delivery guide. See also fit-gap analysis and cutover and go-live. The newsletter sends one finance-systems pattern every two weeks.