Reconcile Square in Xero — Match Sales to Bank Deposits

🥦

Reconcile Complete

Xero Bank Statement Format
valid rows

Reconcile your Square account in Xero. Match individual sales to bank deposits, track processing fees, and close your books accurately.

Free preview — then from $5. Save with bundles.
Free preview before you pay
Files never leave your browser
No account needed to start

Download Sample

Sample transactions CSV

Download

Tool Rating

4.6 / 5 (63 votes)

Reconciliation Questions Answered

How do I set up a Square clearing account in Xero?

Create a new bank account in Xero (Accounting → Bank Accounts → Add Bank Account). Name it 'Square' and select 'Other' as the account type. This acts as a holding account for Square transactions.

How often should I reconcile?

Most businesses reconcile monthly. High-volume POS businesses may reconcile weekly. The key is consistency — reconcile at the same time each period.

Why doesn't my bank deposit match Square sales?

Square deducts fees, refunds, and tips before depositing funds. Your bank deposit shows the net payout, not gross sales, which is why amounts don't match your sales invoice.

How Reconciliation Works

1

Export from Square

Dashboard → Reporting → Transactions → Export CSV

2

Upload and Configure

Upload Transactions Export CSV and choose Bank Statement format

3

Preview and Download

Review converted data, download Xero-ready file

4

Import to Xero

Accounting → Bank Accounts → Select Account → Import Statement

Discrepancies are highlighted with clear match and mismatch indicators — review differences at a glance.

How People Use This

Square deposits arrive 1-2 business days after the sale in Australia, so every month-end close had timing mismatches between what Xero showed and what the bank had cleared. I was manually adjusting pending authorizations for each client. The clearing account workflow fixed this completely — individual sales go in as they happen, deposits match when they land, and the clearing account balance tells me exactly what's still in transit.

Heather C.
Xero-Certified BAS Agent · AU region, 9 Square POS clients

My bank showed a $2,145 deposit from Square but my daily sales reports said $2,310. The $165 gap was processing fees on 180 card transactions, but Xero lumped it all into one unreconciled line. Splitting fees into separate expense rows finally made the numbers add up. My accountant stopped sending me weekly 'please explain' emails.

Tobias N.
Cafe Owner · Single location, 600 transactions/week, NZ

Cash sales were the hidden problem. Two of my clients had Square cash transactions flowing into their clearing account even though Square never deposited that money. The exclude-cash filter removed those entries and eliminated a recurring GBP 400-800 discrepancy that had been throwing off their bank reconciliation for months. We went from a 94% match rate to 99.7% overnight.

Felicity A.
Bookkeeper & Xero Advisor · UK practice, 6 hospitality clients

Each location has its own fee structure and deposit schedule. Reconciling four Square accounts against one bank feed in Xero was a full-day exercise at month-end. Now I export each location's transactions, convert with fee splitting, and import to the Square clearing account with location references in the descriptions. My accountant matches deposits to locations in minutes and our month-end close moved from day 15 to day 5.

Daniel M.
Multi-Location Franchise Operator · 4 Square terminals, AU, $280K/month combined

Why Square Reconciliation Is Challenging

The Bundled Deposit Problem

Square deposits aggregated amounts to your bank — multiple sales bundled into single deposits. Your bank shows $500 deposited, but that could be 30 individual transactions minus fees. Professional bookkeepers solve this with a "Square Clearing Account" that receives individual transactions while your bank receives the aggregated deposits.

How This Tool Helps

We convert Square Transactions to Xero bank statement format with fee splitting: individual sales as positive amounts, fees as separate negative amounts, and refunds handled correctly. Import to your Square Clearing Account in Xero, then reconcile deposits as transfers. When done correctly, the clearing account balance should match Square's pending balance.

Secure, Private Reconciliation

Row-by-Row Matching

Records matched row by row. Mismatches surfaced clearly for review.

Runs in Your Browser

Both files compared in your browser. Nothing uploaded to any server.

GDPR Compliant

No data stored or transmitted. Full EU privacy compliance.

More credits - more savings

Buy bundles and get up to 60% off. Perfect for recurring monthly conversions.

Field Mapping

How Square Transactions fields map to Xero Bank Statement

Square Transactions Source Value Xero Bank Statement Target Value Note
Date 2026-01-15 Date 2026-01-15 Transaction date
Total Collected 102.20 Amount 102.20 Gross amount charged (single mode: Net Total)
Fees -2.90 Amount -2.90 Processing fees (two-line mode only, negative)
Customer Name John Smith Payee John Smith Customer name or 'Square Sale'
Transaction ID abc123def456 Reference abc123def456 Unique transaction identifier
Description In-store purchase Description In-store purchase Sale description with card info

Why Reconcile Your Data First?

Transaction-Level Detail

Every sale, tip, and fee as individual bank statement lines.

Fee Tracking

Square processing fees extracted as separate expense transactions.

Deposit Matching

Match individual transactions to aggregated bank deposits.

Month-End Ready

Clearing account zeroes out when all deposits are matched.

Audit Trail

Transaction IDs preserved for tracking back to Square.

Browser Processing

Financial data processed locally. Never sent to external servers.

Data Transformation

Each Square transaction becomes 1 or 2 bank rows depending on mode

Input Square Transaction

One POS transaction with sales, fees, tips, taxes

Key columns: Transaction ID, Date
1:N — One input row creates multiple output rows
Output Xero Bank Line 1 or 2 rows per input

CR Sale Line Money received from customer
DR Fee Line (two-line mode only) Square processing fee (negative)
Net Total = Total Collected + Fees (fees are negative)

Common Bank Statement Import Errors

Issues you might encounter when importing Transactions Export data to Bank Statement - and how we solve them

Cash Transactions in Clearing

Cash doesn't flow through Square to bank

Enable 'Exclude cash transactions' option

Cash should go to separate Cash on Hand account

Fees Have Wrong Sign

Square exports fees as negative, Xero needs negative for outflows

We preserve the negative sign automatically

Check that fee rows show negative amounts

Transaction vs Deposit Date

Bank shows deposit on different day than transaction

This is normal - Square batches daily, deposits next day

Match by Deposit ID or batch deposits together

Gift Card Recorded as Revenue

Gift card sales are liability, not revenue

Enable gift card detection for proper handling

Post to Gift Card Liability account, not Sales

Frequently Asked Questions

Your data never leaves your device. All files are processed entirely in your browser using client-side JavaScript - no data is stored on our servers or sent anywhere. There's no account to hack, no database storing your files, and no API connections to your bank or accounting software. You upload, convert, download, and we forget it immediately.
No payment or signup required. You can upload your file, see a free preview of the conversion results, and verify everything looks correct before paying anything. If it doesn't work for your files, you haven't wasted any money. We only charge when you're satisfied and ready to download the final converted file.
You can, but free scripts and AI often miss edge cases that break real-world data: missing SKUs, currency formatting quirks, tax calculation errors, or date format mismatches. We have battle-tested validators specifically designed for accounting software imports that catch these issues before they corrupt your books. Plus, you get instant browser-based conversion without installing Python or managing dependencies.
Create a new bank account in Xero (Accounting → Bank Accounts → Add Bank Account). Name it 'Square' and select 'Other' as the account type. This acts as a holding account for Square transactions.
Cash sales aren't deposited by Square — you handle that cash directly. Including them in the clearing account would create a mismatch since that cash never flows through Square's deposit system.
After processing all transactions and matching all deposits, your Square Clearing Account balance in Xero should approach zero (minus any pending deposits). Any significant difference indicates missing transactions or unmatched deposits.
Tips are included in the Total Collected and deposited to your bank. By default, we include tips in the sale amount. You can separate them if you track tips differently.
Most businesses reconcile monthly. High-volume POS businesses may reconcile weekly. The key is consistency — reconcile at the same time each period.
Square deducts fees, refunds, and tips before depositing funds. Your bank deposit shows the net payout, not gross sales, which is why amounts don't match your sales invoice.
Gross payout is your total sales; net payout is what hits your bank after Square deducts fees, refunds, and adjustments. Xero reconciliation requires understanding this difference.
No, editing or deleting the Square Balance clearing account will cause your integration to fail. This account must remain unchanged for sync to work properly.
Refunds are bundled into your Square payout alongside fees and sales. They don't appear as separate line items unless you use an automation tool to break them out.
Square integration can only back-sync data for 30 days. If you need older transactions, you'll need to manually enter them into Xero.