DEV Community

Boris Korol
Boris Korol

Posted on • Originally published at ai-automation.studio

We Reconciled 80,000 Bank Records Overnight. Here's the Exact Workflow.

Published June 2026 · Boris Korol, AI Automation Studio

A UK accountancy practice needed to reconcile more than 80,000 bank records every month. The manual process took two full working days. We built an automation using Make.com and the Xero API. It now runs overnight.

This article explains exactly how the workflow is structured, what each component does, and what a practice needs to replicate it.


The Problem With Manual Bank Reconciliation

Bank reconciliation is one of the most time-consuming tasks in accountancy. For practices handling multiple clients, the volume multiplies fast.

The firm we worked with had a specific challenge: a high volume of transactions across multiple accounts, all needing to be matched, categorised, and reconciled against bank statements before month-end reporting.

Their team was spending two full working days per month on this task. That is roughly 16 hours of skilled staff time on work that is repetitive, rule-based, and automatable.

Manual reconciliation carries real risk beyond the time cost. Tired staff miss mismatches. Small errors compound. The closer you are to a deadline, the less time there is to investigate discrepancies. In a practice billing by the hour, that time is either absorbed as overhead or passed to clients who are increasingly resistant to paying for it.

For UK accountancy practices, this is not a niche problem. Making Tax Digital (MTD) is adding pressure to keep records cleaner and more current. Clients expect faster turnaround. Margins are tighter. The case for bank reconciliation automation in the UK is straightforward: this is skilled work being consumed by a task that software can handle.


The Workflow: Make.com + Xero API + Google Sheets

The automation runs across three tools: Make.com (formerly Integromat), the Xero API, and Google Sheets. No custom code. No enterprise software. The complete build took under two weeks.

Here is the workflow, step by step.

Step 1: Pull unreconciled transactions from Xero

Make.com connects to the Xero API using OAuth 2.0. A scheduled scenario runs nightly and pulls all new bank transactions from the client's connected accounts.

The Xero Bank Transactions endpoint returns each transaction with its date, amount, payee, reference, and status. We filter for records with a status of UNRECONCILED.

This step replaces the manual export from Xero that the team was running each morning before they could begin any matching work.

Step 2: Match transactions against the bank statement feed

Xero's bank feed pulls statements from the client's bank directly. The API exposes these via the Bank Statement endpoint.

Make.com iterates over each unreconciled transaction and attempts to match it against open statement lines using three criteria: amount (exact match), date (within a three-day window), and payee reference (fuzzy match using a text comparison module).

Transactions that meet all three criteria are flagged as high-confidence matches. Those that meet only one or two are flagged for human review.

The first version of the workflow used only amount and date matching. That produced a 60 per cent auto-reconciliation rate. Adding the fuzzy payee reference check pushed this to 85 per cent.

Step 3: Auto-reconcile confirmed matches in Xero

For transactions matched with high confidence, Make.com calls the Xero API to reconcile them automatically. This uses the PUT BankTransactions endpoint with IsReconciled set to true.

This step is where the volume is handled. For this client, approximately 85 per cent of transactions met the auto-reconcile threshold. That is around 68,000 records out of 80,000 processed without any human intervention in a single overnight run.

Step 4: Route exceptions to a Google Sheet for review

Transactions that do not meet the matching threshold are written to a Google Sheet. Each row includes the transaction details, the closest match found, and the reason it was flagged: amount discrepancy, date gap, or missing payee reference.

A member of staff reviews this sheet each morning. Instead of working through 80,000 records manually, they are looking at an exceptions list already sorted by confidence score.

The daily review dropped from two full days to a few hours.

Step 5: Log, summarise, and alert

Each nightly run writes a summary to a second Google Sheet: total transactions processed, number auto-reconciled, number flagged for review, and any API errors.

A Make.com email module sends this summary to the practice manager each morning before they start work. If the API returns an error or the match rate drops below a configured threshold, an alert fires to a Slack channel. The team knows immediately if something needs attention, without checking a dashboard.


Results

After the first full month of operation:

  • 80,000+ bank records processed in a single overnight run
  • 85 per cent auto-reconciled without human review
  • Two days of manual work reduced to a morning exceptions review
  • Zero reconciliation errors attributed to the automation across the first three months of production use

The practice did not change their Xero setup, switch accounting software, or hire additional staff. The automation sits on top of the systems they already use.


What This Means for Your Practice

Not every practice has 80,000 records a month. The workflow scales down without any structural change.

If your team is spending more than half a day a month on bank reconciliation, the pattern above applies. The specific triggers, matching rules, and thresholds are configured for your transaction volume and bank feed setup, but the architecture is the same.

The tools are the same: Xero API, Make.com, and a spreadsheet for exceptions. A practice that already uses Xero and Google Workspace has everything needed to run this.

AI Automation Studio works with UK accountancy and audit practices on this type of workflow. Bank reconciliation is one of three core automations we build alongside MTD compliance processes and payroll bureau workflows. The approach is always the same: one workflow at a time, with measurable output before expanding scope.


Frequently Asked Questions

Does this work with all UK banks connected to Xero?

It works with any bank that provides a live feed to Xero. That covers most major UK business banks including Barclays, HSBC, Lloyds, NatWest, and Starling. If the client's bank provides a statement feed in Xero, the automation can process those transactions.

What happens if the Xero API goes down or changes?

Make.com handles API failures by retrying failed operations and logging errors. The nightly run flags any API issues in the morning summary email and fires a Slack alert if configured. The practice can reconcile manually in Xero exactly as before. The automation is additive: it does not replace the underlying Xero workflow, it runs on top of it.

Where is client financial data stored?

The Google Sheet is owned by the practice and sits within their own Google Workspace. Make.com does not store transaction data beyond the duration of the scenario run. The Xero connection uses OAuth 2.0, so no credentials are held in the automation. All data stays within systems the practice already controls and is responsible for.


Book a 20-Minute Automation Snapshot

If your team is still reconciling bank records manually, a short conversation is usually enough to establish whether automation is the right fit and what the build would involve.

Book a 20-minute Automation Snapshot with AI Automation Studio: https://ai-automation.studio/call

No pitch. No obligation. We look at one workflow, identify the opportunity, and give you a clear picture of what it would take to build it.


Boris Korol is the founder of AI Automation Studio, a London-based automation consultancy for UK accountancy and audit practices, specialising in bank reconciliation, MTD workflows, and payroll bureau automation. Connect on LinkedIn.

Top comments (0)