AI Agents for Transaction
Review for Tax
Sampling existed because reading everything was impossible. It is not any more, and most review programmes have not been redesigned.
- Tax transaction review was a sample exercise because a person could only read so much. Reading the full population turns a verdict into a rate and makes the cause visible.
- Tax coding is unusually repetitive, which is exactly the condition under which a break in the pattern is worth reading.
- A missing tax code is a fact and an unusual one is a judgement. Sharing a list is how review lists stop being worked.
- Ranking by how unusual a line is sends reviewers to the strangest items rather than the most valuable. Exposure multiplied by measured hit rate is the useful order.
- The first two periods of any ranked programme are calibration, because hit rate has to be learned from recorded outcomes.
AI agents for tax transaction review read the whole population rather than a sample. ChatFin builds a peer group from vendor, account, description pattern, cost centre and amount band, then returns the lines whose tax treatment does not look like their peers.
The output is a short ranked list, not a verdict on each line. ChatFin does not determine treatment, which stays with your tax function or your tax engine. It decides where a person should spend an afternoon, and it separates missing values from genuine anomalies because those need different work and different owners.
Sampling existed because reading everything was impossible
Tax transaction review has always been a sample exercise. A reviewer takes a set of invoices, checks the treatment, and extrapolates. That design was forced by what a person can read, and it no longer is.
| Sample review | Full population review | What changes |
|---|---|---|
| A few hundred lines | Every line | A rate rather than a verdict |
| Chosen by value or at random | Chosen by nothing | No selection bias to argue about |
| A finding is an instance | A finding is a pattern | The cause becomes visible |
| Annual | Continuous | Corrected while it is recent |
| Extrapolated exposure | Measured exposure | No statistical argument with anyone |
ChatFin reads the whole population. The output is not a verdict on each line, which would be determination and is not what this does. It is a short list of the lines that do not look like their peers, ordered by what a review of them is worth.
ChatFin reads the full transaction population and returns the lines that differ from their peers, ranked by exposure. It does not determine treatment.
Tax coding is repetitive, which is what makes an outlier mean something
The same vendor, the same account and the same kind of purchase produce the same tax code thousands of times. That regularity is the whole basis for outlier detection, and it is stronger in tax data than almost anywhere else in finance.
ChatFin builds the peer group from vendor, account, description, cost centre and amount band, and labels a line with no peer group as lower confidence.
Gaps are not anomalies and should never share a list
A missing tax code is a fact. An unusual tax code is a judgement. Putting them on the same list at the same priority is how a review list stops being worked, because half the items need no thought and half need an expert.
| Gap | Why it is not a judgement | Who clears it |
|---|---|---|
| No tax code on the line | There should be one | Finance, immediately |
| No vendor tax registration | Either it exists or it does not | Procurement or AP |
| No place of supply recorded | A required field was skipped | Finance |
| No supporting document | The invoice image is missing | AP |
| Registration expired | A date has passed | Vendor master |
Every row there is closed by looking something up, not by deciding anything. ChatFin separates gaps from anomalies into two lists with two owners, and reports the gap list first because it clears fastest and shrinks the anomaly list as a side effect.
Rank by what the review is worth, not by an abstract score
An outlier engine that ranks by how unusual something is will send reviewers to the strangest lines, which is not the same as the most valuable ones. The useful order is exposure multiplied by the chance the line is actually wrong, and the second term has to be learned.
Record the outcome of every review
Whether the reviewer agreed the line was wrong. Without this the ranking never improves and the second and third year of the programme are no better than the first.
Learn the hit rate per pattern type
A vendor rate change might be a real error four times in five. An unusual cost centre combination might be a real error once in fifty. Those two should not be adjacent on a list.
Multiply by the amount at stake
Exposure is what makes a review worth a person's time, and it is the term most often left out entirely.
Cap the list
A ranked list longer than the team can work is a backlog. It is better to work the top properly and report what was not reached than to publish everything and have none of it read.
ChatFin does all four. The first two periods are calibration rather than results, and it says so rather than presenting an unlearned ranking as though it were tuned.
ChatFin ranks by exposure multiplied by the measured hit rate for that pattern on your own data, and treats the first two periods as calibration.
Where this underperforms
Three, and the first is the boundary from the pillar.
Deeper in tax
Where the rest of the tax work sits.
The pillar above this
AI for tax data and reconciliation
Sibling hubs
Tax data preparation · Tax reconciliation and filing · 1099 preparation · Exception identification · Tax provision
Neighbouring functions
Accounts payable · Finance data and operations
Questions tax and finance teams ask
Does this decide the tax treatment?
No. Determining a rate or whether a supply is in scope belongs to your tax function, your adviser or your tax engine. This reads the population and identifies which lines are worth a person looking at, which is a different job and the one that consumes the hours.
How is a peer group built?
From behaviour rather than from a rule. Vendor, account, description pattern, cost centre and amount band together define a population, and most lines sit comfortably inside one. A new vendor has no peer group, so it falls back to the account and description population and is labelled lower confidence rather than silently scored.
Why separate blanks from anomalies?
Because they need different people. A missing tax code, a missing registration or an expired one are closed by looking something up. An unusual code needs somebody who can judge treatment. Mixed together, half the list needs no thought and the whole list stops being worked.
How should the review list be ordered?
By exposure multiplied by the measured chance the line is actually wrong. Ranking by how unusual something is sends reviewers to the strangest lines rather than the most valuable ones. ChatFin learns hit rate per pattern type from recorded outcomes, so the first two periods are calibration.
Read everything, return the short list.
ChatFin reads the full transaction population, builds peer groups from behaviour, and returns the lines whose treatment does not match comparable lines.
Gaps go on their own list with their own owner, and the anomaly list is ranked by exposure multiplied by the hit rate measured on your own data.
Bring one year of purchase transactions with their tax codes.
Book a demoSection photograph: a person typing on a laptop beside cash and a calculator, sourced from Pexels and used under the Pexels licence.
All images are served from the Pexels content network. No third party product screenshots, vendor logos or licensed media are used on this page.
Bring a year of transactions.
We will run the full population through ChatFin and come back with the blanks, the outliers and what a review of each is actually worth.