Bank reconciliation is the chore that eats a bookkeeper's week and rewards none of the effort. Most lines match an invoice cleanly: same amount, the invoice number sitting right there in the bank narration. The work is finding that match among hundreds of transactions, over and over, then chasing the handful that do not line up. The easy ninety percent is pure pattern-matching. The hard ten percent is where judgment belongs.
A reconciliation agent does the searching. It compares each bank line to your outstanding invoices and bills in Xero, proposes the best match with its reasoning, and pushes the messy exceptions into a review queue. It never confirms the reconciliation itself and never touches money. A human approves, because that is the step that turns your books into a record of fact.
What this agent does
As bank lines arrive through your Xero bank feed, the agent reads them, finds candidate invoices and bills, ranks the matches, and presents a reconciliation suggestion for each. Clean, high-confidence matches are queued for one-click human approval. Anything ambiguous is flagged with the agent's best hypothesis and the reason it is unsure.
It does not create payments, edit invoice totals, or finalize a reconciliation on its own. Those limits are deliberate, and they are why an agent can be trusted near a ledger at all. For the general principle, see what an AI agent can actually do and how to limit agent actions.
How matching works
Matching is a scoring problem, and the agent is explicit about every signal it uses.
- Amount. An exact amount is the strongest single signal; a near amount is a flag, not a match.
- Reference. An invoice or bill number in the bank narration pushes confidence high.
- Payee. Name similarity between the bank contact and the invoice contact.
- Date proximity. Payments usually land near the due date, so timing breaks ties.
Exact amount plus a matching reference is the gold case and gets queued for quick approval. A close amount with no reference stays low confidence and waits for a human. This is the same matching discipline behind a QuickBooks reconciliation agent; only the platform changes.
Handling exceptions
The exceptions are where reconciliation actually gets hard, so the agent treats them as first-class, not as failures.
- Part-payments. A customer paying half an invoice gets recognized as a partial, not mismatched.
- Batched payments. One deposit covering several invoices is proposed as a grouped match.
- Fees and FX. A payment short by a processor fee is flagged with the likely shortfall named.
- Overpayments and prepayments. Surfaced as a credit to resolve, not silently absorbed.
Each exception lands in a review queue with the agent's hypothesis attached. The human resolves the genuinely ambiguous cases, which is exactly where their time is worth spending. The categorization muscle here overlaps with expense categorisation and receipt categorisation.
Permissions and limits
An agent near the books gets the tightest scope on the site.
- Read. Bank transactions, outstanding invoices and bills, contacts, and bank rules.
- Write, narrowly. Propose a reconciliation match for approval and add a note.
- Never granted. Payment initiation, invoice editing, contact deletion, or chart-of-accounts changes.
- Audit everything. Every suggestion and approval is logged with its reasoning.
The same credential hygiene you would use for any sensitive connection applies, as covered in giving an agent access safely.
Why a human approves
Reconciliation is not data entry; it is the assertion that this money is this invoice. Get it wrong and your revenue, your tax position, and your aged-receivables report all inherit the error. So the human approval step is not bureaucracy, it is the control that makes the speed safe. The agent makes approval a one-second glance instead of a five-minute search, and that is the entire value.
Once a clean match type has proven itself over a few cycles, you can raise the confidence threshold at which the agent auto-queues for batch approval. You still approve; you just approve a sensible batch at once. The invoice side of the relationship, chasing what has not been paid, is the invoice chasing pattern.
Common mistakes
- Auto-reconciling low-confidence matches. A wrong match is harder to find than an unmatched line.
- Forcing exceptions into a match. Part-payments and fees deserve a flag, not a guess.
- Granting payment scope. The agent never needs it; do not give it.
- Hiding the reasoning. An approver who cannot see why cannot really approve.
- Skipping the audit log. Without it, a good system is indistinguishable from a guess.
Frequently asked questions
Does the agent reconcile transactions in Xero automatically?
It proposes matches and explains each one, but a human approves the reconciliation. The agent compares incoming bank lines to outstanding invoices and bills by amount, reference, payee, and date, then presents a ranked suggestion. Reconciliation is the moment your books become a record of fact, so a person confirms it. The agent removes the searching, not the judgment.
How does the agent match a bank line to the right invoice?
It scores candidates on exact amount, invoice or reference number in the bank narration, payee name similarity, and date proximity. An exact amount plus a matching reference is a high-confidence match. A close amount with no reference is low confidence and gets flagged for a human, not auto-applied. Every suggestion shows the signals behind it.
What happens when a payment does not match cleanly?
The agent flags the exception rather than forcing a match. Common cases are part-payments, a single payment covering several invoices, bank fees shaving the amount, and customer overpayments. It groups these into a review queue with its best hypothesis attached, so a human resolves the hard ten percent instead of hunting through the easy ninety.
Can the agent move money or change invoices?
No. It has no payment ability and does not edit invoice amounts. Its write actions are limited to proposing a reconciliation match for approval and adding a note. Anything that changes a financial record or moves funds stays with a human. That boundary is the whole point of trusting an agent with the books.
How is this different from a QuickBooks reconciliation agent?
The matching logic is the same; the platform and its API are different. A Xero agent works against Xero bank feeds, invoices, and bank rules; a QuickBooks agent works against the QuickBooks equivalents. If you run both ledgers, you run two agents with the same discipline: propose, explain, and leave the approval to a person.
Three takeaways before you close this tab
- Propose, do not confirm. Approval stays human.
- Exceptions are the job. Queue them, do not force them.
- No money scope, ever. That boundary earns the trust.
Sources
- Xero Central, "Reconcile your bank account", retrieved 2026-06-02, central.xero.com/reconcile-your-bank-account
- Xero Developer, "Accounting API: bank transactions and invoices", retrieved 2026-06-02, developer.xero.com/accounting/overview
- Xero Central, "About bank rules", retrieved 2026-06-02, central.xero.com/create-a-bank-rule
- Aryan Agarwal, "Gravity finance-agent guardrails", internal v1, May 2026, About