ERP migration

Migrate from Copyl to Epicor Prophet 21

Field-level mapping, validation, and rollback between Copyl and Epicor Prophet 21. We move data and schema; workflows are rebuilt natively in Epicor Prophet 21.

Copyl logo

Copyl

Source

Epicor Prophet 21

Destination

Epicor Prophet 21 logo

Compatibility

75%

9 of 12

objects map 1:1 between Copyl and Epicor Prophet 21.

Complexity

BStandard

Timeline

4-8 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Copyl to Epicor ERP is a schema-first migration because Copyl has no fixed data model and every customer's workspace is built differently. We begin by enumerating every custom object, field, and relationship in the Copyl workspace before writing a single migration map. Epicor ERP uses a manufacturing-centric object model — Parts, BOMs, Jobs, Quotes, and Suppliers — that requires structural translation from Copyl's user-defined entities. We map Copyl custom objects to Epicor Part and Job records, Copyl Tasks to Epicor Jobs and Activities, Copyl Projects to Epicor Jobs or Sales Orders depending on whether they are make-to-order, and Copyl Resources to Epicor Resources with site and labor code resolution. UD fields in Epicor are pre-created via the Epicor REST API before data import begins. Custom status values from Copyl are mapped to Epicor Job status codes explicitly during scoping. Workflows, automations, and custom application logic built inside Copyl do not migrate as code; we deliver a written inventory of every automation requiring rebuild in Epicor BPM or MES configuration after cutover.

Field-level fidelity

Every standard and custom field arrives verified.

Schema-aware mapping

AI proposes the map; you confirm before any record moves.

Relationships preserved

Parent–child, lookups, and ownership stay linked.

Full activity history

Calls, emails, meetings — with original timestamps.

Attachments & notes

Documents, uploads, and inline notes move with the record.

Why teams make this switch

Two sides of the same decision

Leaving

Copyl logo

Copyl

What's pushing teams away

  • Contract management is listed as 'coming soon' on the public pricing page, so customers expecting fully-mature CLM today may find feature gaps versus established CLM vendors.
  • Pricing per individual feature (e.g., $24.90/month for Risk Management) can add up quickly as more modules are enabled, eroding the free-tier advantage.
  • All-systems integration at $3,600/month is a steep step from free/low-tier pricing, creating a pricing cliff for teams that need cross-system automation.
  • Limited third-party review coverage on G2 and Capterra makes peer validation harder for prospective enterprise buyers.
  • Agent-centric billing is novel — finance teams used to per-seat SaaS pricing must build a different forecasting model to predict Copyl spend.

Choosing

Epicor Prophet 21 logo

Epicor Prophet 21

What's pulling them in

  • Industry-specific design for wholesale distributors, not a general-purpose ERP repurposed for distribution — distributors choose P21 because it matches their replenishment, kitting, and counter-sale workflows out of the box.
  • Strong inventory control with automated replenishment, lot and serial tracking, and multi-warehouse management appeals to distributors with complex stock requirements and tight margin pressure.
  • Responsive customer support cited across G2 and Gartner reviews, with Epicor's 90% retention rate reflecting long-term customer satisfaction in a market where switching costs are high.
  • Cloud deployment on Microsoft Azure provides the flexibility to scale user counts and warehouse locations without on-premise infrastructure investment.
  • The Software Development Kit lets distributors personalize P21 to their specific business processes without modifying the application source code, preserving upgrade paths.

Object mapping

How Copyl objects map to Epicor Prophet 21

Each row shows how a Copyl 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.

Copyl

Custom Objects (all user-defined)

maps to

Epicor Prophet 21

Part, Job, Quote, or UD Table (per entity type)

lossy
Fully supported

Every distinct custom object type in the Copyl workspace is enumerated during scoping. We classify each entity by its dominant data pattern: entities representing manufactured items map to Epicor Part; entities representing production orders map to Epicor Job; entities representing customer-facing deliverables map to Epicor Quote. Entities that do not fit a standard Epicor table are mapped to UD (user-defined) tables on the closest standard object, with UD column names derived from the original Copyl field API names.

Copyl

Custom Object Fields

maps to

Epicor Prophet 21

UD (User-Defined) Fields

lossy
Fully supported

Copyl field definitions (field name, data type, required flag, picklist options) are translated to Epicor UD column definitions on the target table. Epicor Kinetic uses UD fields prefixed with a character (e.g., Character01, ShortChar01, Number01) with extended UD column maps to store the human-readable label. We pre-create all UD fields via the Epicor REST API or change set before any record import begins. Field types are mapped: Copyl text to ShortChar or Character, Copyl number to Number or Integer, Copyl date to Date, Copyl boolean to Checkbox.

Copyl

Task

maps to

Epicor Prophet 21

JobOper or JobHead

1:1
Fully supported

Copyl Tasks map to Epicor Job Operations (JobOper) within a parent Job (JobHead) when the task represents a manufacturing step, or to Epicor Task records (PMTask or MultiJob) when the task represents an administrative or maintenance activity. The Copyl task title becomes the JobOper description; the assigned resource maps to the Epicor Resource Group or Labor code. Task status (custom Copyl values) is mapped to Epicor Job status codes explicitly during scoping.

Copyl

Resource

maps to

Epicor Prophet 21

ResourceGroup and Labor

1:1
Fully supported

Copyl Resources (people, equipment, budgets) map to Epicor ResourceGroup for equipment resources and Labor for personnel resources. The resource allocation mapping from Copyl (which resource is assigned to which task and at what capacity) is reconstructed as Epicor LaborDtl entries with labor hours and pay rates if the destination is Kinetic with Labor tracking enabled.

Copyl

Project

maps to

Epicor Prophet 21

Job or SalesOrder

1:1
Fully supported

Copyl Projects map to Epicor Job when the project represents a manufacturing production order, or to SalesOrder when it represents a make-to-order sales contract. The mapping decision is made during scoping based on whether the project has Bill of Materials and routing dependencies. Project-level custom fields from Copyl migrate as UD fields on the target Job or Order header.

Copyl

User

maps to

Epicor Prophet 21

User or Employee

1:1
Fully supported

Copyl workspace users map to Epicor Employee records (linked to the User account). Role and permission data from Copyl is not migrated as access control rules because Epicor's security model (User Profiles and Permission Sets) is administered separately. We export user identities and map them by email to the Epicor Employee table.

Copyl

Comment

maps to

Epicor Prophet 21

JobHeadText, OrderHedText, or PartText

1:1
Fully supported

Copyl comments attached to Tasks or Projects migrate to Epicor text note records on the corresponding parent object. Comments on manufacturing tasks attach to JobHeadText or JobOperText; comments on sales deliverables attach to OrderHedText. Comment author and timestamp are preserved in the Epicor text record metadata if the target table supports it, otherwise in a UD field.

Copyl

Attachment

maps to

Epicor Prophet 21

DocumentRev

1:1
Fully supported

Files attached to Copyl Tasks or Projects migrate to Epicor Document Management (DocumentRev, DocumentType) if the Epicor tenant has Document Control enabled. For tenants without Document Control, we deliver attachments as a file inventory with the target Job number or Part number cross-referenced so the customer's admin can re-attach manually post-migration.

Copyl

Custom Status Values

maps to

Epicor Prophet 21

Job Status Code or UD Code

lossy
Fully supported

Copyl allows arbitrary status values on any object. Epicor enforces fixed status picklists on Job (JobHead.JobClosed, JobHead.JobComplete) and other manufacturing tables. We collect every distinct status value during scoping, map each to the nearest Epicor status code or UD code, and store unmapped values in a UD field for admin review. Customers must confirm these mappings before transformation begins.

Copyl

Bill of Materials (if modeled in Copyl)

maps to

Epicor Prophet 21

JobMtl

1:1
Fully supported

If the Copyl workspace models multi-level product structures as custom objects or linked records, those structures map to Epicor JobMtl (Job Material) records. We reconstruct the parent-component relationship using the Copyl entity references and create JobMtl records under the corresponding JobHead. Material quantity and scrap percent are mapped from the Copyl numeric fields.

Copyl

Supplier / Vendor (if modeled in Copyl)

maps to

Epicor Prophet 21

Supplier

1:1
Fully supported

If the Copyl workspace tracks external vendors or suppliers as custom objects, those map to Epicor Supplier records. The Supplier.Address fields and payment terms migrate from Copyl address and custom fields. Epicor Supplier records are required for Purchase Order generation and MRP supply planning.

Copyl

Inventory / Stock (if modeled in Copyl)

maps to

Epicor Prophet 21

PartLot or PartBin

1:1
Fully supported

If the Copyl workspace tracks inventory quantities or stock levels as custom objects, those map to Epicor PartLot (lot-controlled inventory) or PartBin (bin-controlled inventory) records. We resolve the Part number reference first, then create the corresponding lot or bin records with quantity on hand from the Copyl data.

Gotchas + challenges

What specifically takes care here

Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.

Copyl logo

Copyl gotchas

High

Custom schema variability across Copyl workspaces

High

No documented public API with bulk export capability

Medium

Custom status values require explicit mapping

Epicor Prophet 21 logo

Epicor Prophet 21 gotchas

High

Third-party bolt-on integrations complicate migration scope

High

Dirty data without standardized processes compounds migration risk

Medium

SDK customizations and BPMs may not survive platform upgrades

Medium

Report-based export only for non-technical users

Low

Per-user pricing model requires accurate user count before migration planning

Pair-specific challenges

  • Copyl has no fixed schema requiring mandatory enumeration

    Copyl's core design principle is that every workspace has a different object model. There is no standard export endpoint that captures all entities and fields universally. Before we can write a migration map, we must enumerate every custom object definition, field schema, and relationship in the customer's specific Copyl workspace. If the workspace has been built over multiple years by different users, enumeration can take two to three weeks and requires customer cooperation to map entity names to business meaning. If the customer cannot produce a complete export from Copyl, the migration timeline extends and the scope may need to be reduced to the most critical entity types.

  • Epicor UD fields require schema pre-creation before import

    Epicor ERP uses User-Defined (UD) fields on standard tables rather than standalone custom objects. UD columns are named Character01, ShortChar01, Number01 and so on, with separate UD Column Map records storing the display label. Copyl custom fields must be translated to these UD column names and pre-created via the Epicor API or change set before any record data loads. If UD fields are not pre-created, the import job rejects records that attempt to write to undefined columns. We coordinate UD field creation as a prerequisite step before the main data migration phase begins.

  • Epicor enforces fixed status codes rejecting custom values

    Epicor's manufacturing tables (JobHead, JobOper, OrderHed) enforce strict status picklists that do not accept arbitrary string values. Copyl allows users to define any status value on any object. When migrating records from Copyl to Epicor, we must map every distinct Copyl status to an Epicor status code explicitly. Unmapped statuses cause import failures. During scoping, we collect the complete status inventory and the customer confirms the mapping. Statuses with no Epicor equivalent are stored in a UD field as a workaround, but they do not trigger Epicor's workflow actions tied to status change.

  • No documented Copyl bulk export API increases scoping time

    Our research found no publicly documented REST API for Copyl with bulk read or export endpoints. Most Copyl workspaces require manual export through the UI or a customer-built export script. We ask customers to provide CSV or JSON exports of each entity type before transformation begins. If the customer has built complex linked records in Copyl, the export may produce denormalized data requiring additional normalization during the transform phase. We flag any entity that cannot be exported cleanly during the discovery call and adjust the timeline accordingly.

  • Epicor Kinetic and older Epicor versions use different database engines

    Epicor Kinetic runs on Microsoft SQL Server and exposes a REST API. Older Epicor versions (Vantage, Vista, Epicor 9/10) run on Progress OpenEdge and require different extraction techniques. If the destination is an on-premises Epicor 10 instance rather than Kinetic Cloud, we use OpenEdge-native extraction or direct SQL access where available. The database engine difference affects extraction tooling, not the destination object mapping, but it influences the extraction method and timeline.

Migration approach

Six steps for a successful Copyl to Epicor Prophet 21 data migration

  1. Discovery and Copyl workspace enumeration

    We conduct a structured discovery session with the customer's Copyl workspace admin to enumerate every custom object type, field definition, relationship, and status value in use. We ask the customer to produce CSV or JSON exports of each entity type from within Copyl. We also collect the Copyl workspace export (if available) and document any linked records that represent Bill of Materials, multi-level projects, or resource allocations. The discovery output is a written entity inventory and an initial source-side data quality assessment identifying records with missing required fields or orphaned relationships.

  2. Epicor target schema design and UD field mapping

    We identify the Epicor edition and module set in scope (typically Epicor Kinetic Cloud with MES and Job Management, or Prophet 21 for distribution). We map each Copyl custom object to the nearest Epicor standard table, define the UD field translation table (Copyl field name to Epicor UD column name and type), and design the status mapping matrix. The target schema is deployed into a Salesforce Sandbox-equivalent Epicor test company first for validation. UD fields are created via the Epicor REST API using the Erp.BO.UDColumnSvc or via an Epicor change set before any data loads begin.

  3. Epicor test environment migration and reconciliation

    We run a full migration into the Epicor test company using production-like data volume. The customer's Epicor admin or implementation consultant reconciles record counts by entity type, spot-checks 25-50 records against the Copyl source for field accuracy, and validates that UD fields display correctly in the Epicor UI. The reconciliation phase is the last opportunity to correct mapping logic before production migration begins. Any mapping corrections are documented and applied to the production migration scripts.

  4. Status mapping confirmation and transformation build

    We present the complete status mapping matrix to the customer for explicit confirmation before building the transformation scripts. Each Copyl status value is assigned to a target Epicor status code or placed in a UD field. Transformation scripts are built to apply this matrix consistently across all records. Any Copyl status that has no Epicor equivalent is flagged with a note to the customer that the status will be preserved in a UD field and that Epicor workflow actions tied to status change will not fire for those records.

  5. Production migration in dependency order

    We run production migration in record-dependency order: Master data first (Parts, Suppliers, Employees, Resource Groups), then transactional data (Jobs with JobMtl and JobOper), then administrative records (Tasks, Projects, Comments, Attachments). UD fields are written during the same insert operation as the standard fields. Each phase emits a row-count reconciliation report. Any records rejected by Epicor's validation rules are logged, corrected, and retried in the same phase before moving forward.

  6. Cutover, validation, and automation rebuild handoff

    We freeze Copyl writes during cutover and run a final delta migration of any records modified during the migration window. Epicor is enabled as the system of record. We deliver the automation and workflow inventory document to the customer's Epicor admin, listing every Copyl task automation or conditional logic that requires rebuild in Epicor BPM, MES configuration, or Kinetic Dashboard Builder. We do not rebuild Copyl automations as Epicor workflows inside the migration scope. We support a one-week hypercare window to resolve reconciliation issues.

Platform deep dives

Context on both ends of the pair

Copyl logo

Copyl

Source

Strengths

  • Custom object builder with no fixed schema gives businesses flexibility to model unique processes
  • Combines task management and resource planning in a single platform reducing tool sprawl
  • Web-based application builder allows non-technical users to create business software
  • Desktop apps available for Mac and Windows for focused workstation usage
  • Categorized as a business ERP system indicating broader operational scope

Weaknesses

  • No fixed data model means every customer schema is different requiring custom migration mapping
  • Limited public documentation on API endpoints and export capabilities
  • Small market presence with few third-party integration options documented
  • No widely available user review data makes support quality difficult to assess
  • No publicly documented bulk export mechanism found in research
Epicor Prophet 21 logo

Epicor Prophet 21

Destination

Strengths

  • Purpose-built for wholesale distribution with industry-specific replenishment, kitting, and counter-sale workflows out of the box.
  • Multi-warehouse management with bin locations, cross-docking, and real-time inventory visibility across all warehouse locations.
  • Automated replenishment engine with demand-based and min-max planning reduces stockouts and overstock carrying costs.
  • AI-infused reporting via Epicor Prism provides Gen AI-driven insights into ERP data without requiring a BI team.
  • Strong customer retention at 90% and a 50-year track record in the distribution vertical provides long-term vendor stability.

Weaknesses

  • High total cost of ownership — per-user pricing of $150-200/month plus $10K-$500K implementation creates significant budget commitment for small and mid-market distributors.
  • Customization via SDK requires technical expertise and introduces upgrade risk when custom code conflicts with new P21 releases.
  • Report generation performance is a known pain point — multiple users report system freezes during large or complex report exports.
  • Third-party bolt-on reliance for functionality that competitors include natively increases integration complexity and total solution cost.
  • Limited public API documentation — developers building custom integrations report difficulty finding P21 API authentication methods and endpoint specifications.

Complexity grading

How hard is this migration?

Standard ERP migration. 2 of 8 objects need a mapping; the rest are 1:1.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Copyl and Epicor Prophet 21.

  • Object compatibility

    B

    2 of 8 objects need a mapping; the rest are 1:1.

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    8-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    B

    Copyl: Not publicly documented..

  • Data volume sensitivity

    B

    Copyl doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your Copyl to Epicor Prophet 21 migration cost

Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.

Step 1

What are you migrating?

Pick a category, then your source and destination platforms.

Category

FAQ

Frequently asked questions about Copyl to Epicor Prophet 21 data migrations

Answers to the questions buyers ask most during Copyl to Epicor Prophet 21 migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Copyl to Epicor Prophet 21 migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Migrations from Copyl workspaces with fewer than 15 custom object types and under 50,000 total records typically complete in four to eight weeks. Workspaces with more than 15 custom object types, complex Bill of Materials structures, large task-resource allocation histories, or multiple linked entity types extend to twelve to twenty weeks. The enumeration and discovery phase is the critical path item for Copyl migrations because every workspace requires a custom schema map before any data can be extracted.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Copyl.
Land in Epicor Prophet 21, intact.

Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.

Accuracy guarantee Rollback included Quote in 1 business day