Data migration is often treated as a technical task: extract, transform, load. In practice it is a finance and audit task as much as a technical one. If balances don't reconcile, or nobody can prove they do, the new ERP starts with a credibility problem. These are the controls we put around every migration.
Decide what to migrate
- Master data: customers, vendors, items, chart of accounts, fixed assets, bank accounts.
- Open items: open receivables and payables, open orders, inventory on hand.
- Balances: general ledger opening balances, or monthly net change for comparative periods.
- History: detailed history is often kept in the old system or an archive for lookup.
Every choice should be agreed with finance and, where relevant, your auditors.
Mapping
- A mapping document for each data type: source field, target field, transformation rule and owner.
- Mapping of codes such as payment terms, tax codes, posting groups and dimensions.
- Rules for defaults where the source has no value.
- Sign-off by the business owner of each data type.
Cleansing
Fix data in the source before migration where possible, so the old and new systems agree. Typical tasks: removing duplicates, closing inactive records, completing missing fields and standardizing addresses.
The extract, transform and load process
- Use repeatable scripts or tools, not manual edits, so each trial migration produces the same result.
- Keep source extracts for each run as evidence.
- Log record counts at each stage: extracted, transformed, loaded, rejected.
- Investigate every rejected record.
Reconciliation controls
Counts
Number of customers, vendors, items and open documents in source and target.
Values
- Trial balance by account must match. The ledger must balance in total and by period.
- Aged receivables and payables must match by customer and vendor.
- Inventory quantity and value must match by item and location.
- Fixed asset cost and accumulated depreciation must match by asset.
Samples
Check a sample of individual records field by field, chosen to include unusual cases: foreign currency, credit balances, partial payments.
Testing
- At least two full trial migrations before go-live, with reconciliation each time.
- Run business processes on migrated data during user acceptance testing: pay a migrated invoice, ship a migrated order.
- Time the full load to plan the cutover window.
Audit evidence
Keep a migration file with mapping documents, extract files, load logs, reconciliation reports and sign-offs. Auditors will often ask how opening balances were established; this file answers that question.
Common pitfalls
- Migrating balances without the detail behind them.
- Changing the chart of accounts without a clear mapping from old to new.
- Treating the final migration as a formality instead of a controlled, reconciled step.
Next step
Read our cutover and rollback checklist, see our ERP migration services in Canada, or send a migration enquiry.