CRM migration

Migrate from Pega Sales Automation to Microsoft Dynamics 365 Sales

Field-level mapping, validation, and rollback between Pega Sales Automation and Microsoft Dynamics 365 Sales . We move data and schema; workflows are rebuilt natively in Microsoft Dynamics 365 Sales .

Pega Sales Automation logo

Pega Sales Automation

Source

Microsoft Dynamics 365 Sales

Destination

Microsoft Dynamics 365 Sales  logo

Compatibility

83%

10 of 12

objects map 1:1 between Pega Sales Automation and Microsoft Dynamics 365 Sales .

Complexity

BStandard

Timeline

4-6 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Leaving Pega Sales Automation for Microsoft Microsoft Dynamics 365 Sales means exchanging a proprietary BPM case-management engine for a tiered SaaS CRM with predictable per-seat pricing and native Microsoft 365 integration. Pega organizes all sales data around Work Objects (Cases) under its AI-driven case-management engine, and enforces a strict entity import order where Accounts must load before Contacts, Contacts before Activities, and Activities before Opportunities. Violating this sequence causes foreign key rejections on the Pega side during export. We read the dependency graph from Pega's import documentation, sequence our chunking accordingly, and resolve every parent-record lookup before inserting dependent entities. We do not migrate Pega Rulesets, BPM workflow state machines, or the Next-Best-Action decision records from the Customer Decision Hub, as these are runtime engine artifacts rather than source-of-record data. We deliver a written inventory of Pega Ruleset configurations and automation patterns requiring review by the customer's admin team in Dynamics 365.

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

Pega Sales Automation logo

Pega Sales Automation

What's pushing teams away

  • The implementation complexity is substantial — Gartner reviewers describe the initial setup as 'simple' but note that integration and load handling become difficult at scale, leading to long professional services engagements.
  • Pega's proprietary Rules and Rulesets development paradigm requires specialized skills, and organizations without dedicated Pega developers struggle to maintain customizations after the initial consultants leave.
  • The 'contact vendor' pricing model with no public per-seat cost creates budget uncertainty, and customers with declining headcount report that they feel locked into negotiated minimums.
  • The steep learning curve for end users — cited across multiple G2 reviews as 'challenging' and 'complex' — drives adoption failures, especially in organizations with high sales rep turnover.

Choosing

Microsoft Dynamics 365 Sales  logo

Microsoft Dynamics 365 Sales

What's pulling them in

  • Deep Microsoft 365, Teams, and Outlook integration makes Microsoft Dynamics 365 Sales a natural fit for Microsoft-first organizations already invested in that ecosystem
  • Sales Enterprise and Premium tiers offer unlimited custom tables and advanced AI-driven forecasting and predictive analytics not available in lower tiers
  • Professional tier pricing at $65 per user per month offers a lower entry cost than Salesforce for SMB teams with straightforward CRM needs
  • Flexible customization options allow businesses to build bespoke apps, tailor forms and views, and integrate with other Dynamics 365 modules
  • Microsoft Copilot AI tools are embedded directly into the sales workflow on Enterprise and Premium, automating routine tasks and providing deal intelligence

Object mapping

How Pega Sales Automation objects map to Microsoft Dynamics 365 Sales

Each row shows how a Pega Sales Automation object lands in Microsoft Dynamics 365 Sales , including any object-level transformations, lookup resolution, or schema-design dependencies.

Typical mapping — final map is confirmed during the sample migration step.

Pega Sales Automation

Account

maps to

Microsoft Dynamics 365 Sales

Account

1:1
Fully supported

Pega Accounts map directly to Dynamics 365 Account. They are the top-level import anchor with no parent dependencies, so we import them first in every migration run. Standard fields (AccountName, Industry, Website, Address, Phone) map 1:1. Pega's industry classification codes require mapping to the Dynamics 365 Industry code picklist. We use the Pega Account's internal pyID as a cross-reference field during migration for audit trails.

Pega Sales Automation

Contact

maps to

Microsoft Dynamics 365 Sales

Contact

1:1
Fully supported

Pega Contacts map to Dynamics 365 Contact with a mandatory AccountId lookup that must be resolved at migration time. Pega's import documentation mandates loading Contacts only after Accounts are confirmed imported. We resolve the Contact-to-Account reference using Pega's pyPartyAccountID property and match against the Account records we loaded in the first phase. Contact status and disposition codes from Pega map to a custom Contact field for audit.

Pega Sales Automation

Lead

maps to

Microsoft Dynamics 365 Sales

Lead

1:1
Fully supported

Pega Leads represent unconverted prospects and carry Pega-specific disposition codes. They map directly to Dynamics 365 Lead with Lead Status preserved. We create a custom field pega_disposition_code__c to retain the original Pega disposition value for reporting continuity. If any Pega Leads overlap with migrated Contacts (same email address), we flag them for manual review rather than auto-converting, because Lead-to-Contact conversion is a business decision the customer's sales ops team makes.

Pega Sales Automation

Opportunity

maps to

Microsoft Dynamics 365 Sales

Opportunity

1:1
Fully supported

Pega Opportunities map to Dynamics 365 Opportunity. They reference both Account (via pyOpportunityAccountID) and optionally Contact, and include stage progression, amount, close date, and probability. We resolve AccountId at migration time before inserting Opportunities, and map Pega stage names to equivalent Microsoft Dynamics 365 Sales Process stage values. Stage history and forecast category migrate as extended properties on the Opportunity.

Pega Sales Automation

Product

maps to

Microsoft Dynamics 365 Sales

Product

1:1
Fully supported

Pega Products are sellable items attached to Opportunities via an Opportunity-Product junction. They map to Dynamics 365 Product2 records. Standard Price Book entries are created during migration. The Pega product code maps to the Product's Number field. If the customer uses Pega's pricing rules, we migrate the base unit price and note that dynamic pricing logic requires rebuild in Microsoft Dynamics 365 Sales .

Pega Sales Automation

Opportunity-Product Junction

maps to

Microsoft Dynamics 365 Sales

Opportunity Product Detail

1:1
Fully supported

The Pega Opportunity-Product junction record (which links a Product to an Opportunity with quantity, unit price, and discount) maps to Dynamics 365 Opportunity Product Detail. We resolve the parent Opportunity reference and the Product2 reference before inserting, preserving the quantity, unit price, and discount fields on the junction.

Pega Sales Automation

Activity (Call, Email, Task, Meeting)

maps to

Microsoft Dynamics 365 Sales

Task, Event, EmailMessage

1:1
Fully supported

Pega Activities (calls, emails, tasks, meetings) are tied to parent entities (Opportunity, Contact, Account). The import sequence requires Activities to load after their parent records. We flatten Pega's activity type hierarchy into Dynamics 365's separate Task (with TaskSubtype for calls), Event (for meetings), and EmailMessage objects. Activity timestamps and disposition codes migrate to custom fields for continuity. Email body content migrates to EmailMessage; call duration migrates to custom Task fields.

Pega Sales Automation

Case (Work Object)

maps to

Microsoft Dynamics 365 Sales

Custom Entity or Incident

lossy
Fully supported

Pega Cases (Work Objects) carry their own lifecycle states, assignments, SLA timers, and dependency chains that do not map directly to any standard Dynamics 365 entity. We evaluate whether Cases should map to a Dynamics 365 custom entity, to the Incident table (if Service is licensed), or to Tasks on the parent Account or Opportunity based on the customer's Case type taxonomy. We design this mapping during scoping and validate it in the sandbox migration before production import.

Pega Sales Automation

Campaign

maps to

Microsoft Dynamics 365 Sales

Campaign

1:1
Fully supported

Pega Campaigns group Leads and Activities for coordinated outreach. They map to Dynamics 365 Campaign, with campaign membership records and campaign status preserved. Linked Opportunities that originated from campaign response are reconciled against the Opportunities already migrated in the earlier phase. Campaign budget and scheduled start/end dates migrate to standard Campaign fields.

Pega Sales Automation

Sales Team

maps to

Microsoft Dynamics 365 Sales

Team or Manual Sharing

1:1
Fully supported

Pega Sales Teams define which users have access to a given Account or Opportunity. Pega stores team membership as a separate assignment entity. If the destination Dynamics 365 org uses the native Teams model, we map team assignments to Dynamics 365 Team membership records. If the org uses manual sharing or territory-based access, we map team assignments to equivalent sharing rules and document the difference in the handoff documentation.

Pega Sales Automation

Territory

maps to

Microsoft Dynamics 365 Sales

Territory

1:1
Fully supported

Pega Territories segment Accounts and users by geography or business unit using assignment rules that trigger on record creation. We map Pega territory assignments to Dynamics 365 Territory records, preserving the territory hierarchy. Territory-based routing rules are not migrated as automation; they are documented for the customer's admin to configure in Microsoft Dynamics 365 Sales Territory Management post-migration.

Pega Sales Automation

Custom Fields (Properties)

maps to

Microsoft Dynamics 365 Sales

Custom Fields

lossy
Fully supported

Pega supports unlimited custom properties on any base entity configured via App Studio or Rule configuration. There is no automated discovery endpoint listing every custom field across the schema. We enumerate custom fields entity by entity via the Pega API or by reviewing Ruleset exports, then manually map each to a corresponding Dynamics 365 custom field with matched data type. Pega Text maps to Single Line of Text or Multiple Lines of Text; Integer and Decimal map to Number; DateTime maps to Date and Time. Custom field mapping is the most manual step in any Pega migration and drives schedule variance.

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.

Pega Sales Automation logo

Pega Sales Automation gotchas

High

Traditional UI to Constellation migration is a separate migration track

High

Entity import order is strictly enforced with hard dependencies

Medium

Pega API rate limits are not publicly documented

Medium

Custom Fields require manual mapping against destination schema

Microsoft Dynamics 365 Sales  logo

Microsoft Dynamics 365 Sales gotchas

High

Professional tier 15-table custom table limit blocks migrations

High

October 2024 pricing increase applies at renewal for all customers

Medium

Custom fields must be created in the UI before API writes

Medium

Power Platform request limits apply to bulk migrations

Medium

Activity records orphaned to inactive owners fail silently

Pair-specific challenges

  • Pega entity import sequence is strictly enforced

    Pega Sales Automation enforces referential integrity by requiring entities to load in a fixed sequence: Accounts first, then Contacts, then Activities, then Opportunities, then junction objects. Skipping or reordering steps causes foreign key failures and rejects the import batch. We read the entity dependency graph from Pega's official import guide, sequence our data chunking to match it, and validate each batch passes Pega's pre-import checks before loading the next tier. When migrating to Dynamics 365, we perform the same sequencing on the destination side (Accounts first, then Contacts with resolved AccountId, then Opportunities with resolved AccountId, then Activities with resolved parent lookups).

  • Pega Cases do not map to standard CRM entities

    Pega Cases (Work Objects) are BPM artifacts with their own lifecycle states, assignments, and SLA timers that have no direct equivalent in Microsoft Dynamics 365 Sales . We do not auto-import Cases as Opportunities or Accounts because the lifecycle semantics are different. Instead, we design a custom mapping during scoping: some Case types become Dynamics 365 custom entities, others map to the Incident table if Service Cloud is licensed, and simple Cases map to Tasks on the parent record. The customer's sales ops lead reviews and approves the Case mapping design before migration runs.

  • Pega API rate limits are not publicly documented

    Pega does not publish API rate limits in its public documentation, and the support forum shows customers asking about rate limiting controls with no official response. For migrations using the Pega Sales Automation API, we implement adaptive throttling with exponential backoff and monitor for HTTP 429 responses. If we encounter rate limits during extraction, we pause and retry with increased delay rather than risk throttling the customer's live Pega system. This is a precaution against undocumented server-side throttling rather than a response to a known limit.

  • Custom fields require manual enumeration across every Pega entity

    Pega allows unlimited custom fields (properties) on any base entity through App Studio or Rule configuration, but there is no single API endpoint that lists every custom field across the schema. We must enumerate custom fields entity by entity via the Pega API or by reviewing the customer's Ruleset exports. Each discovered custom field is then hand-mapped to a Dynamics 365 custom field with a matching data type. This step is manual, cannot be fully automated, and is the primary driver of timeline variance in Pega migrations.

  • Pega Constellation vs Traditional UI metadata split

    Pega Sales Automation is transitioning from the Traditional UI to the Constellation architecture (primary interface post-'25). The two architectures use different data binding models, form layouts, and field rendering metadata. If we migrate data from a Traditional UI Pega instance, the field-level metadata (labels, required flags, picklist values) may differ from the Constellation instance. We align field metadata against the destination Dynamics 365 schema and flag any source fields that have no clear target equivalent before import begins.

Migration approach

Six steps for a successful Pega Sales Automation to Microsoft Dynamics 365 Sales data migration

  1. Discovery and Pega environment audit

    We audit the source Pega Sales Automation environment across version (pre-'25 Traditional UI vs post-'25 Constellation), vertical variant (base, Financial Services, Insurance, Healthcare), custom Rulesets, entity volume per object type, and the count of Work Object (Case) types in use. We also enumerate existing Pega API connections and any integration credentials. This output is a written migration scope document with estimated record counts per entity, a Case mapping design recommendation, and a list of custom fields requiring manual mapping per entity.

  2. Custom field enumeration and data type mapping

    We enumerate every custom property on every entity by querying the Pega API entity by entity and by reviewing the customer's Ruleset export files. Each custom property is assigned a Dynamics 365 target field with a matched data type (Text to Single Line of Text, Integer to Whole Number, DateTime to Date and Time, Decimal to Decimal Number). Custom fields that have no equivalent in Dynamics 365 are flagged for the customer's admin to decide: drop, map to a generic text field, or create a new custom field. This step runs in parallel with the sandbox setup.

  3. Sandbox migration and Case mapping validation

    We run a full migration into a Dynamics 365 sandbox (Full Copy or Partial Copy sandbox type) using production-equivalent data volumes. The customer's sales ops lead reviews record counts across all entities, spot-checks 25-50 records per entity against the Pega source, and approves the Case mapping design. Any custom field mapping corrections, Case type reclassifications, or entity exclusions happen in sandbox before production migration begins.

  4. Owner reconciliation and User provisioning

    We extract every distinct Pega Owner (user) referenced on Accounts, Contacts, Opportunities, and Activities and match by email address against the destination Dynamics 365 org's User table. Owners without a matching Dynamics 365 User are held in a reconciliation queue. The customer's admin provisions any missing Users before record import resumes. OwnerId references must be valid on the destination org before we can insert most standard objects.

  5. Production migration in dependency order

    We run production migration following Pega's required entity sequence: Accounts first (no dependencies), then Contacts with AccountId resolved, then Activities with parent record lookups resolved, then Opportunities with AccountId and ContactId resolved, then junction objects, then Campaigns, then Cases using the approved custom mapping. Each phase emits a row-count reconciliation report before the next phase begins. We use Dynamics 365's Bulk API with batch chunking and exponential backoff for large activity and Case batches.

  6. Cutover, delta sync, and automation inventory handoff

    We freeze Pega writes during the cutover window, run a final delta migration of any records created or modified during the migration run, then enable Dynamics 365 as the system of record. We deliver a written inventory of Pega Ruleset configurations, automation patterns, and SLA rule definitions that the customer's admin reviews and rebuilds in Dynamics 365 (using Dynamics 365 workflows, Power Automate, or Power Apps). We support a one-week hypercare window for reconciliation issues raised by the sales team.

Platform deep dives

Context on both ends of the pair

Pega Sales Automation logo

Pega Sales Automation

Source

Strengths

  • AI Next-Best-Action decisioning embedded directly into the sales workflow, not a separate add-on module.
  • Low-code App Studio for business analysts to modify workflows and data model without Java expertise.
  • Unified platform spanning sales, marketing, and service with shared data model and case management engine.
  • Industry-specific variants for Financial Services, Insurance, and Healthcare with pre-built compliance logic.
  • Agentic workflow capabilities that scale coaching and guidance across every sales rep automatically.

Weaknesses

  • Proprietary Ruleset-based development model creates vendor lock-in and requires dedicated Pega-certified developers.
  • No public pricing or free tier — sales cycle is enterprise-only and requires direct negotiation with Pega.
  • High implementation complexity with significant professional services dependency for initial deployment and upgrades.
  • Binary attachment storage tied to Pega Cloud infrastructure, making export and portability non-trivial.
  • Constellation vs Traditional UI architectural split adds upgrade complexity for existing customers.
Microsoft Dynamics 365 Sales  logo

Microsoft Dynamics 365 Sales

Destination

Strengths

  • Native integration with Microsoft 365, Teams, Outlook, and SharePoint for unified productivity workflow
  • Unlimited custom tables and complex workflows on Enterprise tier enable deep customization for complex sales processes
  • AI-driven predictive analytics and deal intelligence on Enterprise and Premium tiers help sales teams prioritize pipeline
  • Dataverse unified data layer provides a consistent API and data model across all Dynamics 365 and Power Platform apps
  • Strong security model with Field-Level Security and Record Ownership rules for governance-conscious enterprises

Weaknesses

  • Sales Professional tier caps custom tables at 15, creating a migration ceiling for highly customized SMB environments
  • October 2024 pricing increases of $15 per user across all tiers apply to existing customers upon renewal
  • Implementation typically requires costly certified partners, adding 30–50% to total project cost
  • Updates and platform releases can disrupt customizations and plugins, requiring regression testing after each wave
  • Non-Microsoft integrations require additional configuration or middleware, limiting flexibility for heterogeneous tech stacks

Complexity grading

How hard is this migration?

Standard CRM migration. 3 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 Pega Sales Automation and Microsoft Dynamics 365 Sales .

  • Object compatibility

    B

    3 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

    Pega Sales Automation: Not publicly documented — Pega support responses in forums indicate limits exist but are not published or configurable by customers.

  • Data volume sensitivity

    B

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

Estimator

Estimate your Pega Sales Automation to Microsoft Dynamics 365 Sales 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 Pega Sales Automation to Microsoft Dynamics 365 Sales data migrations

Answers to the questions buyers ask most during Pega Sales Automation to Microsoft Dynamics 365 Sales migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Pega Sales Automation to Microsoft Dynamics 365 Sales migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most migrations land between four and six weeks for accounts with under 20,000 Accounts, 5,000 Opportunities, and a single Case type. Migrations with multiple Pega Case types, large activity histories (over 200,000 records), Pega vertical variant entities (Financial Services, Insurance, or Healthcare), or Constellation UI field metadata differences move to eight to twelve weeks because of the manual custom field enumeration step and Case mapping design work.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Pega Sales Automation.
Land in Microsoft Dynamics 365 Sales , 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