ERP migration
Field-level mapping, validation, and rollback between etEngine and Epicor Prophet 21. We move data and schema; workflows are rebuilt natively in Epicor Prophet 21.
etEngine
Source
Epicor Prophet 21
Destination
Compatibility
10 of 12
objects map 1:1 between etEngine and Epicor Prophet 21.
Complexity
CModerate
Timeline
8-12 weeks
Overview
Moving from etEngine to Epicor ERP is a multi-entity financial and operational migration that requires careful sequencing of master data, transactional history, and user provisioning. etEngine holds Chart of Accounts, Customers, Vendors, Items, open AP/AR, historical journal entries, and user records without a publicly documented API, so we confirm export paths during technical discovery before committing to a migration scope. Epicor ERP uses a multi-company GL structure that may require account code reconfiguration, and its part-master includes bill-of-materials and routing dependencies that affect how Items map. We sequence fiscal history by period, flag reconciled records that should not carry forward, and migrate user accounts to Epicor Kinetic roles. Workflows, automations, and custom reports do not migrate as code; we deliver a written inventory for the customer admin 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 etEngine 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.
etEngine
Chart of Accounts
Epicor Prophet 21
GL Account (UD01 / COA Segment)
1:1etEngine account codes, names, and types map to Epicor GL Account records within the Chart of Accounts. Currency assignments and department segments map to Epicor account segments or custom fields depending on the customer's Chart of Accounts structure. We flag any account codes that exceed Epicor's segment length limits during scoping and propose truncation or prefix strategies before migration. Multi-company Epicor deployments require the account code prefix to be scoped per company entity.
etEngine
Customers
Epicor Prophet 21
Customer
1:1etEngine customer records with contact details, billing addresses, and payment terms map to Epicor Customer records. The customer's payment terms map to Epicor Term records; ship-to addresses map to Customer Ship Tos. We flag any custom fields on the etEngine customer record during scoping and map them to Epicor User Defined Fields (UDFs) or UD Codes on the Customer table. Customer credit limits require a corresponding Epicor Credit Check configuration before the records activate.
etEngine
Vendors
Epicor Prophet 21
Supplier
1:1etEngine vendor master records with contact and payment information map to Epicor Supplier records. Payment terms, bank details, and W-9 or tax registration fields migrate to corresponding Supplier fields. Historical purchase transactions are sequenced separately from the vendor master and import after Supplier records are active. We flag any etEngine vendor records with zero PO history as candidates for inactive status to avoid cluttering the Epicor supplier list.
etEngine
Items
Epicor Prophet 21
Part (PartMaster)
1:1etEngine Item masters with SKUs, descriptions, pricing, and cost records map to Epicor Part records. Epicor Parts carry additional structural fields (Type, Class, IUM, PUM, TypeCode, Method) that may require default values during migration if etEngine did not track them. If etEngine Items contain BOM or routing data, we migrate these as separate Epicor Bill of Materials and Job Router records after the Part master is established. Stock and cost records map to PartBin and PartCost respectively. Custom attributes on etEngine items map to UD Fields on the Part table.
etEngine
Open AP
Epicor Prophet 21
AP Invoice / AP Payment
1:1Outstanding AP invoices from etEngine migrate to Epicor AP Invoice records with original invoice dates, amounts, and vendor references. We resolve each invoice's vendor reference to the migrated Supplier record before inserting. Payment terms, hold status, and approval workflow assignments carry forward as fields on the Epicor invoice. Fully reconciled etEngine AP records that are paid and closed are flagged during scoping and excluded from migration to avoid reopening closed periods.
etEngine
Open AR
Epicor Prophet 21
AR Invoice / AR Payment
1:1Outstanding AR invoices from etEngine migrate to Epicor AR Invoice records with original invoice dates, amounts, and customer references. We resolve each invoice's customer reference to the migrated Customer record. Credit memos and pre-payments map to Epicor AR Credit Memo and Deposit records respectively. Invoice aging at cutover is preserved as the Epicor invoice due date minus the original invoice date. AR records in dispute or with partial payments retain the partial payment history within Epicor's invoice-level payment application.
etEngine
Historical Transactions
Epicor Prophet 21
GL Journal Entry
lossyPast journal entries and transaction history from etEngine migrate to Epicor GL Journal Entry records chunked by fiscal period. We sequence them in chronological order and assign them to the correct Epicor fiscal period and fiscal year. Entries that span multiple periods in etEngine are split into separate Epicor journal entries per period to maintain fiscal boundary integrity. We flag any journal entries that reference deleted or inactive accounts and present them to the customer for resolution before import.
etEngine
Users
Epicor Prophet 21
User (Kinetic Security)
1:1etEngine user accounts map to Epicor Kinetic User records with role assignments based on the customer's role matrix. We extract role and permission data from etEngine during scoping and map it to Epicor Kinetic menu-level security groups. Active versus inactive status is preserved and validated post-migration. Any etEngine user without a clear Epicor role mapping goes to a reconciliation queue for the customer admin to assign before the user records import.
etEngine
Documents
Epicor Prophet 21
Epicor Data Warehouse / External File Store
1:1etEngine-attached files and linked documents are exported to a structured file store (network share, SharePoint, or S3-compatible storage) with a manifest mapping each file to its source record ID and entity type. After migration, we re-link documents to their corresponding Epicor records using a file-path reference field added to the relevant record (Customer, Supplier, Part, Order, etc.). We do not store documents inside Epicor's database; the external store keeps Epicor's blob storage within licensed limits.
etEngine
Bills of Materials (if present)
Epicor Prophet 21
Bill of Materials (PartMfg)
1:manyIf etEngine Items contain BOM data, we split each multi-level BOM into Epicor multi-level BOM records. The top-level part maps to the Part master; sub-components map to their respective Part records before BOM lines are created. BOM quantities per assemble, scrap percentages, and BOM approved dates migrate to Epicor BillOpr. We validate that all sub-component Part records exist in Epicor before BOM insert to avoid orphan-line failures.
etEngine
Purchase Orders (open)
Epicor Prophet 21
PO Header / PO Release
1:1Open purchase orders from etEngine migrate to Epicor PO Header records with vendor reference resolved to the migrated Supplier. PO lines migrate with part number resolved to Part records, quantity confirmed against PartBin, and unit cost validated against PartCost. Release-based POs in etEngine map to Epicor PO Release records under the parent PO Header. Closed or received POs are excluded from migration scope.
etEngine
Sales Orders (open)
Epicor Prophet 21
OrderHed / OrderDtl
1:1Open sales orders from etEngine migrate to Epicor OrderHed (header) and OrderDtl (detail) records. Customer reference resolves to the migrated Customer record; part numbers resolve to Part records. OrderHed ship date, terms, and carrier assignments carry forward. Line pricing and discounts are mapped to Epicor OrderDtl price fields. Historical closed orders are scoped separately and migrated as OrderHed records with a Closed status flag if reporting continuity is required.
| etEngine | Epicor Prophet 21 | Compatibility | |
|---|---|---|---|
| Chart of Accounts | GL Account (UD01 / COA Segment)1:1 | Mapping required | |
| Customers | Customer1:1 | Mapping required | |
| Vendors | Supplier1:1 | Mapping required | |
| Items | Part (PartMaster)1:1 | Mapping required | |
| Open AP | AP Invoice / AP Payment1:1 | Fully supported | |
| Open AR | AR Invoice / AR Payment1:1 | Fully supported | |
| Historical Transactions | GL Journal Entrylossy | Mapping required | |
| Users | User (Kinetic Security)1:1 | Mapping required | |
| Documents | Epicor Data Warehouse / External File Store1:1 | Mapping required | |
| Bills of Materials (if present) | Bill of Materials (PartMfg)1:many | Fully supported | |
| Purchase Orders (open) | PO Header / PO Release1:1 | Fully supported | |
| Sales Orders (open) | OrderHed / OrderDtl1: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.
etEngine gotchas
No public API — migration relies on vendor extracts
Shop-floor automation data is tightly coupled to the source system
Pricing and rate card are not public
Dynamic material planning calculations are ERP-specific
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
Technical discovery and export path confirmation
We audit etEngine for available export mechanisms: direct SQL database access, flat-file export modules, third-party ETL connectors, or manual CSV extraction. We document the current Chart of Accounts structure, customer and vendor field counts, Item attribute completeness, AP/AR aging detail, and transactional history volume by fiscal year. We also capture user role and permission structures, custom field definitions, and any BOM or routing data attached to Items. The discovery output is a written feasibility assessment confirming the export path and a preliminary object mapping scope.
Epicor schema design and segment planning
We design the destination Epicor schema in a Sandbox environment. This includes Chart of Accounts segment definitions, COA creation, Customer and Supplier UD field configuration, Part master Type and Class defaults, PartBin site assignments, and GL fiscal calendar setup aligned to the customer's fiscal year. We design the account code mapping from etEngine's flat codes to Epicor's segmented structure and present truncation or prefix strategies for any codes that exceed length limits. The Epicor admin reviews and approves the schema design before migration scripts are written.
Sandbox migration and reconciliation
We run a full migration into the Epicor Sandbox using production-like data volume extracted from etEngine. The customer finance and operations leads reconcile record counts across all master and transactional objects, spot-check 25-50 random records for field-level accuracy, and validate fiscal period sequencing on historical journal entries. Any mapping corrections, missing UD fields, or schema adjustments are documented and applied to the production migration scripts. The customer signs off the Sandbox validation before production migration begins.
Master data migration in dependency order
We migrate master data in strict dependency order: GL Accounts (to satisfy all transaction references), then Fiscal Calendar and Period definitions, then Customer and Supplier masters, then Part masters with Type and Class assigned. BOM records insert after all sub-component Part records exist. User accounts insert with role assignments resolved against the Epicor security model. Each phase emits a row-count reconciliation report before the next phase begins. Any master record with a broken reference (missing parent) is held in a resolution queue for the customer admin to address.
Transactional migration with fiscal period sequencing
We migrate open AP/AR records after all master records are validated, followed by open purchase and sales orders with line-item part references resolved. Historical journal entries insert in strict fiscal-period chronological order with period-open validation to ensure no entry is posted to a closed fiscal period. We flag any etEngine journal entries that reference inactive or deleted accounts and escalate to the customer for resolution. Open orders and invoices that were created in etEngine during the migration window are captured in a delta pass before cutover.
Cutover, delta pass, and handoff
We freeze etEngine writes at the agreed cutover time and run a final delta migration of any records modified during the migration window. We validate Epicor's GL trial balance against etEngine's pre-cutover trial balance, confirm AP/AR aging totals match, and spot-check PartBin quantities against etEngine inventory snapshots. We deliver the Workflow and Custom Report inventory document to the customer admin for post-migration rebuild. We support a one-week hypercare window where we resolve any reconciliation issues raised by the customer's team. We do not rebuild Epicor BPMs, BAQs, or SSRS reports inside the migration scope; that work is a separate engagement.
Platform deep dives
etEngine
Source
Strengths
Weaknesses
Epicor Prophet 21
Destination
Strengths
Weaknesses
Complexity grading
Moderate ERP migration. 4 of 8 objects need a mapping; the rest are 1:1.
Overall complexity
Moderate migration
Derived from compatibility, mapping clarity, API constraints, and data volume across etEngine and Epicor Prophet 21.
Object compatibility
4 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
etEngine: Not publicly documented.
Data volume sensitivity
etEngine 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 etEngine to Epicor Prophet 21 migration scoping. Not seeing yours? Book a call.
Walk through your etEngine 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 etEngine
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.