Transactions that migrate
The migration imports transactional records in dependency order, after accounts and classifications are mapped. Each source record becomes a DualEntry record of a mapped type, visible on the Data Sync step with a link to both the source record and the DualEntry record it created. The table below lists the source record types each connector imports.
These land as the equivalent DualEntry record rather than as summary journal entries, so a migrated bill is a bill, with its vendor, lines, and open balance intact. On the Data Sync step you can convert an individual source record into any of the DualEntry transaction types by hand when the automatic mapping picked the wrong one.
Master data that migrates
Master data imports before transactions, because a transaction cannot be created until the records it references exist. The table below lists what migrates and any conditions on the import.
DualEntry also creates fallback accounts for source lines that have no mappable account:
[QuickBooks] Default Expense, [QuickBooks] Default Income, [Xero] Default Income, and [Xero] Unpaid Expense Claims. They appear on the Accounts Mapping step and can be mapped to a real account or deactivated, but never skipped. Treat a balance in one as a mapping gap to close before you tie out.
Record numbers
Migrated transactions get new DualEntry document numbers. DualEntry assigns each imported bill, invoice, or payment a number from its own sequence rather than carrying the source system’s number onto the record, so the invoice your customer knows as1042 in QuickBooks is not the invoice number it shows in DualEntry.
Where the source number ends up depends on the record type and the source system. The table below lists where to look for it after a migration.
Invoices are the only record type whose source number lands in the reference number on both connectors, which makes a migrated invoice the easiest record to tie back to its source document. A migrated Xero bill carries its source number in the memo alone, and a migrated QuickBooks bill does not carry it at all, so identify those bills by vendor, date, and amount instead. Xero payments arrive with the Xero payment reference and an internal Xero record ID in the check number field, for example,
5001 [id:98765432].
Plan for this in two places:
- Customer-facing documents. If you reissue or re-send a migrated invoice from DualEntry, it carries the DualEntry number. Tell your AR team which field holds the legacy number before they answer a customer who quotes it.
- Tie-out and reconciliation. Match migrated invoices on the reference number rather than the record number when you compare a migrated period against a source-system report. Tie migrated bills and payments out on vendor, date, and amount. See validate a migration for the wider tie-out sequence.
Attachments
Attachment behavior is the largest single difference between the two sources, and it is worth confirming before you cancel the old subscription. Xero. Source attachments migrate. Documents attached to Xero transactions are downloaded and attached to the corresponding DualEntry record, so invoice PDFs and receipts arrive with the transaction. QuickBooks. Attachments do not migrate. Migrated QuickBooks records arrive with no attachments at all. Plan either a separate export of QuickBooks attachments to upload individually to the corresponding DualEntry records, or continued read-only access to QuickBooks for historical source documents. Which you choose usually depends on your audit cycle. If an auditor will ask for supporting documents on migrated transactions, export them and attach them in DualEntry, where each record holds up to 25 files of 10 MB each. If the migrated periods are already audited and closed, read-only access to the old system is normally enough. Attachments you add later can go on through OCR document upload or on the record itself.What does not migrate
These are out of scope by design. Each needs a decision during cutover rather than a workaround afterwards.- Historical revenue recognition schedules. In-flight contracts are recreated in DualEntry using the cutover date and accumulated revenue fields, which preserve total contract value while generating entries only from cutover forward. See migrate mid-life contracts.
- Prepaid and fixed asset amortization schedules. Recreate these as amortization schedules or fixed assets, using the catch-up fields to carry accumulated balances rather than re-amortizing from the start.
- Reconciliation history. Bank reconciliations completed in the old system do not carry over. Migrated bank transactions arrive unreconciled and reconcile forward in DualEntry.
- Approval history. Which person approved a bill in the source system is not imported. The DualEntry audit trail starts at migration.
- Budgets, saved reports, and report layouts. Rebuild these in the custom report builder and budgeting.
- Users, roles, and permissions. Configure these in DualEntry under Configuration → Company.
- Payroll detail. Payroll arrives as journal entries from a payroll integration going forward rather than as migrated payroll runs.
What arrives through a connector instead
Some data is deliberately not part of the migration because an ongoing integration is the better source for it. Connect these during cutover so there is no gap between the last migrated day and the first connected day. The table below lists each data type and where to set up the connection.
A connector and a migration can both point at the same source system for a period. Confirm the connector’s cutoff date so it does not re-import transactions the migration already brought across.