Statemint

Xero

Reconciling a supplier statement against Xero: the logic that doesn’t change

A supplier emails a statement, and the balance on it is not the number Xero shows for that contact. Menus and report layouts in Xero change from time to time; the accounting underneath does not. This guide sticks to that underlying logic — what a supplier balance is made of, which kind of report shows the lines behind it, and where differences usually come from — so it stays useful after the next redesign.

Report and menu names below are taken from Xero Central at the time of writing (October 2026). Labels can change and can vary by region; if one has moved, search Xero’s help for the report name. For the general, software-neutral method, see supplier statement reconciliation, step by step.

Two views of one relationship

The supplier statement is the supplier’s record of your account: what they have invoiced, what payments and credits they have applied, and the balance they believe you owe. Your Xero payables are your record of the same relationship. Sage describes AP reconciliation as comparing the invoices, payments, credits and balances in your AP records with the information your vendors provide (Sage Advice US). AccountingTools draws the same line: vendor statement reconciliation compares your records to supplier statements to find unrecorded invoices, unapplied credits and timing differences (AccountingTools).

Neither document is automatically right. A difference between them is a list of items to explain, not proof of an error. For why your own aging total and their statement rarely agree at a glance, see Aged Payables vs a supplier statement.

What a supplier balance in Xero is made of

Whatever the screens look like, what you owe one supplier comes from a small set of transaction types on that contact:

So the durable identity is: what you owe = approved bills − payments − credits (credit notes, overpayments, prepayments), as at a date. Xero’s Aged Payables help describes its total in the same terms: outstanding bills, credit notes, expense claims and overpayments as at the report date (Aged Payables Summary report). Prepayments are handled by a separate include/exclude setting on the contact activity reports (Contact transactions reports), so note which way you ran it.

Summary vs line-level reports: pick the right family

You cannot reconcile from a single total. You need the lines behind it. Xero’s reports fall into a few families, and each answers a different question:

Report (name at time of writing) What it shows Use it to
Aged Payables Summary One total per contact, aged, as at a date Spot which supplier balance to look at
Aged Payables Detail Individual outstanding bills, credit notes, expense claims and overpayments as at a date List the open items behind a balance
Supplier Bill Activity Bills, credit notes, overpayments and prepayments for one supplier over a period Get the period activity to compare with the statement
Contact Cash Activity Spend and receive money transactions for one contact over a period Find payments recorded as cash instead of as bill payments
Account Transactions Transactions by account, oldest first, with optional running balance See the ledger view of the payables account for one contact

Sources for each row: Aged Payables Summary, Aged Payables Detail, Contact transactions reports (Supplier Bill Activity and Contact Cash Activity), and Account Transactions. A few details worth knowing:

Exporting these reports to a spreadsheet is covered in supplier statement from a Xero CSV export, and typical column headers are in the export column tip sheet.

The order of operations

The same sequence works whatever the screens look like:

  1. Fix the date, the contact and the currency. Use the statement’s closing date as your “as at” date, the single Xero contact that represents this supplier, and the currency the statement is in.
  2. Pull your side for the same window. Period activity for that contact (a Supplier Bill Activity-type report) and the open items as at the statement date (an Aged Payables Detail-type report). Before running Aged Payables, Xero Central recommends entering your purchase transactions and reconciling your bank accounts.
  3. Prove the arithmetic on both documents. closing = opening + Σdebits − Σcredits, where debits are charges (bills) and credits are payments and credit notes. This is the statement-layout form of Sage’s template identity: closing = opening + invoices received − payments ± adjustments. If either side fails this check, fix the period or the opening balance before matching any lines.
  4. Compare closing balances. If they agree, still spot-check old open items. Two errors can cancel out.
  5. Match by document reference, not amount. Tick each invoice, credit and payment on the statement against your report.
  6. Classify what is left using the table below, then fix only what is genuinely wrong on your side. Query the rest with the supplier.
  7. Write it down. List each item, its amount, whose records it affects, and what happens next. Sage recommends having someone other than the preparer review and sign it off where your team allows.

Illustrative only: statement opening 2,000.00; two invoices 1,200.00 and 300.00; one payment 1,500.00 → statement closing must be 2,000.00. If your Xero side shows 1,700.00 as at the same date, the 300.00 difference is a single item to find — for example, an invoice not yet entered or still in draft.

Where differences usually hide in Xero

The generic causes (timing, missing invoices, unapplied credits, duplicates, errors) are covered in unmatched lines: the six usual causes. Below, each one is mapped to the place in Xero where you would look:

Difference Where to look in Xero
Invoice on statement, not in your balance Check the Draft bills list and any approval queue. Emailed or uploaded bills arrive as drafts and only move to Awaiting Payment once approved.
Payment in your books, not on their statement Timing: note the payment date and reference and ask the supplier to apply it.
Bill still open in Xero although you paid it Run Contact Cash Activity. Xero Central notes it can find cash transactions created during bank reconciliation in place of bill payments.
Credit note or overpayment not reflected Look for credits still awaiting payment. Credits can only be applied to awaiting-payment bills, not drafts or paid bills, and not to bills in a locked period.
Same invoice twice Xero warns when a new bill’s reference and contact match an existing bill, and has a duplicate-bill review. The warning does not block saving, so it is still worth checking.
Supplier split across two contacts Run the reports for each contact, or the payables account in Account Transactions grouped by contact.
Foreign-currency statement Aged Payables totals are in base currency. Compare in the statement’s currency using the foreign-currency amounts.

Sources: Add and track your bills, Add and approve a bill, Contact transactions reports, Apply a supplier’s credit to a bill, Aged Payables Summary, Account Transactions.

Supplier-level matching is one part of close. Tying the total of all supplier balances back to the payables control account is a separate check. AccountingTools treats it as the core of AP reconciliation, and our month-end AP checklist puts both in order.

Frequently asked questions

Which Xero report is closest to a supplier statement?

For one supplier over a period, Supplier Bill Activity: bills, credit notes, overpayments and prepayments for that contact. For a ledger view with a running balance, run Account Transactions on the payables account and filter by contact, with the Debit and Credit columns shown. If a label has moved, search Xero’s help for the report name.

Why doesn’t my Aged Payables total match the supplier’s statement?

Aged Payables is your outstanding position at a date, in base currency. The statement is the supplier’s record. Unapplied payments, bills you haven’t entered or approved, unallocated credits and currency differences all create a gap without either side being wrong.

Should I post an adjustment so Xero matches the statement?

Not as a first step. Trace each difference to the transaction behind it, correct genuine errors on your side with support attached, and query the rest. Sage’s guidance is to trace a difference to the transaction behind it rather than adjust a balance just to make the numbers agree.

How do I check a statement’s arithmetic before matching lines?

Closing should equal opening plus period debits (charges) minus period credits (payments and credit notes). Check both the supplier’s statement and your own extract for the same period first.

If you work from an export

Many bookkeepers already export the activity or detail report to CSV or XLSX and tick it against the supplier’s file in a spreadsheet. That works. If you do it often, a local browser tool can handle the repetitive part. Statemint maps the columns once (it remembers them by header signature), matches your export against the supplier’s file line by line, lists what is left on each side, and prints a running-balance statement that satisfies closing = opening + Σdebits − Σcredits. Files stay in your browser, and nothing is uploaded. It doesn’t connect to Xero, doesn’t run OCR on scanned PDFs, and doesn’t replace your judgment or the control-account tie-out. Text-layer PDFs import on a best-effort basis, so prefer CSV/XLSX when you can. It’s a one-time purchase: $29 early bird, $39 regular.

Sources

Read next

Match your export against the supplier’s file

Drop both CSV/XLSX files in the browser — no upload, no API. Preview is free.

Open Statemint →