ERP & Enterprise

A Go-Live Decision Taken in 2022 Is Still Setting the Audit Opinion in 2028

Sharif George6 min read

Europe's largest council has a working finance system again. It also has an auditor who does not expect to sign off a set of its accounts until 2028/29. The distance between those two facts was created by a testing decision taken four years earlier.

Where the programme stands this week

Birmingham City Council's Oracle Fusion reimplementation went live in August 2026, replacing the version that went live in April 2022 and never worked properly. Reporting on the council's own papers this week, The Register notes the new system has "no outstanding business-critical or priority level 1 or 2 tickets or issues" — a long way from the 311 open tickets the old system was carrying a year ago.

The same reporting puts the programme cost at £144.4m against an initial estimate of around £20m, rising towards £216m once forgone efficiency savings are counted, with over £5m spent on manual workarounds. It also reports that the council's auditors, Grant Thornton, expect disclaimer opinions for 2025/26, 2026/27 and 2027/28, with a clean opinion not anticipated until 2028/29.

A disclaimer opinion is not a finding that the numbers are wrong. It is an auditor saying they could not obtain enough evidence to form a view either way. That distinction is the story: the system is fixed; the evidence trail behind four years of transactions is not.

The areas that were never tested

Grant Thornton's review of the original implementation was reported in detail in early 2025. Its auditor Mark Stocks told councillors that testing "was completed in many areas" but that key areas had not been tested at all — the bank reconciliation system, the general ledger, accounts receivable and accounts payable. Officers reported struggling with bank reconciliation and found some aspects of the general ledger, in Stocks' account, untestable.

That is not a list of edge cases. It is the part of a finance system that produces the accounts. Everything since — the workarounds, the years the council could not control its finances, the disclaimer opinions running to 2027/28 — sits downstream of four modules going live without anyone able to demonstrate they worked.

The pattern repeated on the rebuild: in February 2026, Grant Thornton's Thomas Foster reported that the process for documenting data quality standards and confirming data was ready to migrate "was not well-established for finance in particular". Same function, same gap, four years apart.

"All the suppliers said go live"

The detail implementation partners should sit with is how the decision was made. Stocks' account is that all of the suppliers advised going live, that their advice carried caveats, and that council officers "did not have a thorough understanding of the risks". Grant Thornton also reported that end users were "unprepared and unequipped to use the system", and that the culture discouraged bad news.

Note what is absent from that description: anybody lying. Everyone appears to have said something defensible. The caveats existed; they did not survive contact with a date, because a caveat in a slide deck and an untested module in a test management system are not the same object. One gets nodded through. The other has to be closed, or accepted by name.

Grant Thornton noted that its assessment of the programme's suppliers was legally privileged and excluded from the public report — which tells you how these disagreements end when nobody can point to a record of what was tested, what was not, and who accepted the difference. The same dynamic ran through a troubled go-live that became a securities investigation, and through most of the best-documented ERP disasters.

What UAT actually has to prove on a finance system

Most UAT scripts on an ERP project are written as journeys: raise the requisition, approve it, receipt it, match the invoice. Necessary, but not sufficient, because they prove the screens behave. What an auditor needs three years later is different in kind — that the ledger balances, that the bank reconciles, that a subledger agrees to its control account, and that someone can show which version of the system produced which number.

A journey test passes when the user reaches the end of the journey. A reconciliation test passes when two independently produced figures agree. Only the second produces evidence an auditor accepts, and it is the kind dropped first under date pressure. Put to a client: a defect found in UAT costs a retest; a control never tested costs an audit opinion, years after the go-live everyone was worried about.

Four things to change in your own sign-off

Test coverage is a go-live gate, not a status slide. The question at the gate is not "is testing going well". It is: which scripts were never executed, which failed, and who is accepting each by name. If that cannot be answered from the tool in a minute, it is being assembled by whoever is most optimistic.

Put the financial controls in the script set explicitly. Bank reconciliation, the ledger close, control account agreement, AP and AR ageing, the year-end routine. Name them as their own suites, so their absence is visible rather than hidden inside a percentage.

Treat "untestable" as a defect, not a note. When a tester reports that something cannot be tested — no data, no environment, no interface yet — that is a finding with an owner and a date, not an asterisk. Birmingham's general ledger was reportedly in that category.

Make acceptance attributable. Someone named accepts each open risk, in writing, before the decision. Our guide to the UAT sign-off process covers how, and why a spreadsheet stops answering the coverage question at about the point a project needs it to.

The bottom line

An empty priority-1 queue means the system works today. It says nothing about whether you can prove what it did last year. Those are two different deliverables, and UAT is where the second is either created or quietly skipped.

→The reimplementation is live and stable; the auditors still expect disclaimer opinions for three more financial years.
→The areas reported as untested before the 2022 go-live were the ledger, bank reconciliation, AP and AR — the accounts themselves.
→The advice to go live carried caveats, recorded in no form that could stop the date.

Free ERP UAT checklist (Excel)

A structured workbook covering the full UAT cycle: pre-UAT preparation tasks, test execution tracking, an issue log with severity guide, and post-UAT wrap-up. Built from real ERP implementations.

No spam. We will occasionally send UAT and ERP implementation resources. Unsubscribe any time.

Sources and further reading

Free Plan Available

Sign-Off You Can Still Defend in Three Years

LogicHive gives ERP implementation teams a structured record of what was tested, what failed, what was never executed and who accepted each open risk by name — the evidence an auditor asks for long after the project team has moved on. The free plan runs a real project end to end.

Written by Sharif George

LogicHive Frontman

Sharif is the frontman for LogicHive. He writes the ERP news roundups and the Business Central release coverage, following each Microsoft, SAP and Oracle change through to what it means for regression scope and acceptance testing on live implementation projects.

View all articles by Sharif George
  • ERP & Enterprise

    Business Central 29 Moves Extension Fields Into the Base Table: The Change With No Screens to Test

    From version 29, the fields your extensions add to a table are stored in that table rather than in a companion table beside it. No screen changes, so a feature-led test pass finds nothing — while query plans, index behaviour and the field capacity every extension on that table shares all change. What to put in the October regression pass.

    28 September 2026 · 6 min read

  • ERP & Enterprise

    ERP Roundup: BC29 Arrives With Two Testing Features Its Own Docs Do Not Describe, and a Licence Key Where the Download Date Decides

    Business Central 29 went generally available this week with two AL testing capabilities Microsoft lists as launched — and nothing in the reference documentation showing how to use either. Alongside it, a licence key change that reads like simplification and behaves like a dated certificate, and a survey where 46% shipped AI code that failed in production and 69% of them stayed confident. Three ERP stories and what each changes about testing.

    2 October 2026 · 6 min read

  • ERP & Enterprise

    Business Central's Record-and-Replay Test Tool Reached GA This Week. It Is Not UAT.

    Microsoft moved the Business Central page scripting tool from preview to general availability with version 29, thirty months after the preview opened, adding multi-row grid selection and dialog-text validation — neither of which the reference documentation describes yet. What a recording actually proves, what it is documented not to reach, and why a replay pipeline is a regression asset rather than an acceptance one.

    5 October 2026 · 6 min read