Migrate from Xero to QuickBooks

Let’s Dive in to see…

How to Migrate from Xero to QuickBooks

QuickBooks Online

Migration Guide · Xero → QuickBooks

How to Migrate from Xero to QuickBooks

Moving your business from Xero to QuickBooks is a significant transition — and one that requires careful sequencing to protect your financial data. Done correctly, you carry across your chart of accounts, contacts, open invoices and bills, items, and transaction history. Done incorrectly, you end up with duplicate entries, broken balances, and weeks of cleanup.

At QuickFix Bookkeeping, we have completed dozens of Xero-to-QuickBooks migrations. This guide covers the exact sequence, what transfers and what does not, the Xero-specific traps that catch everyone, and when to use a tool versus going manual.

The QuickFix Bookkeeping Distinction

There is no direct Xero → QuickBooks Desktop path. There are two routes — and the wrong choice creates a multi-week problem.

Route A — Xero → QuickBooks Online

Use this if: You are moving to QuickBooks Online (cloud). DataSwitcher handles this with the most complete data transfer of any method — chart of accounts, contacts separated into customers/vendors, open invoices, bills, historical transactions.

Timeline: 1–3 days depending on data volume.

Route B — Xero → QBO → QB Desktop

Use this if: You need QuickBooks Desktop. There is no direct migration path. You must first migrate to QBO, then export from QBO to Desktop using Intuit's own migration tool. Some data is lost at each hop.

Timeline: 3–7 days. More data loss. Consider a specialist.

The Xero trap that catches everyone: Xero has no customer/vendor distinction — all contacts are in one list. When you migrate, every contact must be classified as Customer, Vendor, or both. DataSwitcher attempts this automatically but still requires review. Manual migration requires splitting the contact list before importing. Skipping this step produces broken A/R and A/P in QuickBooks.

What Transfers — and What Does Not

Know this before you start. Planning around what does not transfer prevents the most painful post-migration surprises.

✓ What Transfers

Chart of Accounts

Account names, types, and numbers. Xero account types must be mapped to QuickBooks equivalents — requires review before import.

Customers and Vendors

Contact names, addresses, emails, phone numbers — after the customer/vendor split (Xero uses unified contacts; QuickBooks separates them).

Products and Services (Items)

Item names, descriptions, prices. Inventory items require additional mapping of COGS and inventory asset accounts.

Open Invoices and Bills

Outstanding unpaid invoices (A/R) and unpaid bills (A/P) as of the migration cut-off date. Fully paid invoices and bills are best imported as journal entries.

Historical Transactions

Via DataSwitcher or SaasAnt — imported as journal entries for most transaction types, preserving account balances and audit trail.

Opening Balances

Trial balance as of the cut-off date — the foundation that QuickBooks balances are built on. Export from Xero before migration starts.

✗ What Does NOT Transfer

Payroll History

Payroll transactions are imported as generic journal entries — they do not appear in payroll reports or affect W-2 calculations. YTD payroll data must be manually re-entered in QuickBooks Payroll after migration.

Bank Reconciliation History

Past reconciliations do not migrate. You will start fresh in QuickBooks. Save your Xero reconciliation reports as PDFs before closing the Xero account for audit reference.

Bank Feed Connections

Bank feeds must be reconnected in QuickBooks from scratch. Disable Xero bank feeds before migration to prevent double-importing post-cut-off transactions.

Xero Tracking Categories

Tracking Categories become QuickBooks Classes — but the mapping is not automatic. Each Tracking Category must be manually created as a Class in QuickBooks and mapped before transaction import.

Attachments and Documents

Bills, invoices, receipts with attached documents do not transfer. Download and archive attachments from Xero before migration. Re-attach critical documents manually in QuickBooks.

Custom Invoice and Report Templates

Invoice templates, branding, and custom reports must be rebuilt in QuickBooks. Export samples from Xero for reference before closing the account.

Before You Start — The Pre-Migration Checklist

Do all of this in Xero before touching QuickBooks. Skipping these steps causes the most difficult post-migration problems.

1

Reconcile all accounts to cut-off date

Bank accounts, credit cards, and loan accounts must be fully reconciled to the date you will stop using Xero. Unreconciled transactions create balance discrepancies that are extremely difficult to trace after migration.

2

Export benchmark reports from Xero

Export the Trial Balance, Profit and Loss, and Balance Sheet as of the cut-off date — both accrual and cash basis. These are your verification benchmarks. After migration, QuickBooks must produce identical numbers or something went wrong.

3

Set a lock date in Xero

In Xero: Accounting → Financial Settings → Lock Date. Set it to your cut-off date. This prevents anyone from entering transactions in the old system after you start the migration, which would break the balance reconciliation.

4

Export and archive all attachments

Download all bills, receipts, and invoice attachments from Xero. These do not migrate. Use Xero's Files section to bulk-export. Store in a shared drive for reference during and after migration.

5

Review and clean the Contacts list

Go through every Xero contact and tag each one as customer, vendor, or both. Remove duplicates and outdated contacts. This is the most time-consuming pre-migration task — but skipping it creates broken A/R and A/P in QuickBooks.

6

Disable bank feeds in Xero

Disconnect all bank feeds in Xero before or on your cut-off date. Live bank feeds that continue pulling after the cut-off create phantom transactions that corrupt post-migration balances.

7

Map Tracking Categories to QB Classes

List all Xero Tracking Categories and decide how they will map to QuickBooks Classes (or Locations in QBO). Create these Classes in QuickBooks before importing transactions so the mapping can be applied during import.

8

Decide how far back to migrate history

You do not have to migrate all historical transactions. Many businesses migrate only the current fiscal year plus one prior year — importing older years as an opening balance journal entry. The further back you go, the longer the migration takes and the more expensive it is.

Route A: Migrating to QuickBooks Online (Recommended)

The most complete, reliable migration path. DataSwitcher is the recommended tool — it is Intuit-endorsed and handles the customer/vendor split, account mapping, and transaction import automatically.

STEP 1 Set Up a New QuickBooks Online Company File

Create a brand new QBO company file. Do not enter any transactions, customers, or accounts into it before migration — any pre-existing data in QBO will be overwritten or create duplicates during the migration import.

Enable the features you use before importing data: Settings → Account and Settings → Advanced → Categories (turn on Classes if you use Tracking Categories), Sales Tax, Multi-currency if applicable. These must be activated before transactions are imported — enabling them afterward does not retroactively apply to imported data.

STEP 2 Run DataSwitcher (Recommended Tool)

DataSwitcher (dataswitcher.com) is the most complete automated tool for Xero → QBO migration. It connects directly to both platforms via API, maps account types, separates contacts into customers and vendors, and handles transaction import with field mapping.

What DataSwitcher handles:

Chart of accounts with type mapping, contacts with customer/vendor split, open invoices and bills, historical transactions, Tracking Category to Class mapping, opening balances

What still needs manual work after DataSwitcher:

Review and correct any contacts DataSwitcher could not classify, reconcile opening balances against your Xero Trial Balance, reconnect bank feeds, re-enter YTD payroll data

QuickFix tip: Run DataSwitcher in test mode first. It creates a preview of what will be imported without actually pushing data to QBO. Review the exception report carefully — any item flagged in red will need manual intervention. Resolve all exceptions in the test run before executing the live migration.

STEP 3 Verify Opening Balances Against Xero Trial Balance

After migration completes, run the QuickBooks Trial Balance and compare it account by account against the Xero Trial Balance you exported in the pre-migration checklist. Every account balance must match exactly. Any discrepancy must be found and corrected before you enter a single live transaction in QuickBooks.

Also run: Balance Sheet (compare to Xero Balance Sheet), Profit and Loss (compare to Xero P&L for the migrated period), Accounts Receivable Ageing (compare to Xero A/R Ageing), Accounts Payable Ageing (compare to Xero A/P Ageing).

STEP 4 Reconnect Bank Feeds and Set Up Payroll

Once balances are verified: reconnect bank feeds in QBO starting from your cut-off date. Do not backdate bank feeds further than the cut-off — doing so imports transactions that are already represented by journal entries from the migration and creates duplicates.

For payroll: set up QuickBooks Payroll or your payroll integration, and manually enter YTD payroll totals for each employee as of the cut-off date. This is critical for correct W-2 processing at year end.

STEP 5 Run a Parallel Period and Close Xero

For at least the first month after migration, run both systems in parallel — enter all transactions in QuickBooks as your primary system and cross-reference against what Xero would show. This catches any systematic errors in the migration before they compound.

After a clean parallel month, close the Xero account. Keep Xero read-only access (do not delete) for at least 12 months — historical data, audit trails, and comparative reports may be needed for tax filings and audits.

Route B: Migrating to QuickBooks Desktop

There is no direct Xero to QuickBooks Desktop migration tool. The path goes Xero → QBO → Desktop using Intuit's QBO-to-Desktop migration feature. Additional data is lost at the second hop.

What additionally does NOT transfer in the QBO → Desktop hop:

• QBO-specific transaction types (receipts, refunds) may convert to journal entries

• Class tracking may not carry correctly on all transaction types

• Recurring transactions are not transferred

• Budgets do not transfer

1

Complete Route A first (Xero → QBO)

Follow all five steps of Route A. Verify balances and confirm QBO is accurate before proceeding. The QBO file must be clean — errors in QBO compound further in the Desktop migration.

2

Export from QBO to QuickBooks Desktop

In QBO: Settings → Export Data. Download the export file. In QuickBooks Desktop: File → Utilities → Import → From QuickBooks Online. Follow the import wizard. This uses Intuit's own migration bridge and is the only supported path.

3

Re-verify all balances in Desktop

Run the Trial Balance, Balance Sheet, and P&L in Desktop and compare against the same reports from QBO. Any new discrepancies were introduced in the QBO → Desktop hop and must be corrected with adjusting journal entries.

Manual Migration — When to Do It and How

Manual migration is slower but gives you full control. Best for businesses with fewer than 2 years of history or simple books.

Import sequence (order matters):

1

Chart of Accounts

2

Classes (from Tracking Categories)

3

Products and Services (Items)

4

Customers

5

Vendors

6

Opening Balance Journal Entry

7

Open Invoices (A/R)

8

Open Bills (A/P)

9

Historical Transactions (as JEs)

Critical rules for manual import:

Never import customers with open balances — import customers first with no balance, then import the open invoices. Importing customers with balances creates duplicate A/R.

COA cleanup must be done before transaction import — any account you clean up after transactions are imported requires manual re-categorization of every transaction on that account.

Xero COA export format does not match QBO import format — the Xero CSV must be reformatted with the correct column headers before QBO will accept it. The required columns are: Account Name, Type, Detail Type, Description.

Xero contacts export contains both customers and vendors in one list — this CSV must be split into two separate files before import. Any contact that appears on both invoices and bills needs to be imported in both lists.

Tool Comparison — DataSwitcher vs SaasAnt vs Manual

Feature DataSwitcher SaasAnt Manual CSV
COA migration ✓ Automatic ✓ Automatic Manual reformat
Customer/vendor split ✓ Automatic Partial Manual split required
Historical transactions ✓ Automatic ✓ Via export/import JEs only
Tracking Category → Class ✓ Mapped Manual setup Manual
Test run available ✓ Yes ✗ No ✗ N/A
Best for Most businesses — complete, reliable Targeted imports after initial migration Simple books, short history

Frequently Asked Questions About Xero to QuickBooks Migration

When is the best time to migrate from Xero to QuickBooks?
The best cut-off dates are the beginning of your fiscal year, the beginning of a new quarter, or the beginning of a new month — in that order of preference. Starting at the beginning of the fiscal year means you avoid splitting a year's history across two systems and your comparative reports in QuickBooks are clean from the first day. A mid-quarter or mid-month migration is technically possible but creates more verification work and more opportunities for missing transactions during the gap period.
Do I need to migrate all of my historical transactions?
No — and migrating everything is rarely the best choice. Most businesses are better served by migrating the current fiscal year plus one prior year as detailed transactions, and importing all earlier periods as a single opening balance journal entry. This approach gives you the comparative reporting you need for current operations without the cost and complexity of migrating years of historical detail that is rarely accessed. The historical data remains available read-only in Xero for reference. The exception is businesses with ongoing multi-year contracts, warranty obligations, or other reasons to frequently reference older transaction details.
My Xero contacts are a mess — some are both customers and vendors. How do I handle this?
In QuickBooks, a contact that is both a customer and vendor is handled by creating them in both the Customer list and the Vendor list — with the same name. QuickBooks has a feature called "Vendor and Customer" that links the two records. DataSwitcher identifies contacts that appear in both invoice and bill transactions and creates them in both lists automatically. For manual migration, export the Xero contacts, filter for contacts that appear in both A/R and A/P reports, and import them twice — once as a customer and once as a vendor. Do not try to merge them into a single record; QuickBooks requires separate customer and vendor records.
How do I handle Xero Tracking Categories in QuickBooks?
Xero Tracking Categories map to QuickBooks Classes (and/or Locations in QBO). The main difference is that Xero allows two independent Tracking Category dimensions per transaction, while QuickBooks Classes allow only one Class per transaction line. If you use two Tracking Categories in Xero, you will need to decide whether to use Class + Location in QBO (QBO Plus or Advanced required), or to create composite Classes that combine both dimensions. Before migration, list every Tracking Category and its values, decide how they map to QuickBooks Classes, create all the Class records in QuickBooks before transaction import, and provide the mapping to DataSwitcher or apply it manually during CSV import. Tracking Category assignment on historical transactions will appear as Class assignment in QuickBooks after migration.

Related Guides

Ready to Move from Xero to QuickBooks?

Let QuickFix Bookkeeping Handle
Your Entire Migration — Data Guaranteed.

Certified Xero Advisors + Intuit ProAdvisors · Migration Specialists

We handle the complete migration — pre-migration cleanup, DataSwitcher configuration, contact classification, balance verification, and post-migration reconciliation. Your Trial Balance, P&L, and Balance Sheet in QuickBooks will match Xero exactly before you go live. We guarantee it.

Book a Free Migration Consultation

No obligation. We review your Xero file and give you an exact migration plan and timeline.