ERP migration
Field-level mapping, validation, and rollback between Oracle PeopleSoft and Microsoft Dynamics 365 Business Central. We move data and schema; workflows are rebuilt natively in Microsoft Dynamics 365 Business Central.
Oracle PeopleSoft
Source
Microsoft Dynamics 365 Business Central
Destination
Compatibility
16 of 16
objects map 1:1 between Oracle PeopleSoft and Microsoft Dynamics 365 Business Central.
Complexity
BStandard
Timeline
10-14 weeks
Overview
Moving from Oracle PeopleSoft to Microsoft Dynamics 365 Finance and Supply Chain Management is a cross-platform ERP migration that requires extracting from the PeopleSoft relational schema (Oracle or SQL Server) rather than a public API, since PeopleSoft has no outbound bulk data API. We connect to the underlying database, reverse-engineer record definitions from PeopleTools metadata, and map PeopleSoft business units and setIDs to Dynamics 365 legal entities and operating units. The HCM migration is equally complex: PeopleSoft's temporal data model uses effective-dated rows on EMPLOYEES, JOB, POSITION_DATA, and JOBCODE_TBL that have no direct Dynamics 365 equivalent, so we establish a cutoff policy with the customer during scoping and carry forward the original effective dates as custom fields for audit compliance. We do not migrate PeopleSoft Application Engine processes, PeopleCode scripts, or workflow routing rules; we deliver a written inventory of these customizations for the customer's functional team to re-engineer in Dynamics 365.
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 PeopleSoft platform overview
Scorecard, SWOT, gotchas, and pricing for Oracle PeopleSoft.
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 PeopleSoft 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 PeopleSoft
Account (COA)
Microsoft Dynamics 365 Business Central
MainAccount
1:1PeopleSoft stores the Chart of Accounts in ACCOUNT_TBL and related tables with EFFDT effective-date rows and SETID security scoping. We extract all active and historical account rows preserving DT_EFFECTIVE and SETID. Each PeopleSoft account becomes a Dynamics 365 MainAccount with a legal entity assignment. SetIDs controlling security access map to a combination of Dynamics 365 Financial Dimension structures and role-based security scopes that the customer configures post-migration.
Oracle PeopleSoft
Business Unit
Microsoft Dynamics 365 Business Central
Legal Entity
1:1PeopleSoft FSCM business units (BU) are the primary organizational and accounting segmentation unit. Each BU in PS_BUS_UNIT_TBL with its associated SETID, currency, and fiscal calendar maps to a Dynamics 365 Legal Entity. We preserve the BU code as a reference field and map the BU-level GL ledger to the corresponding Dynamics 365 Ledger. Multi-company migrations with intercompany journals require additional ledger and intercompany setup coordination.
Oracle PeopleSoft
Department (DEPT_TBL)
Microsoft Dynamics 365 Business Central
Department
1:1PeopleSoft DEPT_TBL stores cost center hierarchies with EFFDT rows and setID linkages to the Chart of Accounts. We extract the full department tree preserving EFFDT, setID, and manager hierarchy. Dynamics 365 Department uses a dimension-based structure aligned to the Financial Dimension framework. We map the PeopleSoft department cost center to a Dynamics 365 Department dimension value and link it to the appropriate legal entity.
Oracle PeopleSoft
Employee (EMPLOYEES, PERSONAL_DATA)
Microsoft Dynamics 365 Business Central
Worker (HcmWorker)
1:1PeopleSoft EMPLOYEES and PERSONAL_DATA hold the core HCM record with hire date, termination date, HR status, manager EMPLID, and emergency contacts. We map EMPLID to a new Dynamics 365 PersonnelNumber or carry it forward as a custom field (ORIG_EMPLID__c) if integrations and spreadsheets reference it as a foreign key. Manager hierarchy maps to the Worker hierarchy in Human Resources. Birth date and national ID require field-level encryption handling in Dynamics 365 HCM.
Oracle PeopleSoft
Job (JOB)
Microsoft Dynamics 365 Business Central
Job
1:1PeopleSoft JOB is the temporal HR record with EFFDT and EFFSEQ sequences capturing every job data change including position assignment, compensation grade, department, supervisor, and FLSA status. We establish a cutoff policy during scoping (current snapshot only or full effective-date history) because Dynamics 365 HCM uses valid-from and valid-to on PositionWorkerAssignmentV2 rather than a sequential EFFDT model. Full history migrations require multiple PositionWorkerAssignment records per worker, which increases load complexity and requires validation with the customer HR team.
Oracle PeopleSoft
Position (POSITION_DATA)
Microsoft Dynamics 365 Business Central
Position
1:1PeopleSoft POSITION_DATA stores position definitions with budgeted headcount, department, job code, and incumbent EMPLID. Position-based organizations must reconstruct the incumbent-to-position linkage across POSITION_DATA, JOB, and EMPLOYEES records before mapping to Dynamics 365 Position entities. We separate mixed position-based and job-based structures during extraction, because Dynamics 365 HCM requires explicit Position type configuration that differs from PeopleSoft's setID-scoped position management.
Oracle PeopleSoft
Job Code (JOBCODE_TBL)
Microsoft Dynamics 365 Business Central
Job
1:1PeopleSoft JOBCODE_TBL stores job code definitions with grade, step, pay range, and FLSA category. We extract active and historical job code rows preserving EFFDT. Dynamics 365 Job is a less granular structure focused on position classification rather than pay administration. Custom job code extensions built in PeopleSoft PeopleTools require field-level enumeration during scoping and reimplementation as Dynamics 365 Job attribute fields or compensation fixed plan configurations.
Oracle PeopleSoft
GL Journal Entries (GL_JRNL_HEADER, GL_JRNL_LINE)
Microsoft Dynamics 365 Business Central
GeneralJournalEntry
1:1PeopleSoft GL journals map to Dynamics 365 GeneralJournalEntry with AccountType, MainAccount, and FinancialDimensionValue segments. We preserve the source journal ID and line number as reference fields, and map PeopleSoft Ledger codes to Dynamics 365 Ledger. Fiscal period calendars frequently differ between the systems, requiring period-status validation during load. Historical GL data (more than two years) may be archived rather than migrated into the live Dynamics 365 ledger based on customer data-retention policy.
Oracle PeopleSoft
AP Vouchers (AP_INVOICE_HEADER, AP_INVOICE_LINE)
Microsoft Dynamics 365 Business Central
VendorInvoice
1:1PeopleSoft AP vouchers (voucher is the PeopleSoft AP term for an invoice) map to Dynamics 365 VendorInvoice with header-level vendor, invoice date, and terms, and line-level account distribution with business unit cost center and project references. We preserve the PeopleSoft voucher ID as VENDORINVOICENUMBER and payment status, mapping PeopleSoft payment terms codes to Dynamics 365 terms IDs. Open invoices migrate with full detail; historical paid invoices migrate as reference records unless the customer requires a clean slate.
Oracle PeopleSoft
AR Bills (AR_BILL_LINE)
Microsoft Dynamics 365 Business Central
CustomerInvoice
1:1PeopleSoft AR bill lines map to Dynamics 365 CustomerInvoice with customer, billing cycle, and amount fields. We preserve Sold-To and Ship-To address relationships from CUST_TABLE and map PeopleSoft payment terms codes to Dynamics 365 terms. PeopleSoft AR uses a separate billing interface (BI Publisher reports) that generates invoices differently from AP vouchers, so we handle AR and AP as separate extraction jobs. Open AR items migrate as outstanding invoices; paid historical invoices migrate as posted records with a reference number.
Oracle PeopleSoft
Customer (CUST_TABLE)
Microsoft Dynamics 365 Business Central
Customer (DirParty)
1:1PeopleSoft maintains customer records across FSCM CUST_TABLE and CRM tables, requiring de-duplication during extraction. We preserve Sold-To and Ship-To addresses, credit limits, and customer profile flags. Dynamics 365 Customer is a DirParty-based entity requiring the party record created first, then the customer record linked to it. Customer account numbers map as external reference fields to maintain continuity with PeopleSoft-based integrations.
Oracle PeopleSoft
Vendor (VENDOR_TABLE)
Microsoft Dynamics 365 Business Central
Vendor
1:1PeopleSoft VENDOR_TABLE stores vendors with addresses, payment terms, W-9 tax ID, and routing rules tied to purchasing BU setIDs. We extract the full vendor hierarchy preserving parent-vendor relationships and map vendor IDs to Dynamics 365 Vendor account numbers. PeopleSoft vendor withholding tax status and 1099 flagging map to Dynamics 365 Vendor tax registration fields. Vendor hierarchy routing rules tied to PeopleSoft SetIDs require reimplementation as Dynamics 365 procurement categories or workflow routing.
Oracle PeopleSoft
Purchase Orders (PO_HDR, PO_LINE)
Microsoft Dynamics 365 Business Central
PurchaseOrderHeader / PurchaseOrderLine
1:1PeopleSoft PO_HDR and PO_LINE store purchase order headers and lines with approval status, buyer ID, schedule dates, and distribution lines. We extract open and history PO rows preserving PO ID and line numbers. Dynamics 365 PurchaseOrderHeader and PurchaseOrderLine map directly, with PeopleSoft BU and setID map to legal entity and procurement category. PO approval workflows built in PeopleSoft Workflow Engine do not migrate; we document approval thresholds and routing for rebuild in Dynamics 365 Power Automate or procurement workflows.
Oracle PeopleSoft
Inventory Items (INV_ITEM_MASTER)
Microsoft Dynamics 365 Business Central
ReleasedProduct
1:1PeopleSoft INV_ITEM_MASTER and INV_ITEMS_CF store item definitions with unit of measure, standard cost, category codes, and business-unit-specific inventory flags. We map PeopleSoft business-unit inventory flags to the Dynamics 365 legal entity item storage and warehousing configuration. Item lot and serial number settings map to InventBatch and InventSerial tracking configuration in Supply Chain Management.
Oracle PeopleSoft
Benefits (BENEFIT_PARTICIPATION)
Microsoft Dynamics 365 Business Central
Benefit
1:1PeopleSoft BENEFIT_PARTICIPATION and related enrollment, plan assignment, and coverage date records map to Dynamics 365 HCM Benefit records. We extract current benefit elections and carry forward plan names mapped to the destination benefit plan structure. PeopleSoft's multi-plan-version and rate-effective-date model differs from Dynamics 365's benefit plan and coverage period configuration, so we migrate current election data as a snapshot rather than attempting to replay the full enrollment history.
Oracle PeopleSoft
Payroll Earnings and Deductions (PAY_EARNINGS, DEDUCTION_RESULT)
Microsoft Dynamics 365 Business Central
PayStatementDetail
1:1PeopleSoft Payroll stores pay calculations with pay group, FLSA status, and year-to-date accumulators. We extract year-to-date gross, taxes, and deductions as of the last payroll date, mapping pay components to Dynamics 365 pay statement detail lines. This is a snapshot carryforward rather than a full payroll history migration, because PeopleSoft payroll processes and calculation logic require reimplementation in Dynamics 365 Payroll. We do not migrate tax setup, garnishments, or direct deposit routing without explicit configuration review.
| Oracle PeopleSoft | Microsoft Dynamics 365 Business Central | Compatibility | |
|---|---|---|---|
| Account (COA) | MainAccount1:1 | Fully supported | |
| Business Unit | Legal Entity1:1 | Fully supported | |
| Department (DEPT_TBL) | Department1:1 | Fully supported | |
| Employee (EMPLOYEES, PERSONAL_DATA) | Worker (HcmWorker)1:1 | Fully supported | |
| Job (JOB) | Job1:1 | Fully supported | |
| Position (POSITION_DATA) | Position1:1 | Fully supported | |
| Job Code (JOBCODE_TBL) | Job1:1 | Fully supported | |
| GL Journal Entries (GL_JRNL_HEADER, GL_JRNL_LINE) | GeneralJournalEntry1:1 | Fully supported | |
| AP Vouchers (AP_INVOICE_HEADER, AP_INVOICE_LINE) | VendorInvoice1:1 | Fully supported | |
| AR Bills (AR_BILL_LINE) | CustomerInvoice1:1 | Fully supported | |
| Customer (CUST_TABLE) | Customer (DirParty)1:1 | Fully supported | |
| Vendor (VENDOR_TABLE) | Vendor1:1 | Fully supported | |
| Purchase Orders (PO_HDR, PO_LINE) | PurchaseOrderHeader / PurchaseOrderLine1:1 | Fully supported | |
| Inventory Items (INV_ITEM_MASTER) | ReleasedProduct1:1 | Fully supported | |
| Benefits (BENEFIT_PARTICIPATION) | Benefit1:1 | Fully supported | |
| Payroll Earnings and Deductions (PAY_EARNINGS, DEDUCTION_RESULT) | PayStatementDetail1:1 | 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.
Oracle PeopleSoft gotchas
Heavy customization breaks during version upgrades
Database extraction requires direct schema access and schema knowledge
Effective-dated and position-based data requires sequenced inserts
Employee ID (EMPLID) and related identifiers may conflict with target
Document storage outside the database requires a separate file migration
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 database access provisioning
We audit the PeopleSoft environment through PeopleTools: running a record-by-record inventory of active records, custom fields, Application Engine processes, and Content Reference repositories. We enumerate every SetID, business unit, and effective-date structure in use across FSCM and HCM modules. The customer provisions read-only database credentials (Oracle or SQL Server) and a dedicated reporting schema. We extract PeopleTools metadata to build a complete schema map before writing a single extraction query. The discovery output is a written migration scope, a SetID-to-legal-entity mapping draft, and an effective-date cutoff policy recommendation.
Schema analysis and transformation design
We analyze the PeopleTools record definitions to map PS_XXX table columns to Dynamics 365 Finance and Supply Chain Management or Human Resources entities. We design transformation scripts that handle SetID-to-legal-entity resolution, BU-to-operating-unit mapping, and PeopleSoft-specific ID systems (EMPLID, VENDOR_ID, CUST_ID, PO_ID) into Dynamics 365 equivalents. For HCM, we design the effective-date cutoff and the Worker-WorkerAssignment sequencing strategy. We build an ID mapping table for all referenced identifiers (EMPLID, vendor numbers, customer accounts, journal IDs) and validate it against the production database schema before test extraction.
Data quality profiling and cleansing
We profile extracted data for completeness, consistency, and referential integrity before loading into Dynamics 365. Common issues include duplicate vendor and customer records, inconsistent address formats across SetIDs, missing EFFDT rows on expected temporal records, and PeopleSoft-specific codes that do not have a valid Dynamics 365 equivalent. We generate a data quality report for the customer to resolve before migration: duplicate consolidation decisions, default values for missing required fields, and PeopleSoft-specific codes that need a Dynamics 365 lookup table entry created in advance.
Sandbox migration and reconciliation
We run a full migration into a Dynamics 365 Sandbox environment mirroring the target configuration (Legal Entity structure, Financial Dimension framework, HR module setup). The customer's functional leads reconcile record counts and spot-check 30-50 records per module against the PeopleSoft source. We validate GL period-status alignment, effective-date sequencing on Worker records, and Chart of Accounts integrity. Sign-off on the sandbox migration is required before production migration begins. Any mapping corrections and ID-resolution failures are resolved in sandbox, not in production.
Production migration in dependency order
We run production migration in dependency order: Chart of Accounts and financial dimension values (Legal Entity first), Departments and cost centers, Employees and Workers (with manager EMPLID remapped to PersonnelNumber), Jobs and Positions, Vendors and Customers, then financial transactions. GL journals, AP vouchers, AR bills, and Purchase Orders are loaded with date-based sequencing to respect fiscal period closings. We use the Dynamics 365 Data Management framework with entity templates and recurring data jobs, chunking large datasets to avoid API throttling. Each phase emits a reconciliation report showing source count, loaded count, and error count.
Cutover, validation, and workflow handoff
We freeze PeopleSoft write access during the cutover window, run a delta migration of any records modified during the final migration phase, then enable Dynamics 365 as the system of record. We deliver the Application Engine process inventory and PeopleCode customization dependency map to the customer's functional team for workflow reimplementation in Dynamics 365 Power Automate, procurement workflows, or HR Business Events. We support a one-week hypercare window to resolve any post-cutover data reconciliation issues. Workflow rebuilds, automations, and business-event-driven integrations are outside the standard migration scope and are documented as a separate workstream.
Platform deep dives
Oracle PeopleSoft
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 Oracle PeopleSoft 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
Oracle PeopleSoft: Not publicly documented for on-premises PeopleSoft; Oracle Cloud APIs enforce per-instance rate limits documented in Oracle Access Governance and module-specific REST API guides.
Data volume sensitivity
Oracle PeopleSoft 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 PeopleSoft to Microsoft Dynamics 365 Business Central migration scoping. Not seeing yours? Book a call.
Walk through your Oracle PeopleSoft 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 PeopleSoft
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.