Contents
Bank reconciliation is one of the most time-consuming bookkeeping tasks in Xero, and one of the most automatable. The goal is simple: every transaction in your bank account should match a transaction in Xero. Getting there manually means scrolling through bank statements and Xero entries, matching them one by one.
Done well, automation reduces this to minutes of review rather than hours of matching. Here's how to get there.
Why reconciliation takes so long
The problem is usually one of three things:
-
Transactions aren't getting into Xero automatically. If you're importing CSV statements or manually entering transactions, you've added an unnecessary step before reconciliation even begins.
-
Bank rules aren't set up. Xero can automatically categorise and match recurring transactions, but only if you've configured the rules. Without rules, every transaction needs a human decision.
-
Payment flows aren't connected. If your payment gateway (Stripe, PayFast, Yoco, PayPal) isn't connected to Xero, payment reconciliation requires manual cross-referencing between two systems.
Fix these three things and reconciliation becomes fast.
Step 1. Get bank feeds working
The foundation of automated reconciliation is an automatic bank feed. This connects your bank account directly to Xero, pulling in transactions automatically each business day.
Check if your bank supports a direct feed. Many major banks have direct API-based feeds to Xero:
- In South Africa: coverage is good but the list hides an important distinction. Checked in Xero in August 2026, it includes Absa, Capitec Business, FNB, Investec Corporate, Nedbank, RMB Private Bank and Standard Bank. Only three of those are true direct feeds where the bank itself sends the data: Nedbank, Investec and Bank Zero. The rest run through an aggregator that logs into your internet banking on your behalf and reads the transactions off the screen, which is why South African feeds drop more often than businesses expect. To check your own bank, search Xero Central for its name plus "direct feeds": Xero publishes an article for each bank that has one.
- In the UK, Australia, and New Zealand: bank feed coverage is broad; most major banks are supported.
- In the US: coverage varies; some banks connect via Plaid or similar.
If your bank doesn't support a direct feed: Xero supports importing bank transactions via CSV. Some banks offer OFX/QIF downloads that Xero can import directly. This isn't fully automated, but it's better than manual entry: one import per week rather than one entry per transaction. See the Capitec-to-Xero guide for an example of navigating a bank without a direct feed.
Once a bank feed is live, transactions appear in Xero's reconciliation view automatically. No importing, no manual entry.
Step 2. Set up bank rules for recurring transactions
Bank rules tell Xero how to categorise transactions automatically based on patterns. When a transaction matches a rule, Xero categorises it, ready to reconcile with one click (or zero clicks if set to auto-reconcile).
Good candidates for bank rules:
- Software subscriptions (Xero's own subscription, Microsoft 365, cloud hosting fees)
- Payroll payments (same references each pay run)
- Regular supplier payments (same payee, same description)
- Loan repayments
- Bank fees and charges
How to set up a rule:
In Xero, go to Accounting → Bank Accounts → Reconcile → Manage Rules. Create a new rule and define:
- The matching condition: payee name contains [text], or description contains [text], or transaction amount equals [amount]
- The account code to apply
- Whether to auto-reconcile (approve automatically) or just categorise for review
Start with auto-reconcile turned off while you're building confidence in the rules. Once you've confirmed a rule categorises correctly for several months, switch it to auto-reconcile.
Step 3. Connect payment gateways
If you receive payments through Stripe, PayFast, Yoco, PayPal, or another gateway, those payments come into your bank account as aggregated settlements: one lump sum representing multiple individual transactions. Matching those settlements against individual invoices in Xero is where reconciliation gets complicated.
The solution is integrating the payment gateway directly with Xero, so individual payments are recorded in Xero as they occur, then when the settlement lands in your bank account, Xero can match the settlement automatically.
- PayFast: has a native integration on the Xero App Store; see the PayFast-to-Xero integration guide for setup, including the n8n webhook approach if you need more control than the native connector offers
- Yoco: see the Yoco-to-Xero integration guide
- Stripe: has a native Xero integration that records charges and payouts automatically. Note that Stripe operates in South Africa on its "Extended network" status rather than full local support, so an SA-registered business can't onboard the way it can with a local gateway like PayFast or Yoco. Confirm eligibility before building a workflow around it
With payment gateway integration in place, settlements reconcile in seconds because all the individual transactions are already in Xero's ledger.
Step 4. Keep invoices up to date
Reconciliation is easier when Xero's invoices are current. When a payment arrives at the bank, Xero needs a corresponding invoice to match it against.
If invoices are being created late (because the billing process is manual), payments accumulate as unmatched "mystery" credits that require investigation. Automating invoice creation (from job completions, deal closes, or subscription renewals) keeps the ledger current and makes reconciliation far faster.
What the reconciliation process looks like after automation
With bank feeds, rules, and payment integrations in place:
- Open Xero's bank reconciliation view
- Most transactions are already categorised and waiting for approval: one click per transaction, or zero if auto-reconcile is on
- Genuinely new or unusual transactions need a decision: a new supplier, a refund, a one-off purchase
- Reconciliation goes from hours to 15–30 minutes per week
The residual time is judgment work, categorising things that don't match any existing rule. That's the part that appropriately stays human.
Common problems and fixes
"I have hundreds of uncategorised transactions going back months."
Don't try to reconcile everything at once. Start from today and work forward. For historical transactions, do them in batches: oldest unpaid invoices first, then work backwards. Xero lets you filter by date range.
"The same transaction is appearing twice."
Usually caused by a manual entry duplicating an automatically imported transaction. In Xero you can find and remove the duplicate. Set up a bank rule going forward to prevent recurrence, and avoid manually entering transactions that come in via the feed.
"Payments from my payment gateway don't match the bank deposits."
Gateway settlements are net of fees. Whatever percentage-plus-fixed fee your gateway charges per transaction, the settlement lands lower than the sum of invoices it covers. Xero handles this via a clearing account: payments are recorded gross against invoices, fees are recorded separately, and the net settlement matches the bank deposit. This requires a specific setup; the Xero help documentation has guides for each gateway.
"My bank feed disconnects regularly."
Some banks use OAuth connections that expire. When the feed disconnects, Xero stops receiving transactions silently. Check your feed status weekly, and set a calendar reminder if your bank is known for this.
If reconciliation is where most of your month-end goes, that is the core of what automation for accounting firms and finance teams covers.
Spending too long on bank reconciliation every week?
Describe what you're working with and we'll come back with something specific, not a sales call.
Get your free audit →Read next