Xero bill import CSV template explained: every column, tax setting and error
Xero can import supplier bills from a CSV, which turns a stack of invoices into draft bills in one go. The catch is that the template is strict: headings must stay as they are, account codes and tax rates must match your organisation exactly, and two bills with the same number quietly merge. Here's every column that matters and how to avoid the usual failures.
Where the import lives
In Xero, go to Purchases → Bills → New bill → Import from CSV (older menus: Business → Bills to pay → Import). Download the template there. Don't rename, delete or reorder headings: Xero needs them as they are. Bills always come in as drafts, so you review and approve them afterwards.
The columns that matter
The template has 26 headings. Columns marked with an asterisk are required; the rest can stay blank.
| Column | What goes in it |
|---|---|
| *ContactName | Supplier name. If it isn't in Xero, the import creates a new contact, so match existing names exactly to avoid duplicates. |
| *InvoiceNumber | The supplier's invoice number. Rows with the same number become lines of one bill. |
| *InvoiceDate, *DueDate | Dates in your organisation's format: DD/MM/YYYY for UK, Australia and New Zealand; US organisations use MM/DD/YYYY. |
| Description | Line description. Handy for the receipt file name, so you can find the original later. |
| *Quantity, *UnitAmount | For one-line receipts, Quantity 1 and UnitAmount = the total (or net, see tax below). |
| *AccountCode | The account code from your chart of accounts, such as 429 (General Expenses in the demo company). |
| *TaxType | The purchases tax rate display name, in full: for example "20% (VAT on Expenses)" in the UK, "GST on Expenses" in Australia, "Tax on Purchases" or "Tax Exempt" in the US. |
| TaxAmount | Optional: the tax printed on the bill, when it differs from Xero's calculation. |
| Currency | 3-letter code (USD, GBP). The currency must already be in your currency settings. |
| TrackingName1/TrackingOption1 (and 2) | Tracking categories, exactly as named in Xero. |
Five rules that prevent most failed imports
- One invoice number per bill. Two suppliers that both use "1001" merge into one bill, even with different contact names. Add a suffix (1001-2) or a prefix when numbers clash, and give receipts without a number a made-up one such as RCPT-20261003-1.
- Dates in one format. Match your organisation's region and use the same format on every row. Excel likes to reformat dates; check the CSV in a text editor.
- All amounts inclusive or all exclusive. You choose once at import for the whole file.
- Codes and names exactly as in Xero. AccountCode, TaxType and tracking options must match character for character. Copy them from Accounting → Chart of accounts and Accounting → Advanced → Tax rates.
- Keep files under 500 items. Xero recommends splitting bigger files.
Tax inclusive, exclusive and TaxAmount
- Receipts with a total only: put the total in UnitAmount and import as Tax inclusive. Xero backs the tax out using the TaxType. Leave TaxAmount blank.
- Invoices where you want the exact tax printed on the paper: put the net amount in UnitAmount, the tax in TaxAmount, and import as Tax exclusive. Xero adds a rounding adjustment if its calculation differs.
- No tax on the purchase (common for US receipts, where sales tax is just part of the cost): use your no-tax rate, for example "Tax Exempt" in a US organisation, and import as Tax inclusive.
Example file
A US organisation, one line per receipt, amounts tax inclusive (blank columns trimmed here for reading; keep all 26 in the real file):
*ContactName,*InvoiceNumber,*InvoiceDate,*DueDate,Description,*Quantity,*UnitAmount,*AccountCode,*TaxType,Currency
Bluebonnet Office Supply,4471,10/03/2026,10/03/2026,Bluebonnet Office Supply 4471 [receipt.pdf],1,86.43,429,Tax Exempt,USD
Pecan Street Web Hosting,INV-20417,10/01/2026,10/31/2026,Pecan Street Web Hosting INV-20417 [invoice.pdf],1,94.56,485,Tax Exempt,USD
Riverbend Cafe,RCPT-20261005-3,10/05/2026,10/05/2026,Riverbend Cafe [photo.jpg],1,23.84,420,Tax Exempt,USD
Common errors
| Message or symptom | Fix |
|---|---|
| "Invalid account code" | The code isn't in your chart of accounts or the account is archived. Use the code column from the chart, not the name. |
| "Tax rate not found" / tax type invalid | Use the display name exactly as in Tax rates, including the percentage and brackets. |
| Dates swapped (3 October became 10 March) | The file's date order doesn't match your region. Re-export with the right order. |
| Fewer bills than rows | Duplicate invoice numbers merged bills. Make numbers unique. |
| Totals a few cents off | Mixed inclusive/exclusive amounts, or Xero's tax calculation versus the paper. Use TaxAmount with Tax exclusive. |
| Template rejected | Headings renamed, deleted, or saved as .xlsx. Keep the original headings and save as CSV. |
From PDFs and photos to the template
Filling in the template by hand is where the time goes. You can type each receipt, pay for a capture service such as Hubdoc or Dext, or extract a batch into the template once and check it. Our guide to receipt OCR without a subscription compares those options and lists what to check in OCR output before you import.
Receipts and invoices straight into Xero's bill template
Utilly reads PDF and photo receipts and invoices and fills Xero's 26-column bill template: unique invoice numbers, your account code and tax rate, US or UK/AU/NZ date order, and the file name in the description. Check and edit every field before you download. Files are processed in memory, and batches of up to 3 are free with no sign-up.
Turn invoices into a Xero bills fileUsing QuickBooks Online instead? See how to import bills into QuickBooks Online from CSV. Bank statements for Xero: Xero bank statement import errors.
FAQ
How do I import bills into Xero?
Go to Purchases, Bills, New bill, Import from CSV. Download the template there, fill it in without changing any headings, save as CSV and import. Bills arrive as drafts for you to review and approve.
Why did Xero combine two bills into one?
Rows with the same InvoiceNumber are treated as lines of one bill, even with different contact names. Give every bill a unique number, for example by adding a suffix when two suppliers use the same number.
What date format does the Xero bill import use?
Your organisation's regional format: DD/MM/YYYY for UK, Australia and New Zealand organisations, MM/DD/YYYY for US organisations. Use one format for every row.
What do I put in TaxType?
The purchases tax rate display name exactly as it appears in your tax rates, in full, such as 20% (VAT on Expenses) in the UK or Tax Exempt in the US.
Should I import bills as tax inclusive or tax exclusive?
If you only have receipt totals, put the total in UnitAmount and choose tax inclusive. If you want the exact tax printed on the bill, put the net in UnitAmount, the tax in TaxAmount, and choose tax exclusive. The whole file follows one choice.
How many bills can I import into Xero at once?
Xero recommends splitting files with more than 500 items.
Can I make the Xero bill template from PDF receipts?
Yes. Utilly reads PDF and photo receipts and invoices and fills Xero's bill template with unique invoice numbers, your account code and tax rate, and the right date order. You check every field before downloading; batches of up to 3 are free.
Related guides
- How to import bank transactions into QuickBooks Desktop after bank feeds stopped (2026)
- How to convert a credit card statement PDF to Excel
- QBO vs IIF vs QIF: which file QuickBooks and Quicken actually need
- Catch-up bookkeeping: getting 12 months of bank statements into QuickBooks or Xero and reconciled
- Xero bank statement import errors (and how to fix them)
- How to upload a PDF bank statement to QuickBooks Online (and check nothing was missed)
- QuickBooks Desktop IIF import errors (File not imported, Review now, and how to fix them)
- QuickBooks .QBO (Web Connect) import errors: OL-222, OL-221, “unable to verify the financial institution” and how to fix them
- QuickBooks reconciliation not matching: beginning balance is off, or the difference isn't 0.00
- Duplicate transactions in QuickBooks after an import: find them, remove them, and stop them coming back
- How to import bills into QuickBooks Online from a CSV or Excel file
- How to find a bank reconciliation discrepancy: 7 causes and a 15-minute method
- How to compare a bank statement to the general ledger in Excel (and a faster way)
- Receipt OCR without a subscription: turn receipts into a CSV for QuickBooks or Xero
Related tools
- Bank reconciliation checker: compare a bank statement to your books and list missing, duplicate and mismatched transactions.
- Receipt to CSV: turn PDF or photo receipts and invoices into CSV, Excel, or QuickBooks and Xero bill imports.