Accounting exports

How to get receipts into Xero

Every way to get receipts into Xero (the Documents inbox, emailed bills, Hubdoc, the bills CSV import and precoded bank statements), with the columns each needs and the mistakes that double-count expenses.

Published October 5, 20265 min read

Xero has more ways to bring in receipts than most accounting tools. That's useful, but it also makes it easy to choose one that creates the wrong kind of transaction, or the same one twice. Here's what each route does and when to use it.

Short answer Receipt files: send them to Xero's Documents inbox (upload or email) and attach them to the bank transactions they belong to. Or forward supplier invoices to your bills email address. A spreadsheet of expenses: import it with Purchases → Bills → New bill → Import from CSV if they're bills, or as a precoded bank statement for a card or account Xero has no feed for. Don't import expenses that your bank feed already brings in.

Receipt files: Documents inbox

Xero recently renamed Files to Documents, and it now sits under the Accounting menu.

  • Upload: Accounting → Documents → upload to the Documents inbox. Files must be under 25 MB.
  • Email: choose Email to Documents Inbox and copy your organization's unique address. Anything you forward there lands in the inbox.
  • Mobile: the Xero app uploads up to 10 photos or files at once, as separate documents or combined into one.

Then, when you reconcile a bank line, attach the matching receipt from the inbox. Once a document is attached to a transaction it moves to the archive, so the inbox doubles as your "still to file" list.

Xero has also been rolling out Smart Document Capture, which reads documents and suggests matches to existing transactions. Check whether it's available for your organization.

Supplier invoices: email them in as bills

For invoices you pay after receiving them (rent, contractors, utilities on terms), Xero can turn each emailed PDF into a draft bill:

  1. Go to Purchases → Bills → New bill and choose Copy your forwarding email address.
  2. Forward invoices to that address with the PDF attached. Xero doesn't read invoices pasted into the email body. Up to 10 bills per email, 25 MB in total.
  3. Each one becomes a draft Forwarded bill for you to check and approve.

Xero describes this as "a simpler version of Hubdoc".

Hubdoc: high-volume capture

Hubdoc is Xero's document capture app, included with Xero business plans. You can upload up to 50 documents at a time on the web, email them to your organization's Hubdoc address or snap them in the mobile app, up to 1,000 documents a day. Hubdoc reads each document and publishes it to Xero as a bill, invoice, credit note or spend money transaction with the document attached. If you have a steady flow of receipts every month, this is the heavy-duty option.

Xero Expenses is different. It's for reimbursing employees who paid with their own money, not for business-card receipts.

Spreadsheets: import bills from CSV

If you have expenses in a spreadsheet, Xero's bills import takes a CSV:

  1. Go to Purchases → Bills → New bill → Import from CSV and download the Xero import template.
  2. Fill it in without renaming the headings. Only ContactName is required, but you'll want most of these:
Xero column What goes in it From a What Receipt? export
ContactName The supplier vendor
InvoiceNumber Rows with the same number become one bill RB- + id
InvoiceDate DD/MM/YYYY, even in the US txn_date, reformatted
DueDate DD/MM/YYYY same as the date for already-paid receipts
Description Line description notes, or the vendor name
Quantity 1 —
UnitAmount The amount total_amount
AccountCode A code from your chart of accounts map from category
TaxType The tax rate's display name in your Xero match to your tax rates
  1. Choose whether the amounts are tax inclusive or exclusive. The whole file has to be one or the other.
  2. Import. Keep each file under 500 items. Bills arrive as drafts to approve.

One catch: a bill is something you owe. Receipts you've already paid will also show up as payments in your bank feed. After approving the bills, reconcile each bank line against its bill so the payment and the bill cancel out. Ask your accountant whether they'd rather see bills or spend money for these.

Spreadsheets: precoded bank statements

For a card or account with no bank feed in Xero, a precoded statement creates spend money transactions and reconciles them in one step:

  1. Go to Accounting → Bank accounts, open the menu on the account and choose Import a Statement.
  2. Upload a CSV with these mandatory columns: Date, Amount (money out negative), Account code and Tax rate (the display name, mapped to Tax Type). Payee, Description and Reference are optional.
  3. Map the columns, confirm the date format and complete the import.

Xero warns that if these lines match bills, invoices or transactions already in Xero, a precoded import will introduce errors. Only use it for transactions that aren't in Xero any other way.

A plain bank statement CSV (just Date and Amount, plus optional payee and description) imports statement lines for you to reconcile by hand. Xero skips lines that match transactions it already has.

Don't count it twice

  • An account with a bank feed: attach receipts (Documents inbox, Hubdoc) to the feed's transactions. Don't import a CSV of the same expenses.
  • An account without a feed: a precoded statement or a CSV of bills, but not both.
  • Bills for already-paid receipts: reconcile them against the bank payments, or they'll look unpaid.

Where What Receipt? fits

What Receipt? collects receipts before they reach Xero. It photographs them, pulls them from Gmail automatically (including a whole past tax year), reads the vendor, date, total and tax, and files them by category and project. From there you can:

  • forward the originals to your Xero Documents inbox or Hubdoc, or
  • export a CSV and use the column mapping above for a bills import or a precoded statement.

A native Xero export is on the roadmap.

Questions

How do I import expenses into Xero from a spreadsheet?

Use Purchases → Bills → New bill → Import from CSV with Xero's template, where only ContactName is required. Or, for a card or account Xero has no feed for, import a precoded bank statement with Date, Amount, Account code and Tax rate. Precoded statements create spend money transactions.

Can I import spend money transactions into Xero?

Not with a standalone import. The usual routes are a precoded bank statement, which creates spend money transactions and reconciles them, or publishing receipts from Hubdoc as spend money.

What date format does Xero's bill import use?

The bills template uses DD/MM/YYYY for InvoiceDate and DueDate, including for US organizations. Bank statement imports accept several formats and ask you to confirm when a date is ambiguous.

How do I attach receipts to transactions in Xero?

Upload or email them to the Documents inbox (formerly Files), then attach the matching document when you reconcile the bank line. Hubdoc and emailed bills attach the document automatically when they create the transaction.


Menus follow Xero Central as of October 2026. Xero renamed Files to Documents in September 2026, and some screens may still show the old name. This guide is general information, not accounting advice.

The app that already has it.

Snap a receipt or connect Gmail. What Receipt? reads it, files it by vendor, category and project, and exports it for your accountant.