ERP migration
Field-level mapping, validation, and rollback between Streamleader and Epicor Prophet 21. We move data and schema; workflows are rebuilt natively in Epicor Prophet 21.
Streamleader
Source
Epicor Prophet 21
Destination
Compatibility
10 of 12
objects map 1:1 between Streamleader and Epicor Prophet 21.
Complexity
BStandard
Timeline
6-10 weeks
Overview
Moving from Streamleader to Epicor ERP is a migration from a small-market Australian flat-rate platform to a manufacturing-grade mid-market ERP with deep shop-floor, production-scheduling, and supply-chain capabilities. Streamleader's data model (Customers, Vendors, Items, Chart of Accounts, Open AP/AR, Users) maps to Epicor's equivalents, but Epicor's industry-specific objects — BOMs, Routings, MES data, Project-centric jobs, and multi-site warehouses — have no Streamleader counterpart and require greenfield configuration post-migration. We export from Streamleader's API using chunked pagination, resolve parent-record dependencies before Epicor load, and use Epicor's DMT (Data Management Tool) templates for bulk record inserts. We do not migrate Workflows, automations, or document attachment blobs; we document their locations for manual transfer and deliver a written inventory of any Streamleader automations requiring rebuild in Epicor BPM or MES.
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 Streamleader 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.
Streamleader
Customer
Epicor Prophet 21
Customer
1:1Streamleader Customer records map to Epicor Customer (CustCnt/ShipTo hierarchy). The Streamleader account code becomes Epicor's CustNum with a corresponding Customer record header. We preserve billing address, shipping addresses, payment terms, and credit limits. Where Streamleader uses a separate Accounts object, we join records at export time and flatten the relationship. If Streamleader supports parent-child customer hierarchies, we map those to Epicor's Customer-Parent relationship and create the top-level record first so that ShipTo records resolve their parent reference on insert.
Streamleader
Vendor
Epicor Prophet 21
Vendor
1:1Streamleader Vendor records map to Epicor Vendor (VendCnt). Vendor name, contact details, payment terms, and tax IDs transfer directly. We create the Vendor record before any PO or receipt history to satisfy the parent reference. Vendor-specific metadata (e.g., Streamleader custom fields on Vendor) migrates to Epicor UD columns on Vendor if the customer's Epicor instance has UD Vendor columns configured.
Streamleader
Item / Product
Epicor Prophet 21
Part
1:1Streamleader Item records map to Epicor Part. We transfer PartNum (SKU), PartDescription, Unit of Measure, standard cost, and standard price. Pricing tiers from Streamleader custom fields (if any) are stored in Epicor UD columns on Part. UOM conversions that Streamleader stores as custom attributes are built as PartUOM conversion records in Epicor. Stocked vs. non-stocked flags from Streamleader map to the Part's TypeCode (Stock, Service, Compressor, Rental, etc.).
Streamleader
Chart of Accounts
Epicor Prophet 21
GL Account
1:1Streamleader Chart of Accounts maps to Epicor GL Account (GLAccount). We preserve account codes, account descriptions, account types, and the full account hierarchy. Streamleader's top-level segments map to Epicor's Natural Account and Optional segments depending on the customer's chart structure. We note that Epicor requires reconfiguration of fiscal year calendars if Streamleader uses a non-calendar fiscal year; this is flagged during discovery and documented as a post-migration admin task.
Streamleader
Open AP Records
Epicor Prophet 21
AP Invoice / AP Payment
1:1Streamleader open AP (vendor bills) maps to Epicor AP Invoice with open invoice status flags preserved. We export invoice number, vendor reference, invoice date, due date, total amount, and outstanding balance. Partial payments from Streamleader are carried as payment records in Epicor. Epicor's AP Invoice must have a corresponding Vendor record already present; we load Vendors first. AP invoice line items map to Epicor AP Invoice lines with GL account and cost centre references.
Streamleader
Open AR Records
Epicor Prophet 21
AR Invoice / AR Payment
1:1Streamleader open AR (customer invoices) maps to Epicor AR Invoice with open invoice status flags. We transfer invoice number, customer reference, invoice date, due date, total amount, and outstanding balance. Credit memos and overpayments from Streamleader carry as AR Credit Memos and AR Payment records respectively. Customer must already exist in Epicor; we load Customers before AR records. The AR Invoice Group and fiscal period are set from the Streamleader invoice date.
Streamleader
Historical Transactions
Epicor Prophet 21
GL Transaction / AR/AP History
1:1Historical transaction migration is scoped during discovery based on reporting requirements. We chunk exports by date range (typically 12 or 24 months) and validate line-item counts. Epicor GL records are created as Posted Transactions with the original journal entry date and source module. Customers and Vendors referenced in historical transactions must already exist in Epicor. Historical AR/AP records are loaded as completed transactions in Epicor's history tables. Full audit trail transfer is recommended but may require Epicor BAQ (Business Activity Query) configuration post-migration.
Streamleader
User
Epicor Prophet 21
User
1:1Streamleader User accounts map to Epicor User records. We export user name, email, and role assignments. Epicor User security is configured via its security groups (Security Manager); we map Streamleader role names to Epicor Security Groups during discovery and document the recommended group assignments. Permissions do not map directly because Epicor's ACL model is tied to its menu structure and specific companies/sites. We export role names for manual mapping by the customer's Epicor admin post-migration.
Streamleader
Custom Fields
Epicor Prophet 21
UD (User-Defined) Columns
lossyStreamleader custom fields on any object migrate to Epicor UD columns on the corresponding table (UD100, UD101, etc.) or via ZDataTable UD extensions. Epicor UD field setup requires adding columns via IceBO.ZDataTable and writing BPM logic to populate them at runtime if they reference calculated values. We flag every Streamleader custom field during technical audit, document the target Epicor UD column and BPM logic required, and escalate the UD development to the customer's Epicor admin team as a configuration task outside standard migration scope.
Streamleader
BOM / Bill of Materials
Epicor Prophet 21
BOM (PartMtl)
lossyStreamleader does not publish BOM capabilities in its documented feature set. If the source data includes BOMs (bill of materials or recipe structures), we map them to Epicor PartMtl (Bill of Materials / Job Manager). If no BOM data exists in Streamleader, we document the absence and recommend a BOM capture exercise before or during Epicor configuration as part of the manufacturing implementation phase.
Streamleader
Open Orders
Epicor Prophet 21
Sales Order
1:1Streamleader open Sales Orders map to Epicor OrderHed and OrderDtl. Header-level fields (customer, order date, terms, ship date) migrate as OrderHed records. Line items migrate as OrderDtl with PartNum, quantity, unit price, and warehouse resolved. We resolve Customer references to Epicor CustNum before loading, and validate that all PartNums referenced in OrderDtl exist in Epicor's Part table. Open order status flags from Streamleader map to Epicor OrderRel ReservedQty and PickPackShip status.
Streamleader
Documents
Epicor Prophet 21
Document Management (ICE Tables)
1:1Streamleader's API does not confirm programmatic access to binary document attachments (invoices, receipts, contracts). Epicor stores documents in ICE tables (Ice.Data.Doc) with DocumentReference linking to the parent record. We do not migrate document blobs as code or API call. We document the document storage locations in Streamleader, recommend a manual file extraction and re-upload to Epicor's Document Management, and flag this as a manual step in the migration checklist. If Epicor is deployed with a configured document repository (SharePoint, Network Drive, or IceBO DocStorage), we include the re-upload path in the handoff documentation.
| Streamleader | Epicor Prophet 21 | Compatibility | |
|---|---|---|---|
| Customer | Customer1:1 | Fully supported | |
| Vendor | Vendor1:1 | Fully supported | |
| Item / Product | Part1:1 | Fully supported | |
| Chart of Accounts | GL Account1:1 | Mapping required | |
| Open AP Records | AP Invoice / AP Payment1:1 | Fully supported | |
| Open AR Records | AR Invoice / AR Payment1:1 | Fully supported | |
| Historical Transactions | GL Transaction / AR/AP History1:1 | Mapping required | |
| User | User1:1 | Fully supported | |
| Custom Fields | UD (User-Defined) Columnslossy | Fully supported | |
| BOM / Bill of Materials | BOM (PartMtl)lossy | Fully supported | |
| Open Orders | Sales Order1:1 | Fully supported | |
| Documents | Document Management (ICE Tables)1: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.
Streamleader gotchas
Sales-led pricing hides feature tier differences
Thin review presence limits due-diligence signals
Document attachment API access undocumented
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 technical audit
We audit the Streamleader instance for all supported objects: Customers, Vendors, Items, Chart of Accounts, Open AP/AR, Open Orders, Historical Transactions, Users, and any custom fields. We confirm Streamleader API endpoint availability, pagination limits, and attachment accessibility. We pair this with an Epicor environment audit: company structure, site assignments, fiscal calendar configuration, UD column definitions, and security group setup. The discovery output is a written migration scope, a record-count baseline by object, and a confirmation of which objects require UD column or BPM development.
Schema preparation and UD column design
We design the Epicor destination schema before any data moves. This includes confirming the Part TypeCode assignments, GL Account structure (natural account plus optional segments), Customer and Vendor numbering conventions, and UD column mapping for every Streamleader custom field. UD columns are added via IceBO.ZDataTable in a non-production Epicor environment first. We deliver a schema design document for the customer's Epicor admin to review and sign off before any migration environment is touched.
Sandbox migration and reconciliation
We run a full migration into the Epicor Sandbox using production-equivalent data volume. The customer's operations and finance leads reconcile record counts against Streamleader baselines: customer count, vendor count, item count, open AP/AR balances by vendor and customer, open order count and value, user count. Any mapping corrections (field name mismatches, type conflicts, missing UD columns) are resolved in Sandbox before production migration begins. Epicor's DMT templates are built and validated in this phase.
Vendor and Customer parent-record load
We load Epicor Vendors first, then Customers, because all other record types depend on these parent references. We resolve Streamleader Vendor and Customer IDs to Epicor-generated keys during this phase. Any Streamleader User provisioning gaps (users not yet created in Epicor) are reconciled so that OwnerId references can be resolved on records that reference them.
Chart of Accounts and Open AP/AR load
GL Accounts are loaded next with hierarchy preserved. Open AP/AR records follow, with payment allocations reconstructed as separate AP/AR Payment records. We validate that invoice totals minus payment allocations equal the reported open balance in Streamleader. Fiscal period validation confirms that all invoice dates map to open Epicor fiscal periods. Any misalignments are documented and escalated to the customer's Epicor admin for fiscal period opening.
Item, BOM, and Order load
Parts (Items) are loaded with UOM conversions and any pricing tiers stored in UD columns. Open Sales Orders (OrderHed and OrderDtl) follow with Customer and Part references resolved. If Streamleader contains BOM data, it loads as PartMtl records in Epicor; if BOM data is absent, we document the gap for the customer's manufacturing implementation team to build post-migration. Historical transactions load last, chunked by date range and validated against the Streamleader ledger totals.
Cutover, validation, and handoff
We freeze Streamleader 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 a reconciliation report showing record counts in Epicor against Streamleader baselines for every object. We deliver the document extraction checklist for manual file transfer. We deliver the custom field and BPM specification for the customer's Epicor developer to implement UD column logic post-migration. We do not rebuild Streamleader automations as Epicor BPMs; that is a separate engagement.
Platform deep dives
Streamleader
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 Streamleader 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
Streamleader: Not publicly documented.
Data volume sensitivity
Streamleader 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 Streamleader to Epicor Prophet 21 migration scoping. Not seeing yours? Book a call.
Walk through your Streamleader 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 Streamleader
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.