So we've automated the work... Now someone has to approve all of it.
Should AI be allowed to update ERP data without a human approving every change? Yes. I think it should.
Because if the ambition is to have AI generate huge amounts of work and then sit a person in front of it clicking "approve", we've aimed too low. We may have made each task quicker. We may also have created enough tasks to keep that person occupied forever. This is where the conversation about AI in ERP gets frustrating. Someone says "human in the loop" and everyone relaxes, as though we've settled the difficult part. But have we considered what that human is actually doing day-to-day? Are they checking information the system couldn't verify? Authorising expenditure? Resolving a discrepancy?
Or are they working through a queue that needs to be empty by 5pm?
Take supplier invoices. Actual financial records, with consequences when you get them wrong. Suppose we build a process where AI reads an invoice and extracts the supplier, purchase order reference, quantities and prices. The ERP then checks those details against an authorised purchase order and the goods receipt. It checks the calculations, looks for duplicates and applies the business's agreed matching rules.
The purchase was authorised. The goods arrived. The invoice matches. Then we put it in a queue for someone to approve. What are we asking them to decide that hasn't already been decided?
If they're checking the extraction against the original PDF, that's a specific job. We need to understand which extraction errors could slip through the other checks, test for them and establish whether the process is reliable enough to operate without that review.
If they're approving an unexpected charge, that's a commercial decision. Put the discrepancy in front of them, with the information they need to resolve it.
But if they're opening a correctly matched invoice to confirm that it matches, we should be able to explain why we're paying someone to do that on every transaction.
"Because AI was involved" isn't much of an explanation. And saying "bEcAuSe We NeEd ThE hUmAn In ThE lOoP" is not a good enough answer, and not the right definition of what we mean.
Give AI the document interpretation work and use ordinary system rules to enforce the conditions for posting. The AI doesn't get to invent a tolerance, waive a missing receipt or decide that a different bank account is probably fine. Invoices that meet the conditions move through. Missing receipts, unexplained charges and ambiguous references go to someone who can resolve them. Payment authorisation remains a separate decision. That's a proper piece of automation. It finishes some work rather than dumping it back on the human to "check". It still leaves plenty for people to do - someone has to investigate why the supplier invoiced fifty units when the warehouse received forty. Someone has to decide whether an extra carriage charge is acceptable.
But if we think everything needs the human in the loop to check AI work... Imagine a thousand invoices a day that pass all the agreed checks and we add thirty seconds of mandatory review to each one. Congrats, you've created eight hours and twenty minutes of work. That's before breaks, phone calls or investigating anything that actually needs investigating. And if thirty seconds isn't enough to perform a meaningful check, the cost is higher. If the person is just glancing at the screen and clicking approve, we need to be honest with ourselves about how much protection we're buying.
I think we give the presence of a person too much credit. We scrutinise the possibility that AI might make a mistake, then put a tired person with six hundred records left in their queue into the design as though their attention is unlimited. Their time ends up in the business case as a saving and in the workflow as a requirement. Someone should reconcile those two things.
None of this means a successful demonstration earns an AI process unrestricted access to the accounts payable ledger.
Getting to autonomous processing takes work. You need representative invoices, including the awkward ones. Poor scans. Credit notes. Different units of measure. Documents where the numbers look plausible but mean something different.
You need to know what happens when the process fails, including when it fails in a way that the matching checks don't catch. You need a record of what changed and a way to stop further processing while you investigate.
And someone needs to own the decision that the process is good enough for its defined scope. That is where I want the effort to go.
Reviewing every result can be useful while you're establishing whether the system works. Keep it narrow at first. Compare the results with properly checked examples. Work out which cases are suitable for automatic processing and which should continue to require attention. But give that initial review stage an exit condition - a "success metric".
What evidence would let us stop checking every matched invoice? Who accepts that evidence? What would cause us to put review back in place? Without answers, the temporary safeguard becomes somebody's permanent job.
Granted, there'll be processes where individual approval is still the right thing to do. Preparing the information for a person can still save time. I don't need every AI project to run unattended to consider it worthwhile but, I do want the approval step to justify its existence. The consequences of the action and the evidence available should determine the control.
And we should measure the whole job. How many invoices reached posting correctly? How much human time did they consume? How much rework followed? Did the exceptions reach someone soon enough to be resolved? The number of documents the AI read is a much less interesting figure if they're all still waiting for somebody else.
So yes, I want AI updating ERP data without someone approving every transaction, within a scope we've deliberately defined and tested.
We've already made decisions about what the business may buy, who can authorise it and what counts as an acceptable match. A well-designed process should be able to act on those decisions.
Otherwise, we've spent a great deal of money making the approval queue fill up faster.
I've got a fairly low tolerance for ERP projects that end with someone inheriting another queue.