ERP migration
Field-level mapping, validation, and rollback between Agility ERP and Microsoft Dynamics 365 Business Central. We move data and schema; workflows are rebuilt natively in Microsoft Dynamics 365 Business Central.
Agility ERP
Source
Microsoft Dynamics 365 Business Central
Destination
Compatibility
9 of 13
objects map 1:1 between Agility ERP and Microsoft Dynamics 365 Business Central.
Complexity
BStandard
Timeline
5-8 weeks
Overview
Moving from Agility ERP to Microsoft Dynamics 365 is a platform upgrade for growing distribution and manufacturing companies that have outgrown Agility ERP's user management, limited third-party integrations, and outdated interface. Agility ERP stores core transactional data (Customers, Vendors, Orders, Inventory, Chart of Accounts) in a format that maps directly to Dynamics 365 Business Central or Finance & Supply Chain Management entities, but three structural differences require explicit handling during migration: Agility ERP's proprietary order status labels must be translated to Dynamics status codes, GL account codes longer than Dynamics allows must be flagged and renumbered, and fixed asset records require a custom database extract coordinated with Agility ERP support since the platform exposes no API or standard report for this data. We sequence the migration in dependency order (Accounts and Vendors first, then Orders and Inventory, then Journal Entries and Custom Fields), use Dynamics 365 OData or Direct Import APIs with batch chunking and retry logic, and deliver a written inventory of any Agility ERP workflows, alerts, or custom forms that require rebuild in Dynamics.
Every standard and custom field arrives verified.
AI proposes the map; you confirm before any record moves.
Parent–child, lookups, and ownership stay linked.
Calls, emails, meetings — with original timestamps.
Documents, uploads, and inline notes move with the record.
Source platform
Agility ERP platform overview
Scorecard, SWOT, gotchas, and pricing for Agility ERP.
Destination platform
Microsoft Dynamics 365 Business Central platform overview
Scorecard, SWOT, gotchas, and pricing for Microsoft Dynamics 365 Business Central.
Data migration guide
The complete Dynamics 365 Business Central migration guide
Data model, import mechanisms, field mapping strategy, pitfalls, and cutover — by the engineers running it.
Destination checklist
Dynamics 365 Business Central migration checklist
Pre- and post-cutover tasks for moving onto Microsoft Dynamics 365 Business Central.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a Agility ERP object lands in Microsoft Dynamics 365 Business Central, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Agility ERP
Customer
Microsoft Dynamics 365 Business Central
Customer (Business Central) / Vendor (Finance & Operations)
1:1Agility ERP Customer records map directly to Dynamics 365 Customer (which is a party-type entity that covers both people and organizations). Address, contact name, phone, email, and payment terms transfer as standard fields. We validate email format and flag duplicate customers by name and tax ID before import. Dynamics 365 requires a Customer template (Customer Template field) to be set during import; we pre-create template assignments during the discovery phase.
Agility ERP
Vendor
Microsoft Dynamics 365 Business Central
Vendor
1:1Vendor records including remit-to addresses, tax IDs, and payment terms move 1:1 to Dynamics 365 Vendor. We check for duplicate vendor names across the import set to prevent double-creation. Remit-to address mapping aligns with Dynamics 365's separate Remit-to Address concept, which Agility ERP may store as a sub-address on the vendor record.
Agility ERP
Open Sales Order
Microsoft Dynamics 365 Business Central
Sales Order
1:1Open sales orders transfer with line items, quantities remaining, order date, and customer reference. Status mapping is required: Agility ERP's proprietary statuses (Open, Released, Backordered, Pending) must translate to Microsoft Dynamics 365 Sales Order status values (Open, Released, Shipped, Invoiced). We build a customer-specific status lookup table during discovery. Header-level discount and freight fields map to Dynamics 365's respective posting group and charge amount fields.
Agility ERP
Open Purchase Order
Microsoft Dynamics 365 Business Central
Purchase Order
1:1Open purchase orders transfer with the same status-mapping logic applied to sales orders. Supplier reference fields, expected receipt dates, and line-level purchase quantities migrate with the parent Purchase Order record. We preserve the original Agility ERP purchase order number in the External Document Number field for audit trail continuity.
Agility ERP
Inventory Item
Microsoft Dynamics 365 Business Central
Item (Business Central) / Released Product (Finance & Operations)
1:1Inventory items carry cost layer data (average cost, FIFO layer, or lot cost) that requires explicit mapping to the destination's costing method. Agility ERP average cost maps to Dynamics 365 Standard Cost; Agility ERP FIFO maps to Dynamics 365 FIFO; Agility ERP lot cost maps to Dynamics 365 Specific. Stock on hand and reorder point values transfer but reorder points require re-evaluation against Dynamics 365's replenishment system. Unit of measure conversions are preserved as UOM schedules in Dynamics 365.
Agility ERP
Chart of Accounts
Microsoft Dynamics 365 Business Central
Chart of Accounts
1:1Account codes, descriptions, and classification (Asset, Liability, Expense, Revenue) move across. Agility ERP account codes that exceed Dynamics 365's character limit (typically 20 characters in Business Central) are flagged and renumbered during scoping, and we deliver a GL code mapping table alongside the migrated chart of accounts. Account type mapping (Posting vs. Heading vs. Total) aligns with Dynamics 365's account category structure.
Agility ERP
Fixed Asset
Microsoft Dynamics 365 Business Central
Fixed Asset
1:1Agility ERP does not expose fixed asset records through its standard reporting or API layer. We flag any customer with a non-zero fixed asset balance during scoping and coordinate a direct database extract with Agility ERP support before the migration window. This is a high-severity gotcha: the extract requires a separate professional services engagement on the Agility side and adds lead time of two to four weeks. Depreciation schedules, asset books, and acquisition dates migrate to Dynamics 365 Fixed Asset setup once the extract is received and validated.
Agility ERP
Journal Entry
Microsoft Dynamics 365 Business Central
General Journal
1:1Historical journal entries transfer as General Journal lines with memo, date, and amount. We flag entries that contain embedded account IDs from the legacy chart of accounts and remap them to the new Dynamics 365 GL structure before loading. Only open or recent period entries are typically migrated; fully closed and reconciled periods are archived per the customer's period-close policy.
Agility ERP
Custom Field
Microsoft Dynamics 365 Business Central
Custom Field
lossyAgility ERP stores custom fields in a non-standard extension table outside the main API layer. Each custom field requires field-by-field review to identify its data type, then explicit creation of the equivalent custom field in Dynamics 365 before import. We do not attempt automated custom field migration without this review, because mis-typed custom fields cause import failures at record level. The customer receives a custom field inventory listing every extension field with recommended Dynamics 365 field type.
Agility ERP
Location / Warehouse
Microsoft Dynamics 365 Business Central
Location
1:1Warehouse and location codes from Agility ERP map to Dynamics 365 Locations (or Sites in Finance & Operations). Bin and shelf address structures transfer where present. Location-specific inventory quantities require separate inventory posting group assignment in Dynamics 365 during import to maintain accurate on-hand reporting per site.
Agility ERP
Payment Term
Microsoft Dynamics 365 Business Central
Payment Term
lossyPayment terms (Net 30, Net 60, 2/10 Net 30, etc.) map to Dynamics 365 Payment Terms templates. We create Payment Terms records in Dynamics 365 during configuration using the same discount percentages and due date calculations as the source system. Terms that do not have a direct Dynamics 365 equivalent are flagged for the customer's finance team to validate.
Agility ERP
Tax Group
Microsoft Dynamics 365 Business Central
Tax Group
lossyAgility ERP tax codes map to Dynamics 365 Tax Group definitions with associated Tax Product Posting Group assignments. We audit the source tax jurisdiction list against Dynamics 365's available tax posting profiles and flag any jurisdiction that requires a new VAT or sales tax posting group setup before import begins.
Agility ERP
Unit of Measure
Microsoft Dynamics 365 Business Central
Unit of Measure
lossyUOM codes and conversion factors from Agility ERP transfer to Dynamics 365 UOM schedules. We validate conversion ratios against Dynamics 365's UOM precision requirements and flag any conversion that would lose precision at the destination.
| Agility ERP | Microsoft Dynamics 365 Business Central | Compatibility | |
|---|---|---|---|
| Customer | Customer (Business Central) / Vendor (Finance & Operations)1:1 | Fully supported | |
| Vendor | Vendor1:1 | Fully supported | |
| Open Sales Order | Sales Order1:1 | Fully supported | |
| Open Purchase Order | Purchase Order1:1 | Fully supported | |
| Inventory Item | Item (Business Central) / Released Product (Finance & Operations)1:1 | Fully supported | |
| Chart of Accounts | Chart of Accounts1:1 | Mapping required | |
| Fixed Asset | Fixed Asset1:1 | Fully supported | |
| Journal Entry | General Journal1:1 | Fully supported | |
| Custom Field | Custom Fieldlossy | Fully supported | |
| Location / Warehouse | Location1:1 | Fully supported | |
| Payment Term | Payment Termlossy | Fully supported | |
| Tax Group | Tax Grouplossy | Fully supported | |
| Unit of Measure | Unit of Measurelossy | Fully supported |
Gotchas + challenges
Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.
Agility ERP gotchas
Fixed asset data requires custom extraction
GL code character limits vary by destination
Open order status vocabulary differs from industry standards
Microsoft Dynamics 365 Business Central gotchas
Named-user licensing has no concurrent-use relief
API rate limits throttle large-volume migrations
Historical posted transactions require selective migration scoping
NAV-to-Business Central cloud migration requires partner coordination
Custom fields and AL extensions require separate migration handling
Pair-specific challenges
Migration approach
Discovery and fixed asset flagging
We audit the Agility ERP environment: customer and vendor counts, open order volume, inventory item count with costing method per item, chart of accounts code lengths, custom field inventory from the extension table, and journal entry history by period. We specifically flag any customer with a non-zero fixed asset balance and initiate the custom database extract request with Agility ERP support. We also assess whether the destination is Business Central or Finance & Operations based on the customer's user count, entity count, and functional requirements. The discovery output is a written migration scope document listing all entity counts, custom field inventory, fixed asset extract timeline, and a recommended Dynamics 365 edition.
Schema pre-creation and GL code audit
We pre-create the Dynamics 365 environment schema before any data moves. This includes Customer and Vendor templates, Chart of Accounts with account categories, Payment Terms, Tax Groups, Location records, and all custom fields identified in discovery. We run the GL code audit: any Agility ERP account code exceeding the Dynamics 365 character limit is renumbered and logged in a mapping table. Inventory items are assigned costing methods and inventory posting groups. Purchase and Sales Order status lookup tables are configured in Dynamics 365 before order import begins.
Sandbox migration and reconciliation
We run a full migration into a Dynamics 365 Sandbox (or a validation company if using Finance & Operations) using production-like data volumes. The customer's finance and operations leads reconcile record counts across all entity types, spot-check 25-50 records against the Agility ERP source, and validate order status assignment, GL account mapping, and inventory costing. Any mapping corrections are documented and applied to the production migration plan. The customer signs off the sandbox reconciliation before we proceed to production.
Fixed asset extraction and validation
If the customer has a fixed asset balance, we receive the custom database extract from Agility ERP support, validate it against Agility ERP's fixed asset register report, and transform it into a Dynamics 365-compatible format. Depreciation books, acquisition dates, and depreciation terms are mapped to the Dynamics 365 Fixed Asset setup. This step runs in parallel with sandbox reconciliation to avoid adding timeline duration.
Production migration in dependency order
We run production migration in record-dependency order: Vendors first (since Purchase Orders reference them), then Customers (since Sales Orders reference them), then Inventory Items (since Order Lines reference them), then Locations, then Purchase Orders and Sales Orders with status mapping applied, then Journal Entries with GL code remapping, then Custom Fields with type-mapped values. Each phase emits a row-count reconciliation report before the next phase begins. We use Dynamics 365 OData or Direct Import APIs with batch chunking (typically 1,000 records per batch), rate-limit handling, and exponential backoff for any throttled requests.
Cutover, validation, and workflow inventory handoff
We freeze Agility ERP writes during the cutover window, run a final delta migration of any records modified during the migration, then enable Dynamics 365 as the system of record. We deliver a written inventory of Agility ERP alerts, custom forms, and any platform-specific workflows that have no direct Dynamics 365 equivalent. The customer's admin team rebuilds these in Dynamics 365 using standard configuration or a Dynamics partner. We support a one-week hypercare window for reconciliation issues raised during the first production week.
Platform deep dives
Agility ERP
Source
Strengths
Weaknesses
Microsoft Dynamics 365 Business Central
Destination
Strengths
Weaknesses
Complexity grading
Standard ERP migration. 1 of 8 objects need a mapping; the rest are 1:1.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Agility ERP and Microsoft Dynamics 365 Business Central.
Object compatibility
1 of 8 objects need a mapping; the rest are 1:1.
Field mapping clarity
Field mapping is derived from defaults — final spec confirmed during the sample migration.
Timeline complexity
8-object category — typical timelines run 2–7 days end-to-end.
API constraints
Agility ERP: Not publicly documented.
Data volume sensitivity
Agility ERP doesn't expose a bulk API — REST + parallelization used for high-volume runs.
Estimator
Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.
Step 1
Pick a category, then your source and destination platforms.
Category
FAQ
Answers to the questions buyers ask most during Agility ERP to Microsoft Dynamics 365 Business Central migration scoping. Not seeing yours? Book a call.
Walk through your Agility ERP to Microsoft Dynamics 365 Business Central migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Agility ERP
Other ways to arrive at Microsoft Dynamics 365 Business Central
Ready when you are
Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.