Payroll Assurance Agent
Checks the payroll run before the money leaves
- 8hard rules
- Things it must never do, enforced in every run
- 5handover rules
- Conditions where it stops and gives the work to a person
- 12output fields
- A structured result, not a paragraph you have to re-read
- ≤7steps per run
- Bounded work: at most 5 tool calls, enforced by the runtime
Read-only by design. This agent has no path to sending, spending, publishing or committing anything. Where that limit is the product, removing it would remove the reason to trust the output.
Overview
Payroll is the largest recurring payment most organisations make, it runs on a deadline that cannot slip, and it is almost never reviewed before it is paid. The review happens afterwards, when an employee notices — and only for errors in their favour, because nobody reports being overpaid.
That asymmetry is the problem. Underpayments get corrected because somebody complains. Overpayments accumulate silently: the leaver still on the run, the allowance that outlived the role it was attached to, the salary change applied twice, the contractor paid through payroll and through accounts payable in the same month.
Payroll software calculates correctly — that is not the failure. It calculates correctly from inputs nobody checked, and those inputs come from a different system owned by different people.
This agent reads the run before it is paid. It compares every line against the contract, against the previous period, and against who actually joined and left, and reports what changed without an explanation. Timing is the entire value: a finding the day before is a correction, and the day after it is a conversation about reclaiming money someone has already spent.
It pays nothing, changes nothing, and never sees a bank detail it could act on.
Benefits
Errors caught while they are still cheap
Before the payment, not after the complaint.
No awkward clawback conversations
The kind that damage trust far beyond the amount.
The same check every month
Including the month the payroll manager is on leave.
What it does
Runs before the money leaves
The day before is a correction. The day after is asking an employee to return money they have already spent.
Compares against last period, line by line
Every change in pay, and whether anything on record explains it. Unexplained is the finding.
Catches the leaver still being paid
Nobody reports being overpaid, so this one never surfaces on its own.
Finds duplicate and double-counted pay
A change applied twice, or someone paid through payroll and accounts payable in the same month.
Checks pay against the contract
Not against what was paid last time — that only proves the error is consistent.
Pays nothing, changes nothing
It has no access to a payment file or a bank detail, and it never will.
What this changes
What this changes about your week
- It takes over
- Checking a payroll run against contracts and last month, line by line, before approval.
- Done today by
- Nobody. It is checked afterwards, when an employee complains.
- How often
- Monthly, on a deadline that cannot slip.
- Typical manual effort
- A full day to do properly, on the one day nobody has a full day.
Why HR & People in particular. Errors are only reported in one direction — nobody reports being overpaid. The leaver still on the run, the allowance that outlived the role, the change applied twice: all silent, all recurring.
Runs unattended
Started by you or by an event, and it finishes on its own. Nothing waits for someone to be at a desk.
The same standard every time
The two-hundredth item is held to the bar the first one was. Consistency is the part people cannot sustain.
It cannot act on its own
Payroll Assurance Agent has no path to sending, spending or committing. That limit is why its output is safe to act on.
How it runs
This agent runs server-side through the PROMIVO runtime. Each run is logged step by step and every tool call is permission-checked before it executes.
- 1InputValidated against the agent input schema
- 2Modelclaude-opus-5 with automatic fallback
- 3Toolsextract_structured_data
- 4PermissionsRuns READ actions automatically; anything higher waits for approval
- 5OutputStructured result matching the output schema
- 6LoggingTokens, duration and every step recorded
Demo
Demo dataIllustrative sample output, abridged.
Input
{
"period": "September 2026",
"currency": "USD",
"draftRun": []
}Output
{
"escalate": true,
"runTotal": 1284300,
"disclaimer": "A review of a draft run against your own records. Nothing has been paid, approved or altered, no payment details were accessed, no tax or statutory position has been assessed, and this is not a statement that the run is correct.",
"duplication": [
"EMP-310 appears in the run and in the September accounts payable file for the same work. One of the two is a duplicate payment."
],
"couldNotCheck": [
"Contracted hours for 3 employees — no contract supplied."
],
"staleAllowances": [
"A site allowance of 450 is still attached to EMP-176, who moved off site in March. Recurring, and nobody will report it."
],
"escalationReason": "A leaver is in the run two months after their leaving date, and one person appears to be paid twice for the same period.",
"paidAfterLeaving": [
{
"amount": 4820,
"leftOn": "2026-07-31",
"reference": "EMP-118"
}
],
"unsupportedHours": [
"38 hours of overtime across 4 people with no approval record behind them."
],
"contractMismatches": [
"EMP-091 is being paid 300 a month above the contracted rate. It has matched the previous run for eleven periods, which is why nobody has questioned it."
],
"unexplainedChanges": [
{
"now": 6400,
"previous": 5200,
"reference": "EMP-244",
"changePercent": 23.1,
"recordChecked": "No contract change, promotion or rate change on record for this period."
}
],
"movementFromLastPeriod": 21400
}Requirements
Integrations
No integrations required.
Before you start
- The draft payroll run for the period
- The previous period's run
- Contracted pay, allowances and hours per employee
- Joiners and leavers with their dates
- Requires the All-Access plan or higher
Use cases
Pre-run review
The standing check between the draft run and approval.
After a reorganisation
When contracts changed and the run may not have followed.
Before an audit
The controls evidence, produced monthly rather than reconstructed.
A new payroll provider
Proving the first runs match the contracts they came from.
Pricing
All-Access
Billed monthly through your PROMIVO subscription. Cancel at any time.
Runs consume your plan allowance for agent executions and tokens. See plan limits
FAQ
Does it pay anyone or change payroll?
No. It reads a draft run and reports on it. It has no route to a payment file, a bank detail or the payroll system, and adding one would make it a different and far more dangerous product.
Does it see individual salaries?
It must, to do the job. It reports by employee reference rather than by name where references are supplied, and it never discloses one person's pay in a finding about another.
Is this a substitute for the payroll team?
No. It is the second pair of eyes they never get, on a deadline where there is no time for one. Every finding goes to them to judge.
Reviews
Reviews open once customers have run this agent.
Need this agent to work differently?
Tell us what to change and our team will scope a customised version for your business.
Customize this agent