ERP migration
Field-level mapping, validation, and rollback between Oracle JD Edwards EnterpriseOne and Microsoft Dynamics 365 Business Central. We move data and schema; workflows are rebuilt natively in Microsoft Dynamics 365 Business Central.
Oracle JD Edwards EnterpriseOne
Source
Microsoft Dynamics 365 Business Central
Destination
Compatibility
7 of 12
objects map 1:1 between Oracle JD Edwards EnterpriseOne and Microsoft Dynamics 365 Business Central.
Complexity
BStandard
Timeline
6-10 weeks
Overview
Moving from Oracle JD Edwards EnterpriseOne to Microsoft Dynamics 365 is a schema-translation migration, not a direct record copy. JDE stores entities in a flat F-table architecture (F0101 Address Book, F0901 General Ledger, F4311 Purchase Orders, F4801 Work Orders) with business-unit accounting and multi-currency ledgers; Dynamics 365 Finance and Supply Chain Management uses a dimensional chart of accounts with Financial Dimensions, legal entities, and fiscal calendars that must be designed before data lands. We extract from JDE's F-tables using direct database reads or AIS REST API, transform business-unit identifiers into Dynamics 365 Financial Dimensions, and load through the destination's Data Management Framework with batch chunking. Media objects require the R98MODAT utility to pre-load filesystem-attached files into F00165 before extraction, otherwise attachments silently drop. Open AP and AR transactions carry outstanding balances that must reconcile to the penny post-load. Workflows, UBEs (custom reports), and UDO project reservations do not migrate; we deliver a written inventory of every active UBE and customisation for the customer's admin to rebuild in Visual Studio Code AL or Power Automate post-migration.
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
Oracle JD Edwards EnterpriseOne platform overview
Scorecard, SWOT, gotchas, and pricing for Oracle JD Edwards EnterpriseOne.
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 Oracle JD Edwards EnterpriseOne 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.
Oracle JD Edwards EnterpriseOne
Address Book (F0101, F0111, F0116)
Microsoft Dynamics 365 Business Central
Customer and Vendor
1:manyJDE Address Book (F0101) is a single master entity table for customers, suppliers, employees, and prospects differentiated by Address Book type codes (ECST). We split by ABAN8 address number and the AT1-AT3 alpha name fields: entities with type Customer become D365 CustCustomerV2 entities; type Supplier become VendVendorV2 entities; type Employee become HcmWorkerV2 or DirPerson entities depending on D365 HR module scope. F0111 contact info and F0116 phone numbers attach as Contact Info records linked to the respective Customer or Vendor. We resolve address book numbers (ABAN8) as the dedupe key during import and map JDE category codes to D365 Customer Groups and Vendor Groups.
Oracle JD Edwards EnterpriseOne
General Ledger (F0901)
Microsoft Dynamics 365 Business Central
Main Account and Financial Dimensions
lossyJDE GL uses object-account structure (Company.OBJ.SUB in F0901) where Company maps to a business unit. We translate each JDE object account into a D365 Main Account and generate Financial Dimension sets from the JDE Company and Subsidiary (SUB) values. D365 requires a Chart of Accounts configuration before any GL data loads; we build the COA as a parallel workstream during migration scoping. Budget and actual amounts from F0901 load into GeneralLedgerAccountSummary with fiscal period sliced by the JDE fiscal date patterns.
Oracle JD Edwards EnterpriseOne
Accounts Payable (F0411, F0414)
Microsoft Dynamics 365 Business Central
Vendor Invoice and Vendor Transaction
1:1F0411 invoice headers and F0414 payment history carry open AP balances that must reconcile to the penny post-import. We extract the vendor address number, invoice number, invoice date, due date, gross amount, and currency from F0411 and F0414, then create D365 VendInvoiceJournalHeader and VendInvoiceJournalLine records with the open amount preserved in PaymentTermsReference. JDE invoice numbers become D365 InvoiceNumbers; we flag duplicates against existing D365 vendor invoices during load.
Oracle JD Edwards EnterpriseOne
Accounts Receivable (F0311, F03B11)
Microsoft Dynamics 365 Business Central
Customer Invoice and Customer Transaction
1:1F0311 invoice headers and F03B11 receipt history carry open AR balances. We map F0311 document number to D365 InvoiceNumber, invoice date to InvoiceDate, and outstanding balance to PaymentTermsReference on the CustomerInvoiceEntity. Receipt records from F03B11 become D365 CashDisc and PaymentJournal records linked to the customer account. Currency conversion rates from F0015 (currency exchange rates) are pre-loaded into D365 ExchangeRateProvider before AR import.
Oracle JD Edwards EnterpriseOne
Item Master (F4101)
Microsoft Dynamics 365 Business Central
Released Product
1:1F4101 item master records map to D365 Released Products with item number, description, unit of measure (from F41002), and stocking type preserved. JDE stocking type codes (STKT) map to D365 ProductType (Item vs Service) and InventoryModelGroup. Cost layers from F4101 (LandedCost factors) translate to D365 CostingVersion and CostGroup assignments. JDE category codes (CTRY, PCTR, LOCN) become D365 Product Categories linked via CategoryHierarchy.
Oracle JD Edwards EnterpriseOne
Branch/Plant Inventory (F4102)
Microsoft Dynamics 365 Business Central
Warehouse and On-hand Inventory
1:1F4102 branch/plant records map to D365 Warehouses (inventLocationId from JDE MPLN or branch plant code) and InventOnHand entities. Quantity on hand at the time of migration freeze date is extracted from F4102 and loaded into D365 InventSum with the corresponding site and warehouse references resolved. Serial and lot numbers from F4108 and F41L08 load as D365 InventSerial and InventLot entities linked to the on-hand records.
Oracle JD Edwards EnterpriseOne
Sales Order (F4211, F42119)
Microsoft Dynamics 365 Business Central
Sales Order Header and Line
1:1F4211 order headers and F42119 order detail lines are the most structurally complex JDE tables because pricing, taxes, and branch/plant assignments are embedded directly in the line record. We extract header fields (document type, order number, customer address number, order date) and line fields (item number, quantity ordered, unit price, extended amount, branch/plant) separately, then reconstruct them as D365 SalesOrderHeaderEntity and SalesOrderLineEntity records. JDE order status codes (STAJ) map to D365 SalesOrderStatus with held orders flagged as SalesOrderHoldStatus.
Oracle JD Edwards EnterpriseOne
Purchase Order (F4311)
Microsoft Dynamics 365 Business Central
Purchase Order Header and Line
1:1F4311 uses a complex row structure where receipt and invoicing lines are intermingled with order lines under the same document number. We extract purchase order headers, lines, and schedule dates as separate queries, then reconstruct them as D365 PurchTable and PurchLine entities. Receipt schedules (F43121) map to D365 PurchReceiptSchedule. JDE document types (DCTO) map to D365 PurchTableOriginDocumentType.
Oracle JD Edwards EnterpriseOne
Work Order (F4801, F3112, F3003)
Microsoft Dynamics 365 Business Central
Production Order with Route and BOM
1:manyJDE Work Orders (F4801) carry routing and operation data in F3112 and BOM assembly lines in F3003 as three separate linked tables. We extract the complete work order assembly hierarchy, resolve the parent F4801 WO number, and reconstruct it as a D365 ProductionOrder with routes (from F3112 operation sequences and work centres) and bill of materials (from F3003 component lines) as sub-components. JDE work order status (WOST) maps to D365 ProductionOrderStatus. We flag any F3111 route revisions for manual review post-import.
Oracle JD Edwards EnterpriseOne
Pricing Schedules (F4072)
Microsoft Dynamics 365 Business Central
Trade Agreements and Price Groups
lossyJDE Advanced Pricing schedules in F4072 store effective dates, break quantities, adjustment types, and formula-based pricing. We extract the full pricing hierarchy and map price adjustment rules to D365 Trade Agreements (SalesPrice and PurchasePrice) and PriceGroup entities. JDE pricing formulas requiring calculation logic that cannot map to D365 trade agreement conditions are flagged in the pricing inventory document for manual rebuild in the D365 pricing page or a pricing extension.
Oracle JD Edwards EnterpriseOne
Media Objects (F00165)
Microsoft Dynamics 365 Business Central
Attachment via SharePoint or Dataverse
1:1Media objects stored in F00165 (attachments, images, embedded documents) require R98MODAT to be run as a pre-export step to load filesystem-attached files into the database. Without this utility, attachments are silently excluded from the JDE export. We run R98MODAT before extraction and then migrate media objects as D365 attachments linked via the SharePoint document management integration or the Dataverse annotation entity depending on the target D365 workload.
Oracle JD Edwards EnterpriseOne
User Defined Objects (UDOs)
Microsoft Dynamics 365 Business Central
Custom Objects or Azure Data Lake
lossyJDE UDOs (custom reports/UBEs, custom tables, custom business functions) tracked in the Object Management Workbench are not end-user data and do not have a direct D365 equivalent. UDOs reserved to a specific development project are reassigned to the user's default project during the JDE export process; we document every UDO project assignment pre-export and re-reserve in the target environment post-import. Custom UBEs cannot be compiled for D365; we deliver a written UDO inventory with each object's purpose, last-modified date, and the recommended D365 rebuild path (Power BI for reports, AL extensions for custom tables).
| Oracle JD Edwards EnterpriseOne | Microsoft Dynamics 365 Business Central | Compatibility | |
|---|---|---|---|
| Address Book (F0101, F0111, F0116) | Customer and Vendor1:many | Fully supported | |
| General Ledger (F0901) | Main Account and Financial Dimensionslossy | Fully supported | |
| Accounts Payable (F0411, F0414) | Vendor Invoice and Vendor Transaction1:1 | Fully supported | |
| Accounts Receivable (F0311, F03B11) | Customer Invoice and Customer Transaction1:1 | Fully supported | |
| Item Master (F4101) | Released Product1:1 | Fully supported | |
| Branch/Plant Inventory (F4102) | Warehouse and On-hand Inventory1:1 | Fully supported | |
| Sales Order (F4211, F42119) | Sales Order Header and Line1:1 | Fully supported | |
| Purchase Order (F4311) | Purchase Order Header and Line1:1 | Fully supported | |
| Work Order (F4801, F3112, F3003) | Production Order with Route and BOM1:many | Fully supported | |
| Pricing Schedules (F4072) | Trade Agreements and Price Groupslossy | Mapping required | |
| Media Objects (F00165) | Attachment via SharePoint or Dataverse1:1 | Mapping required | |
| User Defined Objects (UDOs) | Custom Objects or Azure Data Lakelossy | Mapping required |
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.
Oracle JD Edwards EnterpriseOne gotchas
JDE-to-Cloud version parity is mandatory
Media objects must be pre-loaded before export
User Defined Objects lose their project reservation
AIS REST API requires token-based authentication on v2 endpoints
Workflow thresholds silently suppress notifications
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 D365 edition selection
We audit the JDE environment across modules licensed (Financials, Distribution, Manufacturing), Tools and Applications release (P96470 output), database backend (Oracle or SQL Server), and active UDO count from the Object Management Workbench. We pair this with a D365 edition decision: Business Central ($175/user/mo, 10-2,000 users, suited to companies with simpler supply chain) versus Finance and Supply Chain Management ($180-$430/user/mo, for multi-site manufacturing and advanced warehousing). The discovery output is a written migration scope, a COA redesign proposal, and a D365 edition recommendation.
Chart of Accounts redesign and Financial Dimension strategy
We extract every distinct Company and Subsidiary combination from F0901, every business unit (MCU) from F0006, and every cost object from F4101 category codes. These become either D365 Main Accounts or Financial Dimension values in a structure approved by the customer's finance team. We configure the D365 COA in a Sandbox or DEV environment before any data moves, deploy the Main Account chart via the Data Management Framework, and validate that opening balances post correctly before proceeding.
Schema pre-creation and data validation in Sandbox
We pre-create all D365 entities (Customers, Vendors, Released Products, Warehouses, Sales Orders, Purchase Orders, Production Orders) and custom fields in the target D365 environment before any JDE data loads. We run R98MODAT to pre-load media objects. We then run a full migration into a D365 Sandbox using production-like data volumes from JDE. The customer's finance and operations leads reconcile record counts, spot-check 25-50 records against JDE source, and validate GL balance reconciliation. Schema and mapping corrections happen in Sandbox, not in production.
Master data migration in dependency order
We run production migration in dependency order: Chart of Accounts and Financial Dimensions first, then Address Book (split to Customer and Vendor entities), then Item master and branch/plant inventory, then open AP and AR transactions with balances, then Sales Orders and Purchase Orders. Each phase emits a row-count reconciliation report and a balance check before the next phase begins. Parent-record lookups (AccountId on Contact, ItemId on SalesOrderLine) are resolved in-memory before insert to avoid foreign-key failures.
Transactional and manufacturing data migration
Work orders, BOMs, and routing data are loaded as a single sequenced batch after master data is validated. We use batch chunking and exponential backoff on the D365 Data Management Framework OData API with 429-throttling handling. JDE Advanced Pricing schedules (F4072) are converted to D365 Trade Agreements and flagged for any formula-based pricing that cannot map directly. Activity history (if any Help Desk or CRM-like engagements exist in JDE) is migrated to D365 notes or custom entity records.
Cutover, validation, and UDO inventory handoff
We freeze JDE writes during cutover, run a final delta migration of any records modified during the migration window, and enable D365 as the system of record. We deliver the UDO inventory document listing every custom UBE, custom table, and Object Management Workbench project reservation for the customer's admin to rebuild in Visual Studio Code AL, Power Automate, or a D365 partner. We support a two-week hypercare window where we resolve any reconciliation issues. Post-cutover, any workflows, approval routes, or automation rebuilds are a separate engagement.
Platform deep dives
Oracle JD Edwards EnterpriseOne
Source
Strengths
Weaknesses
Microsoft Dynamics 365 Business Central
Destination
Strengths
Weaknesses
Complexity grading
Standard ERP migration. All 8 core objects map 1:1 between Oracle JD Edwards EnterpriseOne and Microsoft Dynamics 365 Business Central.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Oracle JD Edwards EnterpriseOne and Microsoft Dynamics 365 Business Central.
Object compatibility
All 8 core objects map 1:1 between Oracle JD Edwards EnterpriseOne and Microsoft Dynamics 365 Business Central.
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
Oracle JD Edwards EnterpriseOne: Not publicly documented by Oracle for the AIS Server REST API.
Data volume sensitivity
Oracle JD Edwards EnterpriseOne 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 Oracle JD Edwards EnterpriseOne to Microsoft Dynamics 365 Business Central migration scoping. Not seeing yours? Book a call.
Walk through your Oracle JD Edwards EnterpriseOne 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 Oracle JD Edwards EnterpriseOne
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.