Import Chart of Accounts into QuickBooks Online from CSV

Aug 9, 2026

PDF, JPG, PNG, BMP, HEIC, TIFF

Upload your bank statement

Same tool as our bank statement to QBO converter. Free to try, no card needed.

You import a chart of accounts into QuickBooks Online from the chart of accounts screen: select the dropdown arrow next to New, choose Import, download the sample file so your headers match, fill it in, upload it as CSV, XLS or XLSX, map your columns to the QuickBooks fields, then preview and confirm. The importer only adds accounts. It never deletes or overwrites the ones already in the file.

Last updated August 2026.

That is the whole mechanic, and it takes about four minutes when the file is clean. The reason this job eats an afternoon instead is almost always the spreadsheet, not QuickBooks: a detail type spelled slightly wrong, a sub-account missing its parent prefix, or a name that collides with a vendor. This walkthrough covers the columns QuickBooks actually reads, the sub-account syntax, and every error the importer throws.

What the import does and does not do

It creates accounts. That is all. Understanding the four things it will not do saves most of the confusion:

  • It does not delete anything. Importing a 40 account list into a file that already has QuickBooks' 60 default accounts leaves you with roughly 100 accounts, not 40. Deactivate the ones you do not want, before or after.
  • It does not carry balances. The Account List export from an old file includes a balance column; the importer ignores it. Opening balances are entered separately, and the offset posts to Opening Balance Equity.
  • It does not bring transactions. A chart of accounts is a list of empty containers. Getting the history in is a separate job.
  • It does not reconnect bank feeds. A Bank type account imported by CSV is not linked to anything. You connect it, or import statements into it, afterward.

Point two catches people out most often, because a clean account list looks like a migration. It is not. If you are moving a client to a new QuickBooks file, the account list is step one of maybe five, and the opening balance equity guide covers where the starting figures land when you enter them.

The CSV columns QuickBooks expects

Download the sample file from the Import screen rather than building headers from memory. QuickBooks maps columns by what you tell it during the mapping step, so exotic header names are survivable, but the sample file removes one whole class of problem. These are the fields it reads:

ColumnRequired?What QuickBooks does with itExample
Account NumberOptionalOnly imports if account numbering is turned on in Advanced settings. Must be unique.1000
Account NameRequiredMust be unique across the file, and cannot match a customer, vendor or employee name.Business Checking
TypeRequiredOne of the QuickBooks account types, spelled the way QuickBooks spells it.Bank
Detail TypeRequiredMust be a detail type that is valid for that account type.Checking
CurrencyOnly with multicurrencyFails unless multicurrency is switched on in the file first.USD

Type and Detail Type are the two that fail. QuickBooks accepts a fixed vocabulary for each, and the detail types available depend on which type you picked. Bank accepts Checking, Savings, Money Market and Cash on hand. Expenses accepts a long list including Advertising/Promotional, Office/General Administrative Expenses and Rent or Lease of Buildings. If you are not certain a detail type exists, add the account by hand in the interface first, look at what the dropdown offers, and copy the wording. The full mapping of types to detail types is laid out in our chart of accounts in QuickBooks Online guide.

Step by step: importing the file

  1. If your list uses account numbers, turn numbering on first. Settings, then Account and settings, then Advanced, then Edit in the Chart of accounts section, then Enable account numbers. Skip this and the Number column is silently ignored.
  2. Select Settings, then Chart of accounts.
  3. Select the dropdown arrow next to the New button, then Import.
  4. Select Download a sample file and open it.
  5. Replace the sample rows with your accounts, keeping the header row. Save as CSV, XLS or XLSX.
  6. Back on the Import screen, browse to your file and select Next.
  7. Map each of your columns to the QuickBooks field it belongs to. Set anything you are not importing to Not applicable.
  8. Review the preview. Rows QuickBooks cannot accept are flagged here, and you can edit them in place.
  9. Select Import.

Fix the flagged rows in the preview rather than aborting to edit the spreadsheet, unless there are dozens of them. The preview edits stick, and a second upload of a partly-imported file means picking through name collisions you just created yourself.

How sub-accounts work in the import file

Sub-accounts use a colon. Put the parent account on its own row, then on a later row write the child as the parent name, a colon, then the child name, with no space around the colon. Utilities on one row, then Utilities:Electricity, Utilities:Gas and Utilities:Internet underneath.

Two rules make this work. The parent has to appear in the file (or already exist in QuickBooks) before the child, and the spelling has to match character for character. Utilities and Utilties are two different parents as far as the importer is concerned, and the second one quietly becomes a new top-level account. If your sub-accounts all import flat, this is why.

Sub-accounts also count toward the 250 account limit on Simple Start, Essentials and Plus, so a deeply nested list built for a Desktop file can push a Plus subscription against its ceiling faster than expected.

Getting the list out of the old QuickBooks file

For a QuickBooks Online source file, run Reports, search for Account List, and export it to Excel. Then delete the balance column, keep account name, type and detail type, and reorder the headers to match the sample import file. That export is also the fastest sanity check on a file you have just inherited, because duplicate accounts and stray detail types stand out in a single screen.

For a QuickBooks Desktop source file the route is different. Desktop does not use this importer. Go to File, then Utilities, then Export, then Lists to IIF Files, and tick Chart of Accounts. That produces a tab-separated IIF file, which QuickBooks Desktop can re-import through File, then Utilities, then Import, then IIF Files. To move it into QuickBooks Online you convert the IIF to a spreadsheet, keep the name, type and detail type columns, and translate the Desktop account types into the QuickBooks Online equivalents by hand. Desktop's type names do not all match, and Desktop's account types are the closest thing to a standard the two products share.

Whichever direction you are going, sort the list by account type before you review it. Reading thirty expense accounts in a block is how you spot that Office Supplies and Office Expenses are both there and both in use.

Import errors and what they mean

The importer's messages are short. Here is what each one is actually telling you:

What you seeWhat causes itThe fix
The account name already existsA name in your file matches an account already in the file, or matches a customer, vendor or employee.Rename the row, or drop it and merge the two accounts afterward.
Invalid detail typeThe detail type is not one of the options QuickBooks offers for that account type.Open the sample file, find a row with the same Type, and copy its Detail Type spelling exactly.
Account number already in useTwo rows carry the same number, or the number exists in the file already.Renumber the duplicate. Numbers have to be unique even when they are hidden.
Nothing imported, no error shownAccount numbering is off, so QuickBooks ignored the Number column and could not place the rows.Turn on Enable account numbers in Advanced settings first, then re-import.
Sub-accounts imported as top-level accountsThe parent name and colon are missing from the child row.Write the child as Parent:Child, spelled identically to the parent row.
Currency column rejectedMulticurrency is off in this QuickBooks file.Remove the column, or turn multicurrency on first. Turning it on cannot be undone.

The name collision rule is broader than most people expect. QuickBooks keeps accounts, customers, vendors and employees in one namespace, so an expense account called Verizon will not import into a file where Verizon is already a vendor. Rename the account to something like Telephone, which is a better account name anyway.

What to do after the accounts land

Deactivate the defaults you are not using. QuickBooks builds a starter list from the industry you chose at signup, and after an import that list is sitting underneath yours. Select Delete in the Action column, which makes the account inactive rather than removing it, and the dropdowns get usable again.

Then check that the types are right before any transaction posts. Editing an account's type later is possible but disruptive, because the history moves with it and some switches are blocked once activity exists; our guide to changing an account type in QuickBooks covers what that does to prior periods. This is also the moment the structure stops being an admin chore and starts being a reporting decision, because the account list is what your profit and loss and balance sheet are built from, and it is what any tool that turns a bookkeeping export into finished financial statements has to work with.

Last, bring the transactions in. Accounts with no history in them are just labels. If the months are missing because a bank feed only reached back 90 days, converting the PDF statements to .qbo files and importing them oldest month first fills the gap; the converter at the top of this page does that, and importing bank statements into QuickBooks Online walks through the import side. For firms standing up several client files a month, bank statement conversion for accountants covers doing it at volume.

Frequently asked questions

Can I import a chart of accounts into QuickBooks Online?

Yes. Open the chart of accounts, select the dropdown arrow next to New, then Import. QuickBooks accepts CSV, XLS and XLSX files with Account Name, Type and Detail Type columns, plus Account Number if numbering is enabled. Download the sample file from the same screen to get the headers right.

Does importing a chart of accounts replace the existing accounts?

No. The import only adds accounts. Everything already in the file stays, including the default list QuickBooks generated at signup. To end up with just your list, make the unwanted accounts inactive after the import, or merge them into the accounts you are keeping.

What file format does the QuickBooks Online chart of accounts import accept?

CSV, XLS and XLSX. The sample file QuickBooks gives you on the Import screen is an Excel file, and saving it as CSV works equally well. Keep the header row, because the mapping step reads it.

Why did my account numbers not import?

Account numbering is off by default in QuickBooks Online, and the importer ignores the Number column when it is off. Turn on Enable account numbers under Settings, Account and settings, Advanced, Chart of accounts, then import again. Numbers can be up to twenty digits and must be unique.

How do I import sub-accounts?

Write the child account as the parent name, a colon, then the child name, with no spaces around the colon, for example Utilities:Electricity. The parent must exist already or appear earlier in the file, and the spelling has to match exactly. A mismatch imports the child as a new top-level account instead.

Can I import a chart of accounts into QuickBooks Desktop?

Not through this importer, which is QuickBooks Online only. Desktop uses IIF files: File, then Utilities, then Import, then IIF Files. You produce one from another Desktop file with File, Utilities, Export, Lists to IIF Files, ticking Chart of Accounts.

Will importing accounts bring my balances and transactions across?

No. The import creates empty accounts. Opening balances are entered separately and post their offset to Opening Balance Equity, and transaction history has to be imported on its own, either from a bank feed or from converted statement files.

Convert your first statement free.

Upload a PDF bank statement, see every transaction extracted in seconds. No card to try it.

Still comparing tools? See our bank statement to QuickBooks converter comparison.