ERP Data Migration Guide: Profile, Cleanse, Rehearse, Reconcile
How to migrate data to a new ERP without losing control: scope, profiling, cleansing, mapping, scripted loads, mock migrations, reconciliation and cutover.
Service · Data & Integration
Overview
We treat ERP migration as three projects running together: redesigning processes for the new platform, moving data with full reconciliation, and re-pointing every integration and report. Each has its own owner, plan and acceptance criteria.
01The problem
The new system is configured to mimic the old one, inheriting workarounds for limitations that no longer exist.
Reports, spreadsheets, EDI feeds and scripts that quietly depend on the old system's database are discovered after cutover.
Opening stock and ledger balances loaded into the new system do not reconcile with the old one, and nobody can explain the difference.
The first time the full migration runs is the go-live weekend.
02Our approach
We begin with a dependency inventory: every report, integration, export, spreadsheet and manual process that touches the current ERP. That list becomes part of the scope, so nothing is discovered by accident after the old system is switched off.
Processes are redesigned for the new platform's strengths rather than copied. Data moves through scripted, repeatable pipelines with at least two full mock migrations. For each mock, we reconcile record counts, stock quantities and values by location, open order totals and the trial balance, and we fix the scripts until the numbers match.
Where risk justifies it, we run the new system in parallel for a period — processing the same transactions in both and comparing results — before switching off the old one.
03Capabilities
Every integration, report and manual process that relies on the current ERP, mapped and planned.
Future-state processes that use the new platform's standard functionality.
Master data, open transactions and opening balances, cleansed and reconciled.
Every connected system moved to the new ERP, tested against realistic volumes.
Operational and management reports recreated, with numbers validated against the old system.
Optional side-by-side operation with structured comparison before cutover.
04Technical considerations
Direct database extracts where possible, API exports where not, with performance impact on the live system managed.
Decide what moves (master data, open items, balances), what is summarised (comparative periods) and what is archived (closed detail).
Automated comparison of counts, quantities, values and balances between source and target after each run.
Clear criteria and steps for reverting to the old system if go-live checks fail.
05Process
Current system, dependencies, data quality and migration risks.
Future-state processes, data mapping and cutover strategy.
New system configuration, migration scripts, integrations and reports.
Mock migrations with reconciliation, plus user acceptance testing.
Freeze, final migration, reconciliation sign-off and go/no-go.
Archive legacy data accessibly and retire the old system safely.
06Outcomes
The business keeps trading through the transition, with a tested fallback.
Stock and ledger balances reconcile to the penny, signed off by finance.
Workarounds and dead data stay behind with the old platform.
Where it applies
Related services
Insights
How to migrate data to a new ERP without losing control: scope, profiling, cleansing, mapping, scripted loads, mock migrations, reconciliation and cutover.
An Odoo 20 upgrade checklist covering breaking changes: record rules, tracking values, account groups, Field Service, payroll work entries, icons and the RPC API.
How to upgrade Odoo to a new major version: assessing custom modules, upgrade service vs OpenUpgrade, test cycles and a cutover plan that holds.
FAQ
Common sources include QuickBooks, Xero, Sage 50/100/300, Tally, SAP Business One, Microsoft Dynamics NAV, GP and AX, older Odoo versions, ERPNext and custom or in-house systems.
Rarely. Most clients migrate master data, open transactions and opening balances, load comparative periods as summary balances, and keep detailed history accessible in an archive.
By rehearsing the full migration at least twice, scripting every step, and scheduling the final run over a low-activity window. Most businesses experience a short transaction freeze rather than real downtime.
A fiscal year-end simplifies accounting, but it is also the busiest time for finance. A month or quarter end often works well. We help weigh the tradeoffs for your situation.
Consultation
We will inventory what depends on your current system and outline a migration plan that protects the business.