ERP migration
Field-level mapping, validation, and rollback between Ostendo and Epicor Prophet 21. We move data and schema; workflows are rebuilt natively in Epicor Prophet 21.
Ostendo
Source
Epicor Prophet 21
Destination
Compatibility
9 of 14
objects map 1:1 between Ostendo and Epicor Prophet 21.
Complexity
BStandard
Timeline
6-10 weeks
Overview
Moving from Ostendo to Epicor ERP is a platform-scale migration for operations-focused manufacturers and distributors that have outgrown the SMB tier. Ostendo stores its data in a SQL-backended database and exposes exports via the built-in Data Exporting function (CSV or Excel) or custom scripting using GetTableNames and GetValueFromStore; there is no published REST API. Epicor ERP accepts data through its REST API (Kinetic) or direct SQL (on-premise versions 9 through 10.2), with BAQ (Business Activity Queries) serving as the primary reporting and extraction tool in cloud deployments. We handle extraction via Ostendo's Data Exporting layer, transform multi-site inventory records into Epicor's PartLot structure, flatten multi-level BOMs into revision-controlled Bill of Materials, and map Ostendo's Service Zones to Epicor Territories. We do not migrate saved reports, SQL Report Writer definitions, or custom workflow scripts; we deliver a written inventory of every Ostendo report and automation for the customer's admin to rebuild in Epicor Kinetic or Epicor 10.2.
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 Ostendo 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.
Ostendo
Customer (CUSTOMER MASTER)
Epicor Prophet 21
Customer
1:1Ostendo Customer records in the CUSTOMER MASTER table export via the Data Exporting function as CSV or Excel. We map to Epicor Customer (or CustCnt contact records) using customer code as the dedupe key. If the customer uses Ostendo's Contact sub-records, these map to Epicor CustCnt contact entries with the parent Customer linkage preserved. Address structures from CUSTOMER MASTER export as Customer address records in Epicor.
Ostendo
Item (ITEMMASTER)
Epicor Prophet 21
Part
1:1ITEMMASTER holds all item records including Primary Supplier linkage, unit cost, and stock levels. We export the full item record and map to Epicor Part by part number as the dedupe key. The Ostendo supplier linkage maps to Epicor's Vendor table cross-reference so that Part-vendor relationships are preserved. Stocking type (make, buy, blank) maps to TypeCode in Epicor Part.
Ostendo
Stock / Inventory
Epicor Prophet 21
PartLot + WarehseBin
1:manyOstendo tracks stock quantities per stock location, bin reference, and serial number. Multi-site records require denormalisation into Epicor's PartLot table (which holds lot number, serial number, and quantity) and WarehseBin (warehouse-bin location). Each unique combination of item, site, warehouse, and bin in Ostendo becomes a separate PartLot record in Epicor. Serial number tracking per location maps to the PartLot SerialNumber field.
Ostendo
Stock Locations / Service Zones
Epicor Prophet 21
Site + Warehouse + Territory
lossyOstendo Service Zones group assets geographically for field service deployment. We map these to Epicor Site records for the manufacturing or distribution entity, Warehouse records for each physical location, and Territory records for service dispatch geography. The mapping depends on whether the customer runs single-site or multi-site operations in Ostendo.
Ostendo
Sales Order
Epicor Prophet 21
Sales Order (SORels)
1:1Ostendo Sales Orders export with header and line-level detail, including Order Style, quantities, pricing, and status. We map to Epicor Sales Order with line items and SORels (release) structure. If Ostendo POS generated orders, these require flagging during scoping as POS-order headers may carry non-standard status values. Order dates, ship dates, and due dates migrate as OrderRel dates in Epicor.
Ostendo
Purchase Order
Epicor Prophet 21
PO Header + POLine
1:1Purchase Orders export from Ostendo with line items, quantities, supplier linkage, and order status. We map to Epicor PO Header with linked POLine records. Supplier code resolves to the Epicor Vendor record created from the ITEMMASTER Primary Supplier mapping. PO release dates migrate to Epicor's PO Release dates if the customer uses scheduled receipt functionality.
Ostendo
Work Order / Manufacturing Order
Epicor Prophet 21
JobMtl + JobOper + JobHead
1:1Work Orders in Ostendo include job details, routing, and multi-level BOM references. Multi-level BOMs require flattening during transformation: each BOM level in Ostendo becomes a separate JobMtl record in Epicor with the parent assembly linked via JobMtl.ParentMtlSeq. Routing operations map to JobOper with work centre and estimated run time. We flag any non-standard Work Order statuses for customer review before loading.
Ostendo
Bill of Materials (multi-level)
Epicor Prophet 21
Part + PartMtl + PartOpr
lossyOstendo BOMs are stored per item with nested assembly levels. We extract all BOM levels, denormalise into PartMtl records with PartMtl.ParentPart and PartMtl.MtlPart linking, and map assembly operations to PartOpr. Epicor BOM revisions are versioned; if Ostendo uses revision control, each revision maps to a separate Epicor PartRev record. The customer identifies the active BOM revision during scoping.
Ostendo
Asset
Epicor Prophet 21
Asset
1:1Asset records are linked to Service Zones and carry meter readings, equipment checks, and maintenance history. We export asset master data including current status, location (Service Zone), and maintenance history lines. In Epicor, assets map to the Asset register with AssetLoc records holding the site/warehouse location and MeterReadings linked to the asset for preventive maintenance tracking.
Ostendo
Timesheet / Time Entry
Epicor Prophet 21
Labor (laborHdr + laborDtl)
1:1Timesheet records linked to Work Orders and Jobs export from Ostendo with clock-in, clock-out, work centre, and materials issued. We map to Epicor laborHdr (header) and laborDtl (detail) records, resolving the employee reference to the Epicor Employee table. GPS data from Freeway Mobile entries cannot migrate to Epicor's standard Labour module; we flag GPS-bearing entries for customer review and document the source location for manual reference.
Ostendo
User (concurrent licence)
Epicor Prophet 21
User
lossyOstendo user records export from User Security and Options, but the licensing model is concurrent users (simultaneous logins), not named users. We export the full user record set and present a named-user equivalent count during scoping. Migration into Epicor requires provisioning named User accounts; the customer's admin creates Epicor User records and we validate Owner references on imported records against the resolved User table.
Ostendo
Custom Fields (Freeway Mobile)
Epicor Prophet 21
UD Fields
lossyOstendo Freeway Mobile templates create user-defined fields per object including checklists, compliance forms, and QA inspections. These are stored per-object without a standard export format. We flag all custom template field definitions during discovery, create explicit field mappings for each one, and pre-create Epicor UD fields (using UD Service Designer in Kinetic or extended table columns in On Prem) before data load. Fields that cannot hold equivalent data (for example, GPS coordinates on non-geographic objects) are flagged for manual recreation in Epicor.
Ostendo
Reports / Saved Queries
Epicor Prophet 21
BAQ (deferred rebuild)
1:1Ostendo SQL Report Writer creates saved reports, inquiries, and pivot tables referencing Ostendo-specific table structures. These have no direct equivalent in Epicor ERP and do not migrate. We deliver a written inventory of every Ostendo report and saved query with its table references and logic, plus a recommended Epicor BAQ equivalent for the customer's admin or Epicor partner to rebuild post-migration.
Ostendo
Quote
Epicor Prophet 21
Quote
1:1If Ostendo Quotes are generated as Sales Order-style records with an order style of Quote, we export them and map to Epicor Quote. Quote headers, lines, and pricing migrate as Epicor Quote records. Signed or accepted quote status does not automatically advance the Quote to Order in Epicor; the customer reviews Quote-to-Order conversion after migration.
| Ostendo | Epicor Prophet 21 | Compatibility | |
|---|---|---|---|
| Customer (CUSTOMER MASTER) | Customer1:1 | Fully supported | |
| Item (ITEMMASTER) | Part1:1 | Fully supported | |
| Stock / Inventory | PartLot + WarehseBin1:many | Fully supported | |
| Stock Locations / Service Zones | Site + Warehouse + Territorylossy | Fully supported | |
| Sales Order | Sales Order (SORels)1:1 | Fully supported | |
| Purchase Order | PO Header + POLine1:1 | Fully supported | |
| Work Order / Manufacturing Order | JobMtl + JobOper + JobHead1:1 | Fully supported | |
| Bill of Materials (multi-level) | Part + PartMtl + PartOprlossy | Fully supported | |
| Asset | Asset1:1 | Fully supported | |
| Timesheet / Time Entry | Labor (laborHdr + laborDtl)1:1 | Fully supported | |
| User (concurrent licence) | Userlossy | Fully supported | |
| Custom Fields (Freeway Mobile) | UD Fieldslossy | Fully supported | |
| Reports / Saved Queries | BAQ (deferred rebuild)1:1 | Not supported | |
| Quote | Quote1: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.
Ostendo gotchas
No public REST API for automated data extraction
Concurrent user licensing creates user-count mapping complexity
Custom fields from mobile capture layer require manual mapping
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
Discovery and environment assessment
We audit the source Ostendo environment including version, deployment type (on-premise or managed cloud), database access permissions, module usage (inventory, manufacturing, service, field, POS), and export function configuration. We enumerate all CUSTOMER MASTER records, ITEMMASTER entries, Work Order count and status, stock location structure, Asset register, and user record count. We confirm the destination Epicor environment type (Kinetic cloud or On Prem) and identify API access level, BAQ capability, and UD field support. The discovery output is a written migration scope, record counts by object, and a data quality report flagging duplicates, missing required fields, and non-standard statuses.
Extraction via Ostendo Data Exporting function
We extract data from Ostendo using the built-in Data Exporting function for each object: Customers, Items, Stock (per location), Sales Orders, Purchase Orders, Work Orders, Assets, Timesheets, and Service Zones. Custom scripting with GetTableNames and GetValueFromStore handles any objects not covered by the standard export wizard. We export to CSV with UTF-8 encoding and validate record counts against the discovery audit. If direct SQL access is available, we supplement CSV exports with SQL queries for transactional tables with foreign key resolution. All exports run against a point-in-time snapshot with HubWrite access frozen during extraction.
Transform and object mapping
We transform extracted records into Epicor-compatible format. Key transformations include: Customer records to Epicor Customer with address normalisation; ITEMMASTER to Part with supplier cross-reference; multi-site stock to PartLot per site-warehouse-bin combination with serial numbers preserved; multi-level BOMs to PartMtl flat structure with revision mapping to PartRev; Work Orders to JobMtl and JobOper with BOM assembly linkage and routing operations; Service Zones to Site, Warehouse, and Territory records; Timesheets to laborHdr and laborDtl with employee resolution. We resolve the concurrent-user-to-named-user mapping for User records and pre-create Epicor User accounts in a holding queue.
Destination schema pre-creation
Before any data loads, we create the Epicor destination schema. This includes Part records (from Item transformation), Customer records, Site and Warehouse structures (from Service Zone mapping), PartLot configuration for serial and lot tracking, PartMtl and PartOpr for BOM and routing, Asset register structure, UD fields for each Freeway Mobile custom template, and Territory records for service dispatch. Schema is deployed into a Sandbox org first (for Epicor Kinetic) or validated via direct SQL connection (for On Prem) before production migration begins.
Sandbox migration and reconciliation
We run a full migration into the Epicor Sandbox using production-like data volume. The customer's operations lead reconciles record counts (Customers in, Parts in, Stock locations normalised, Work Orders loaded, Assets registered), spot-checks 25-50 records per object against the Ostendo source, and validates PartLot serial numbers and BOM assembly linkage. Epicor Kinetic customers validate BAQ output against source CSV to confirm data completeness. Any mapping corrections, required field gaps, or Epicor validation rule rejections are resolved in the Sandbox before production migration begins.
Production migration in dependency order
We run production migration in record-dependency order: Sites and Warehouses first (dependency for PartLot), then Customers, then Parts with Part-vendor linkage resolved, then Stock and PartLot (with multi-site denormalisation verified), then Assets, then Sales Orders, Purchase Orders, Work Orders with BOM flattening applied, then Timesheets, then Custom Fields. Each phase emits a row-count reconciliation report before the next phase begins. Owner and User references resolve against the pre-provisioned Epicor User table at each phase.
Cutover, validation, and report rebuild handoff
We freeze Ostendo 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 Report and Automation Inventory document to the customer's admin team, listing every Ostendo SQL Report Writer definition, saved query, and custom workflow script with its table references and recommended Epicor BAQ equivalent. We support a one-week hypercare window for reconciliation issues. We do not rebuild Ostendo reports as Epicor BAQ reports or re-create custom scripts as Epicor BPMs within the migration scope; these are separate engagements or internal admin tasks.
Platform deep dives
Ostendo
Source
Strengths
Weaknesses
Epicor Prophet 21
Destination
Strengths
Weaknesses
Complexity grading
Standard ERP migration. 2 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 Ostendo and Epicor Prophet 21.
Object compatibility
2 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
Ostendo: Not publicly documented.
Data volume sensitivity
Ostendo 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 Ostendo to Epicor Prophet 21 migration scoping. Not seeing yours? Book a call.
Walk through your Ostendo 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 Ostendo
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.