Why Data Migration Is the Highest-Risk Phase of Any ERP Project
Organizations upgrading from legacy systems — Microsoft Dynamics NAV, Microsoft Dynamics GP, Dynamics SL, or even older versions of Business Central — carry years of accumulated data into their migration. That data is the operational memory of the business: customer records, vendor accounts, financial history, inventory transactions, and more.
When that migration goes wrong, the consequences cascade across the entire organization.
"You cannot fix bad data inside a new ERP. You can only inherit it. Data quality must be resolved before a single record is migrated."
This guide walks through every phase of a structured ERP data migration — from initial assessment through post-migration validation.
Phase 1: Data Assessment and Scoping
Before any data is moved, the organization must understand exactly what data exists, where it lives, and what condition it is in.
What to Assess
- Data volume: How many records exist across each data domain (customers, vendors, items, transactions)?
- Data age: How far back does historical data need to be migrated vs. archived?
- Data quality: What percentage of records contain errors, duplicates, or missing fields?
- Source system structure: How does the legacy data model map to the target ERP schema?
Scope the Migration, Not Just the Data
Not all data needs to migrate to the new ERP. Historical transactions older than 3–5 years are often better archived in a read-only reporting environment. Migrating only what the business needs operationally significantly reduces migration scope and risk.
Recommended Data Domains to Assess
- Chart of accounts and financial dimensions
- Customer master and contact records
- Vendor master and purchase history
- Item master, BOM, and routing data
- Open transactions (purchase orders, sales orders, AP/AR)
- Historical financial data (at minimum, prior 2 fiscal years)
- Bank account and payment method configuration
Phase 2: Data Cleansing and Standardization
This is the most labor-intensive phase of data migration — and the one most organizations underestimate.
Cleansing Activities by Data Domain
Customer and Vendor Master Data
- Identify and merge duplicate records
- Standardize address formats, postal codes, and country codes
- Validate tax registration numbers and payment terms
- Archive inactive records that have had no activity in 3+ years
Item and Inventory Master
- Resolve duplicate item numbers across product lines
- Standardize units of measure (do not mix lbs and kg without conversion)
- Validate inventory costing methods match the target ERP configuration
- Confirm serial and lot number tracking configuration is consistent
Financial Data
- Reconcile general ledger trial balance to source system
- Validate accounts receivable aging matches open invoice records
- Confirm accounts payable aging matches open PO and invoice records
Common Mistake: Migrating Inactive Records
Many organizations migrate every record from their legacy system — including customers who have not purchased in 10 years, vendors with no open POs, and items that have been discontinued. This clutters the new system, increases migration time, and creates confusion for users. Archive aggressively.
Phase 3: Data Mapping
Legacy ERP systems store data in structures that often do not match modern platforms. Microsoft Dynamics GP stores financial data differently from Business Central. Dynamics NAV 2013 uses different field structures from Dynamics 365 Business Central.
Data mapping defines the translation rules between the source system and the target.
Export Source System Schema
Document every table, field name, data type, and relationship from the legacy system.
Map to Target ERP Schema
For each source field, identify the corresponding target field — or document where a transformation is required.
Document Transformation Rules
When source and target fields do not match directly, define the transformation logic. Example: a 4-digit legacy GL account maps to a 6-digit Business Central account using a prefix rule.
Handle Unmapped Fields
Some legacy fields have no equivalent in the target system. Decide whether to store these in custom fields, notes, or an archive.
Peer Review the Mapping Document
Finance, operations, and IT should all review the mapping. Issues found here cost minutes. Issues found during testing cost days.
Phase 4: Test Migrations
No organization should execute a final data migration without completing at least three test migration cycles.
Test Migration Objectives
- Validate that transformation rules work correctly
- Identify data that fails validation rules in the target system
- Measure migration duration to plan the final go-live cutover window
- Allow users to review migrated data in a test environment
- Focus: structural validation
- Expected: high error rate
- Goal: identify mapping gaps
- Audience: technical team only
- Focus: data quality validation
- Expected: reduced error rate
- Goal: confirm cleansing impact
- Audience: technical + finance leads
- Focus: full business validation
- Expected: near-zero errors
- Goal: sign-off for go-live
- Audience: all key stakeholders
Phase 5: Cutover Planning
The cutover is the period between freezing data entry in the legacy system and going live in the new ERP. This window must be planned with precision.
Cutover Checklist
- Define the cutover freeze date: when does data entry in the legacy system stop?
- Calculate the required migration window: how many hours will the final migration take?
- Assign a migration team with clear role ownership during the cutover
- Prepare a rollback plan in case the migration fails or data validation does not pass
- Communicate the cutover schedule to all affected users and departments
Weekend Cutover Is Standard Practice
Most organizations schedule their ERP go-live cutover over a weekend or end-of-month period to minimize business disruption. Plan for the cutover to begin Friday evening and target Monday morning readiness — with a full contingency day built in.
Phase 6: Post-Migration Validation
Migration does not end at go-live. The first two weeks in the new system are critical for catching issues that were not visible in test migrations.
Validation Checkpoints
Financial Balance Reconciliation
Compare GL trial balance, AR aging, and AP aging in the new system against the legacy system. These must match to the cent.
Inventory Count Verification
Spot-check physical inventory against migrated stock quantities and costs. Prioritize high-value or high-movement items.
Open Transaction Review
Confirm all open purchase orders, sales orders, and invoices migrated correctly and are processable in the new system.
User Acceptance Sign-Off
Have key finance and operations users confirm that migrated data supports their daily workflows before closing the legacy system.
Audit Trail Preservation
Confirm historical data is accessible for audit purposes, either within the new ERP or in an approved archive system.
Common Mistakes to Avoid
- Starting migration too late in the project timeline
- Underestimating the effort required for data cleansing
- Not involving finance in data validation — only IT
- Assuming legacy data is clean because "the old system worked"
- Skipping the final dress rehearsal migration
- Not preparing a rollback plan
Conclusion
A successful ERP data migration is not a technical event — it is a structured business process that requires finance, operations, and IT working together with a clear plan, realistic timelines, and disciplined execution.
Organizations that invest properly in data assessment, cleansing, mapping, testing, and validation consistently achieve smoother go-lives, faster user adoption, and better long-term data quality in their new ERP environment.
Referenced In
- The Real Cost of Running Legacy Dynamics GP in 2026
- How Dynamics 365 Finance Solves 5 Critical Finance Department Pain Points
- Dynamics NAV to Business Central Migration Guide
- ERP Consulting: What Services Do Consultants Provide?
- What Is RevoraSphere? Canada's Purpose-Built Municipal Revenue Management Platform



