# Import Bills into Xero from a CSV Template

- Author: SimpleBankConvert (https://simplebankconvert.com)
- Published: 2026-10-17
- Category: Invoices, bills and lists
- Canonical: https://simplebankconvert.com/blog/import-bills-into-xero

> How to import bills into Xero with the bills CSV template: one row per line, supplier names that match and due dates that drive payment planning.
To import bills into Xero, download the bills CSV template from the import option on Xero's bills page, fill in one row per bill line, and upload it back. Supplier names must match your Xero contacts exactly, or new contacts appear. Give every bill a due date, because Xero uses it to plan when each supplier gets paid.

## Finding the Xero bills import and its CSV template

The Xero bills import sits with the rest of your purchases. Open the bills list, look for the import option beside the button for a new bill, and download the CSV template it offers. Start from that template every time, because its headings are the ones the import reads.

Keep the template's first row exactly as it comes. Renaming a heading, deleting a column you don't use or adding one of your own can make the upload fail or drop data silently. Columns you have nothing for can stay empty. If your source system exports bills in its own layout, copy its values into the template rather than trying to make Xero read the original file.

### Saving the file correctly

Save the finished template as CSV. A spreadsheet program may offer several CSV variants; plain comma-separated with UTF-8 encoding is the safest choice when supplier names include accented letters. Before you upload, open the CSV in a text editor once. A stray comma inside an unquoted description is easier to spot there than in a grid.

### How many bills per file?

There is no reason to load a year of bills in one go. Split the work by month or by supplier group. Smaller files are quicker to check, and if one fails you know exactly which bills to look at.

## One template row per line on a Xero bill

A bill with several lines takes several rows in the template. Each row repeats the supplier name, the bill number, the bill date and the due date, and carries its own description, quantity, unit amount and account. Keep those shared values identical on every row of the same bill.

Here is an example with two bills. The headings are shortened for the page, and the values are made up for illustration; use the template's own headings in your file.

| Contact | Bill number | Bill date | Due date | Description | Qty | Unit amount | Account code | Tax rate |
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Corran Packaging Co | CP-8812 | 03/03/2026 | 04/02/2026 | Mailer boxes, medium | 400 | 0.85 | 310 | Tax exempt |
| Corran Packaging Co | CP-8812 | 03/03/2026 | 04/02/2026 | Freight | 1 | 42.00 | 425 | Tax exempt |
| Lindqvist Cleaning | LQ-3019 | 03/05/2026 | 03/19/2026 | March office clean | 1 | 260.00 | 493 | Tax exempt |

Bill CP-8812 becomes one bill for 382.00 with two lines. Bill LQ-3019 is a one-line bill for 260.00. The repeated values on the two CP-8812 rows must be identical. A different date or an extra space in the bill number splits them into two bills.

### Where the bill number comes from

Use the supplier's own invoice number as the bill number. It is what the supplier will quote when they chase payment, and it lets you spot the same bill entered twice. If a supplier sends bills without numbers, invent a simple, consistent pattern, such as the supplier's initials and the bill date.

## Why must supplier names in the bills file match Xero contacts?

Xero ties each bill to a contact by name. When the name in the file matches a contact exactly, the bill joins that supplier's history. When it doesn't, the import treats it as a new contact, and you end up with two records for one supplier, each holding part of the bills and payments.

Small differences cause this: "Corran Packaging Co" against "Corran Packaging Co.", a trailing space, or "and" in one place and "&" in the other. Before you upload, export your contacts from Xero and compare the names in your bills file against that list with a lookup. Fix any name that doesn't match.

If your suppliers are not in Xero yet, load them first as a contact list. The guide to [importing contacts into Xero](/blog/import-contacts-into-xero) covers the contacts template, including the fields worth filling in for suppliers. Adding contacts before bills gives you one place to settle spellings.

## Account codes, tax rates and item codes on Xero bill rows

The coding columns tell Xero where each bill line posts. The account code picks the expense or asset account from your chart of accounts. The tax rate column must hold a rate that exists in your Xero organisation. An item code, if you use one, links the line to a tracked product.

A few rules keep these columns clean:

- Use the account code, not the account name, if that is what the template asks for. Export the chart of accounts to see the codes.
- Pick the tax rate name exactly as it appears in Xero's tax rates list.
- Leave the item code empty for services and one-off costs.
- Keep each line's amount positive. A supplier credit is a separate record, not a negative line.

### Item codes and stock

If the line is for goods you track in stock, the item code matters. It lets Xero count the quantity in and use the item's purchase details. The item must exist before the bills import; the guide to [importing inventory items into Xero](/blog/import-inventory-items-into-xero) shows how to load an item list first. Without an item code, the line is just a cost against an account, and stock levels don't move.

## Due dates on imported Xero bills and payment planning

A due date on each bill tells Xero when the supplier expects payment. Xero's page on [paying bills](https://www.xero.com/us/accounting-software/pay-bills/) describes adding planned payment dates so bills are paid on time. A bill without a sensible due date drops out of that planning, or shows as overdue the day it arrives.

Take due dates from the supplier's terms, not from the date you happen to upload. A bill dated March 3 on 30-day terms is due April 2, whatever day you load it. If your source data only has terms such as "Net 30", work the due dates out in a spreadsheet column before you copy them into the template.

### Paying many bills in one run

Xero's pay-bills page also describes exporting a payment file and uploading it to online banking to pay several bills at once, with the bills then marked as paid. That only works well when the bills carry correct suppliers and amounts, which is one more reason to check the import before you approve anything.

### Date format in the file

Use one date format for every date in the file, and make it the format your Xero organisation expects. US organisations usually write dates month first, so 03/04/2026 means March 4. If your source system wrote dates day first, convert the whole column before saving, or bills land a month or more out of place.

## Bills already paid by card: when not to use the Xero bills import

The bills import is for money you owe and will pay later. A purchase already paid on a business card or debit card doesn't need a bill. It is a spend transaction that arrives when you bring in the card or bank statement, and recording a bill for it as well counts the cost twice.

Card spending is where this goes wrong most often. A team member forwards a receipt, someone imports it as a bill, and the card statement later brings the same charge in as a payment. Xero now shows a cost and an unpaid bill for the same thing. If a bill was paid by card, the card line should be matched to the bill as its payment, or the bill shouldn't exist.

### Getting the card side in

The card side comes from a bank feed or a statement file. The guide to [importing an Amex statement into QuickBooks](/blog/how-to-import-amex-statement-into-quickbooks) shows the steps for one card on the QuickBooks side, and the same thinking applies in Xero: the statement records the card payments, and bills record only what is still owed. When a card statement only exists as a PDF, [SimpleBankConvert](/) is being built to turn it into a CSV laid out for Xero's statement import.

## How do you check imported Xero bills before approval?

An import is only finished once the bills in Xero match the file. Open the bills list and look for the new bills by date or supplier. Compare the count and the total with your spreadsheet, then open a couple of multi-line bills to confirm their lines grouped correctly. Do this before any bill is approved or paid.

Use this checklist after each upload:

- [ ] The number of new bills equals the number of distinct bill numbers in the file.
- [ ] The total of the new bills equals the total of the file's line amounts.
- [ ] No new supplier contacts appeared that you didn't expect.
- [ ] Each multi-line bill shows all its lines and no line landed on a separate bill.
- [ ] Due dates match the supplier's terms.
- [ ] Account codes and tax rates look right on a sample of lines.

### Fixing a bad import

If something is wrong, fix the bills before approval, while they are easy to edit or remove. Delete the faulty bills, correct the file and upload only those bills again. Re-uploading the whole file after a partial success creates duplicates of the bills that were fine.
