Quick answer: Which tools keep Items and Classes when migrating off QuickBooks Desktop?
Most QuickBooks Desktop migrations silently drop Items, Classes, and the line-item links on bills and invoices unless you pay for conversion services. Across our tests of Xero, Wave, Zoho Books, FreshBooks, Sage 50, Odoo, and Kantivo, only Kantivo carried all of it over intact out of the box.
If you have ever migrated off QuickBooks Desktop, you know the moment: you finish a "successful" import in your new accounting tool, open the first report, and realize an entire dimension of your old data is missing. The numbers add up. Your accounts are there. Your customers are there. But your P&L by Class shows nothing. The invoices you imported list every line as plain descriptive text rather than referencing the Item you used to track. The reorder points on your inventory items are gone.
What happened is that most migration paths target the smallest common denominator — chart of accounts, contacts, maybe a journal — and silently drop the structures QuickBooks Desktop users actually rely on day-to-day. We spent the past few weeks testing every major QuickBooks Desktop alternative against the same standard: what does each tool actually bring across without a paid third-party migration service, and what gets quietly left behind?
What's in this article
The four things migrations quietly drop
Before naming names, here is what we kept looking for and why each one matters:
- The Item List. If you sell products or services and you use QuickBooks' Item List to drive invoicing, inventory tracking, or pricing, losing this list means your new invoices land as descriptive text — no item history, no product margin reports, no inventory movement. Re-creating a thousand items by hand is a non-starter for most businesses.
- The Class List. QuickBooks Classes are how multi-location, multi-department, and multi-project businesses break out their P&L. If they don't come across, every report you used to run by Class collapses into a single bucket — and re-tagging years of transactions one at a time is a full-time job.
- Per-line class tags on transactions. Even if you do import your Class List, you still need every individual journal line to be tagged with the right class for reports to work. Most migrations drop this entirely, leaving you with an empty Class List on one side and untagged transactions on the other.
- Line→Item links on bills and invoices. QuickBooks invoice lines reference Items, not just text. A line that says "Service: HVAC Tune-Up — $145" is a different beast from a line that just stores the string "HVAC Tune-Up — $145" with no link to the actual product record. Lose this link and item-based reports, sales-by-product analysis, and inventory movement all stop working on imported data.
Here is how each major alternative handles the four:
Xero (Jet Convert)
Xero's official migration tool is Jet Convert, and it's the best of the bunch among QuickBooks alternatives — but it has real limits buried in the fine print. The conversion is free only when Jet Convert creates the Xero organisation on your behalf, and only for the current and prior fiscal year. Need more than two years of history? You'll pay an additional fee, scaled to data volume. Converting into an existing Xero organisation you already own? Base rate starts at $250.
On the dimensions that matter:
- Items: Free up to 6,000 items — beyond that, you need to contact Xero for assistance.
- Classes: Not converted by default. You have to specifically request that tracking categories be set up, and even then they only apply to transactions compatible with both systems (which excludes many journal-entry types).
- Line→Item links: Carried over inside the standard package but the dollar limits above still apply.
Verdict: best of the alternatives, but "free" only applies to a narrow lane of small, recent migrations, and Classes require pre-emptive outreach to support.
Wave
Wave does not have an inventory feature and does not have a Class feature. Their own documentation is direct about it: "Wave only categorizes transactions by account. You cannot create any other classes to track and organize transactions." Inventory tracking is a workaround using asset accounts rather than real inventory records.
There is no QuickBooks import path inside Wave — migration is manual CSV, capped at around 1,000 lines per file (with user reports of even lower caps in practice). Multi-year QuickBooks Desktop history that Wave's free tier accepts? In our testing, you'd be looking at significant manual splitting and re-mapping to even attempt it.
Verdict: Wave is genuinely free, but the product itself doesn't have the destinations for Items and Classes to land — so there is nothing for those parts of your QuickBooks data to migrate into.
Zoho Books
Zoho Books has the most complete feature parity with QuickBooks Desktop of the cloud alternatives, but the migration path is entirely manual: export everything from QuickBooks Desktop to CSV / Excel, map each file to Zoho's template, then import.
The big asterisk: Zoho calls its class equivalent Reporting Tags (recently upgraded to Advanced Reporting Tags). They do work at the transaction and line level, and they do support parent/child hierarchy. But QuickBooks' Class List does not auto-import as Reporting Tags. You set up the tag structure manually in Zoho, then you have to re-tag all your historical transactions as you import them — there is no auto-mapping from Class name to Tag value during the import.
If you have a five-year QuickBooks file with 30,000 transactions tagged by class, that's the kind of effort that sends businesses back to QuickBooks before the migration is finished.
Verdict: feature-complete destination, but classes require manual re-tagging of every historical transaction. Items can be imported via CSV; line→item links are not preserved automatically.
FreshBooks (Easy Switch)
FreshBooks offers Easy Switch, branded as a one-click migration, but it's actually a paid handoff to MMC Convert, a third-party conversion specialist. Pricing isn't published — every job is custom-quoted.
The bigger limitation for QuickBooks Desktop users isn't migration cost but product fit: FreshBooks doesn't have an inventory feature and doesn't have a Class feature in the product at all. So even if the migration brought across your Items and Classes, they'd have nowhere to land.
Verdict: fine for service-only businesses that never used Items or Classes in QuickBooks. Not a viable path for anyone with inventory or multi-segment reporting.
Sage 50
Sage 50 has a native IIF import that handles vendors, customers, employees, inventory and service items, and projects. But the Sage documentation is explicit about a key gap: "accounts are not included" — you'll need to set up the chart of accounts manually.
Classes have no Sage equivalent in the same way, so they're not part of the import flow at all. Bills and invoices import with limitations, and line-level Item linking on imported transactions is inconsistent.
Verdict: a partial path. You get Items, but you lose the chart of accounts and Classes — meaning the migration is fast but the cleanup is enormous.
Odoo
Odoo doesn't ship a QuickBooks Desktop importer natively. The path is through one of several paid connector modules on the Odoo App Store, with prices ranging from $200 to over $1,000 depending on the publisher and Odoo version. Classes are not a standard Odoo concept and aren't part of the supported imports.
Verdict: technically possible but expensive, fragile, and requires choosing among third-party connectors that have varying support and reliability.
The complete comparison
Here is everything we found in a single table:
| Software | Accounts | Cust / Vend | Items | Classes | Bills + Invoices, line→Item | Method |
|---|---|---|---|---|---|---|
| Kantivo | ✓ | ✓ | ✓ | ✓ | ✓ | Native IIF + CSV, free, in-app |
| Xero | ✓ | ✓ | ≤6,000 items | By support request only | Free ≤2yr / $250+ beyond | Jet Convert |
| Wave | Manual CSV | Manual CSV | No inventory feature | No classes feature | Manual CSV, ~1,000-line cap | No QB import |
| Zoho Books | ✓ via CSV | ✓ via CSV | ✓ via CSV | Manual re-tag all transactions | CSV, no line→item link | All manual CSV |
| FreshBooks | Easy Switch (paid) | Easy Switch (paid) | No inventory in product | No classes in product | Easy Switch (paid) | Paid 3rd-party |
| Sage 50 | Not included | ✓ via IIF | ✓ via IIF | Not supported | Limited | Native IIF |
| Odoo | Paid connector | Paid connector | Paid connector | Not standard | Paid connector | Paid App Store module |
Findings reflect publicly documented native import behaviour of each vendor as of May 2026. If something changes, we will update this page.
What we built differently in Kantivo
Kantivo's QuickBooks Desktop importer ships in May 2026 with two list types most alternatives don't support — Items and Classes — and two transaction-level features no alternative offers natively: per-line class tagging on Phase 3 transactions, and line→Item resolution on the Detailed Bill / Invoice import. The whole flow lives inside the import wizard. There is no third-party service to contract with. There is no per-job pricing. There is no two-year cap.
The way the flow lays out:
- Phase 1. Five upload tiles: Chart of Accounts, Customers, Vendors, Items, Classes. Drop in your QuickBooks Desktop IIF exports. Item types translate cleanly (service / inventory / non-inventory / group / discount-percentage / inventory assembly). Class hierarchies preserve their parent/child relationships.
- Phase 2. Optional. Opening balances if you want them.
- Phase 3. Upload your Transaction Detail CSV. If the Class column is included (you turn it on inside QuickBooks via Customize Report → Display tab), Kantivo tags every journal line with its matching class as the import runs. P&L by Class works on day one.
- Detailed Bill / Invoice import. Inside the same flow, when your Transaction List by Customer / Vendor reports include the Item column, each invoice and bill line resolves to the matching Item you uploaded in Phase 1 — so line items become true Item references, not orphaned text.
That's it. No paid migration partner. No two-year limit. No "contact support to enable classes." The capability is built into the product and included in every plan.
Try the migration in a sandbox first
Start a free 30-day trial of Kantivo, create a test company, and run your QuickBooks Desktop export through the import wizard. If the data lands the way you want, repeat into your production company. If it doesn't, you've lost an hour, not a project.
Start Free Trial Try Live DemoSee the technical detail: Our QuickBooks Desktop Import feature page walks through exactly which fields map from each QuickBooks IIF / CSV column to BizBooks records, and our help docs include the step-by-step export instructions for each list type.
Frequently Asked Questions
What do QuickBooks Desktop migrations usually drop?
Typically Items, Classes, and the line-item links on bills and invoices, along with some historical detail - many tools import balances but flatten the structure beneath them.
Which tool keeps Items and Classes during migration?
In our testing, Kantivo preserved Items, Classes, and line-item links on import without paid third-party conversion services.
Do I need a paid converter to leave QuickBooks Desktop?
Cloud tools often depend on paid services such as Jet Convert or Easy Switch, and detail can still be lost. Kantivo's built-in import removes that extra cost.
How long does migrating from QuickBooks Desktop take?
It depends on the tool and data volume - a clean auto-mapped import can take minutes, while manual re-mapping or third-party conversions can take days.
Will my reports still tie out after migrating?
Only if Items, Classes, and line-item links survive; otherwise item-, class-, and project-level reports break. Preserving structure, not just balances, is what keeps reports intact.