ERP migration
Field-level mapping, validation, and rollback between Oracle PeopleSoft and Epicor Prophet 21. We move data and schema; workflows are rebuilt natively in Epicor Prophet 21.
Oracle PeopleSoft
Source
Epicor Prophet 21
Destination
Compatibility
14 of 15
objects map 1:1 between Oracle PeopleSoft and Epicor Prophet 21.
Complexity
BStandard
Timeline
8-12 weeks
Overview
Moving from Oracle PeopleSoft to Epicor ERP is a cross-architecture migration: PeopleSoft data lives in an Oracle or SQL Server relational schema with effective-dated rows, business unit scoping, and heavy custom record modifications built through PeopleTools, while Epicor ERP uses its own cloud-native data model with user-defined fields, BPMs, and a manufacturing-first module structure. The migration has no native connector on either side. We connect directly to the PeopleSoft database, reverse-engineer the PeopleTools metadata to enumerate every standard and custom field, and map against Epicor's Kinetic Data Model. We preserve GL account effective dates, employee job history sequences, and vendor hierarchies. Workflows, automations, Application Engine processes, and Content Reference document pointers do not migrate; we deliver a written inventory of these for the customer's Epicor administrator to rebuild 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.
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 Epicor Prophet 21, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Oracle PeopleSoft
Chart of Accounts
Epicor Prophet 21
GL Account
1:1PeopleSoft ACCOUNT_TBL with DT_EFFECTIVE rows maps to Epicor Kinetic GL Account records. We extract all active and historical effective-date rows and load them into Epicor with effective dates stored as a user-defined date field since Epicor has no native temporal row model. SetID relationships to DEPT_TBL are preserved as a lookup reference on the Epicor account record. Multi-company PeopleSoft installations map each SetID to a separate Epicor Company or Division within the shared company structure.
Oracle PeopleSoft
GL Journal Entries
Epicor Prophet 21
GL Journal Entry
1:1PeopleSoft GL_JRNL_HEADER and GL_JRNL_LINE map to Epicor GL Journal with fiscal period calendar alignment as the primary reconciliation point. PeopleSoft's fiscal year and accounting date fields must map to Epicor's Fiscal Year and Journal Date. We preserve the source journal ID and line number as Epicor custom fields. Closed and locked periods in PeopleSoft require Epicor fiscal year security to be configured before migration to prevent postings to historical periods.
Oracle PeopleSoft
Accounts Payable Invoices
Epicor Prophet 21
AP Invoice
1:1PeopleSoft AP_INVOICE_HEADER and AP_INVOICE_LINE (voucher schema) map to Epicor AP Invoice. We resolve PeopleSoft vendor IDs against the vendor migration (VENDOR_TABLE), preserve payment status, GL distribution lines, and invoice hold flags. PeopleSoft holds invoices in multiple workflow states; open and approved invoices load as ready-for-payment in Epicor, while pending-approval items are flagged for the AP supervisor to review post-migration rather than bulk-loaded with errors.
Oracle PeopleSoft
Accounts Receivable Invoices
Epicor Prophet 21
AR Invoice
1:1PeopleSoft AR_BILL_LINE and related records map to Epicor AR Invoice with customer ID resolved from the customer migration. Payment terms, billing cycle, and amount fields transfer directly. Epicor's AR Invoice does not support the same invoice-number generation logic as PeopleSoft; we preserve the original PeopleSoft AR invoice ID in a custom field for customer service and collections reference.
Oracle PeopleSoft
Customers / Bill-To Accounts
Epicor Prophet 21
Customer
1:1PeopleSoft CUST_TABLE from FSCM and CRM modules de-duplicates across modules before loading to Epicor Customer. Sold-To and Ship-To addresses, credit limits, and customer profile flags transfer to Epicor's customer master with a separate ShipTo address table per customer. We match by customer ID and flag any duplicate Epicor Customer records already present before inserting.
Oracle PeopleSoft
Vendors / Supplier Accounts
Epicor Prophet 21
Vendor
1:1PeopleSoft VENDOR_TABLE maps to Epicor Vendor with addresses, payment terms, W-9 status, and tax IDs preserved. The vendor hierarchy (parent-child vendor relationships) maps to Epicor's Vendor Group structure. Routing rules tied to PeopleSoft business units become Epicor purchasing agent assignments or approval routing groups. We extract the full vendor hierarchy before migration so that parent-child relationships are created in the correct sequence.
Oracle PeopleSoft
Purchase Orders
Epicor Prophet 21
PO Header and PO Line
1:1PeopleSoft PO_HDR and PO_LINE map to Epicor PO Header and PO Line with approval status, buyer ID, and schedule dates preserved. Open and closed PO history both migrate; Epicor distinguishes between closed (Received or Closed status) and open POs in its order management. PO IDs and line numbers are preserved in Epicor custom fields. PeopleSoft multi-business-unit POs map to Epicor's Plant and Company hierarchy based on the BU-to-Plant mapping defined during scoping.
Oracle PeopleSoft
Inventory Items
Epicor Prophet 21
Part and PartPlant
1:1PeopleSoft INV_ITEM_MASTER and INV_ITEMS_CF map to Epicor Part with unit of measure, standard cost, and category codes. PeopleSoft's business-unit-specific inventory flags map to Epicor PartPlant records, which store plant-level data (on-hand quantity, reorder point, default warehouse) separately from the Part master. Category codes from PeopleSoft's inventory structure map to Epicor's Part Class and Product Group hierarchies. We flag any PeopleSoft lot and serial control configurations for Epicor lot/serial setup post-migration.
Oracle PeopleSoft
Employees
Epicor Prophet 21
Employee
1:1PeopleSoft EMPLOYEES and PERSONAL_DATA map to Epicor Employee records with hire date, termination date, HR status, and manager hierarchy. The PeopleSoft EMPLID (sequential numeric identifier) has no intrinsic business meaning but is often referenced in downstream integrations and spreadsheets. During scoping we decide whether to preserve the EMPLID as a custom Epicor field (hrd_id__c), map it to a new Epicor Employee ID, or run both identifiers during a coexistence period. Manager hierarchy reconstructs from EMPLOYEES.MGR_ID mapped to the target Epicor Employee record.
Oracle PeopleSoft
Jobs / Job Codes
Epicor Prophet 21
JobCode
1:1PeopleSoft JOB and JOBCODE_TBL with effective-date sequences map to Epicor JobCode and Job records. The effective-date history is the most compliance-sensitive part of a PeopleSoft HR migration: each change in job, compensation, grade, or location generates a new dated row. We load the current effective row as the active Epicor Job record and archive historical rows in a custom Job History table with effective dates, job code, and department stored as structured fields for audit queries. We flag any PeopleSoft position-based rows for the customer's HR team to decide whether position-to-job mapping is required.
Oracle PeopleSoft
Positions
Epicor Prophet 21
Position
lossyPeopleSoft POSITION_DATA stores position details with incumbent assignment, budgeted headcount, and department. Where organizations use a position-management HR structure (common in government, education, and large healthcare systems), we extract the position hierarchy and budgeted headcount separately from the incumbent Job records. Epicor does not have a native position data model; we create a Position custom table with position number, department, budget headcount, and current incumbent as a lookup to the Employee record. Organizations with job-based rather than position-based HR structures skip this object entirely.
Oracle PeopleSoft
Departments / Cost Centers
Epicor Prophet 21
Department
1:1PeopleSoft DEPT_TBL with effective-date rows and setIDs maps to Epicor Department. The department hierarchy tree (parent DEPTID to DEPTID relationships) reconstructs from DEPT_TBL.SETID and DEPT_TBL.EFFDT ordering. SetID relationships governing security access in PeopleSoft map to Epicor Business Unit or Resource Group assignments. We extract the full tree in dependency order so that parent departments exist before their children are inserted.
Oracle PeopleSoft
Benefits Records
Epicor Prophet 21
Benefit Plan Assignment (custom table)
1:1PeopleSoft BENEFIT_PARTICIPATION and related records store enrollment, plan assignments, and coverage dates. Epicor ERP does not have a native Benefits Administration module comparable to PeopleSoft HCM. We extract current benefit elections and plan assignments as a structured lookup table attached to the Employee record (benefit_elections__c as a UD table or JSONB field depending on Epicor edition). We map PeopleSoft plan names to customer-defined plan type codes for the Epicor administrator to reconcile against their HRIS configuration. Full Benefits Administration requires a separate migration to a dedicated HR platform.
Oracle PeopleSoft
Payroll Earnings and Deductions
Epicor Prophet 21
Payroll Records (custom table)
1:1PeopleSoft PAY_EARNINGS and DEDUCTION_RESULT with pay group and FLSA status map to a custom payroll summary table attached to the Employee record. Year-to-date amounts and last pay date transfer as Epicor UD fields (ytd_earnings__c, ytd_deductions__c, last_pay_date__c). Epicor Kinetic payroll is limited compared to PeopleSoft Payroll (TrustRadius: 6.6/10 vs 7.8/10) and direct deposit file generation scores 1.8/10 vs PeopleSoft's 9.0/10. We recommend organizations requiring full payroll functionality evaluate Epicor Payroll or a dedicated payroll platform post-migration. We migrate the payroll history as a reference archive only.
Oracle PeopleSoft
Attachments / Documents
Epicor Prophet 21
N/A
1:1PeopleSoft Content References store documents in file systems, Oracle Content Manager, or third-party repositories (SharePoint, network drives). The database contains only the URL and metadata pointer. We extract and preserve the full list of Content Reference URLs, file names, and storage locations as a written inventory document. Binary file transfers require a separate file migration process outside the database migration and are scoped as a parallel workstream. Customers with thousands of stored documents (offer letters, contracts, tax forms) must budget additional timeline and tooling for the file transfer phase.
| Oracle PeopleSoft | Epicor Prophet 21 | Compatibility | |
|---|---|---|---|
| Chart of Accounts | GL Account1:1 | Fully supported | |
| GL Journal Entries | GL Journal Entry1:1 | Fully supported | |
| Accounts Payable Invoices | AP Invoice1:1 | Mapping required | |
| Accounts Receivable Invoices | AR Invoice1:1 | Mapping required | |
| Customers / Bill-To Accounts | Customer1:1 | Mapping required | |
| Vendors / Supplier Accounts | Vendor1:1 | Mapping required | |
| Purchase Orders | PO Header and PO Line1:1 | Mapping required | |
| Inventory Items | Part and PartPlant1:1 | Mapping required | |
| Employees | Employee1:1 | Mapping required | |
| Jobs / Job Codes | JobCode1:1 | Mapping required | |
| Positions | Positionlossy | Mapping required | |
| Departments / Cost Centers | Department1:1 | Mapping required | |
| Benefits Records | Benefit Plan Assignment (custom table)1:1 | Mapping required | |
| Payroll Earnings and Deductions | Payroll Records (custom table)1:1 | Mapping required | |
| Attachments / Documents | N/A1:1 | Not 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
Epicor Prophet 21 gotchas
Third-party bolt-on integrations complicate migration scope
Dirty data without standardized processes compounds migration risk
SDK customizations and BPMs may not survive platform upgrades
Report-based export only for non-technical users
Per-user pricing model requires accurate user count before migration planning
Pair-specific challenges
Migration approach
PeopleSoft database access and metadata enumeration
We secure read-only database credentials (Oracle or SQL Server depending on PeopleSoft deployment) and connect to the underlying schema. We query PeopleTools metadata tables (PSRECDEFN, PSFIELD, PSPNLFIELD) to enumerate every standard and custom record, field, and effective-date configuration. We produce a Customization Impact Report listing every modified record, its custom PeopleCode dependencies, and its recommended Epicor equivalent (UD field, BPM, or manual configuration). We document the SetID hierarchy, business unit structure, and Chart of Accounts tree as the basis for the Epicor account and department mapping. Customer provisions a dedicated reporting schema or read replica to avoid production impact.
Epicor environment discovery and schema preparation
We connect to the Epicor Kinetic tenant via the REST API and enumerate the existing data model: Company structure, Plant hierarchy, Chart of Accounts template, UD field configurations, and any pre-existing records that may conflict with incoming PeopleSoft data. We identify the Epicor Company and Plant that correspond to each PeopleSoft Business Unit, and document the fiscal year calendar configuration that will receive GL journal entries. We create UD fields in Epicor to receive PeopleSoft data elements that have no native Epicor equivalent (effective dates, EMPLID, job history sequences, plan election lookups). UD field creation is done in Epicor's kinetic environment before any data loads begin.
Extraction design and effective-date cutoff policy
We finalize the effective-date cutoff policy (current only, last N years, or full history) with the customer based on compliance requirements and Epicor performance considerations. We design extraction queries for each object with proper join sequences: departments before employees (for manager hierarchy resolution), vendors before AP invoices, customers before AR invoices, GL accounts before journal entries. We implement the EMPLID mapping strategy (preserve, remap, or coexistence) agreed during scoping and build the ID translation table that will be applied during transformation. For organizations with position-based HR structures, we design the Position-to-Job mapping separately from the Job-to-JobCode mapping.
Sandbox migration and reconciliation
We run a full migration into the Epicor sandbox environment using production-like data volume. The customer's Finance and HR leads reconcile record counts against the PeopleSoft source (GL accounts in, journal lines in, employees in, open POs in, open AP invoices in), spot-check 30-50 records per object for field-level accuracy, and verify that effective dates, department hierarchies, and vendor/customer hierarchies rendered correctly. Mapping corrections identified during sandbox reconciliation are applied to the transformation scripts before production migration. The sandbox sign-off is a hard gate before we proceed to the production Epicor tenant.
Production migration in dependency order
We run production migration in record-dependency order: GL accounts and departments first (no foreign key dependencies), then vendors and customers (for AP/AR resolution), then employees and job codes (for manager hierarchy), then POs and inventory (for buyer and item resolution), then AP and AR invoices (with vendor/customer IDs resolved), then GL journal entries (with account IDs resolved), then benefits and payroll summary records (as custom UD tables). Each phase emits a row-count reconciliation report before the next phase begins. Content Reference document URLs are delivered as a written file inventory document for the customer's IT team to transfer in a parallel workstream. PeopleSoft custom records are delivered as a separate migration package of UD field loads with the Customization Impact Report instructions for Epicor administration.
Cutover, validation, and automation rebuild handoff
We freeze PeopleSoft writes during cutover, run a final delta migration of any records modified during the migration window, then enable Epicor as the system of record. We deliver the PeopleSoft Workflow, Application Engine, and automation inventory document to the customer's Epicor administrator with recommended BPM equivalents for each automated process. We support a one-week hypercare window for reconciliation issues. We do not rebuild PeopleSoft Application Engine processes as Epicor BPMs or Kinetic REST API extensions inside the migration scope; that work requires a separate Epicor implementation engagement. We do not migrate Benefits Administration, Absence Management, or full payroll processing to Epicor; we deliver a recommendation document for a dedicated HR platform migration if the customer requires HCM replacement.
Platform deep dives
Oracle PeopleSoft
Source
Strengths
Weaknesses
Epicor Prophet 21
Destination
Strengths
Weaknesses
Complexity grading
Standard ERP migration. 3 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 Epicor Prophet 21.
Object compatibility
3 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 Epicor Prophet 21 migration scoping. Not seeing yours? Book a call.
Walk through your Oracle PeopleSoft to Epicor Prophet 21 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 Epicor Prophet 21
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.