CRM migration
Field-level mapping, validation, and rollback between CRM and Deals for Zendesk and Salesforce Sales Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Sales Cloud.
CRM and Deals for Zendesk
Source
Salesforce Sales Cloud
Destination
Compatibility
7 of 12
objects map 1:1 between CRM and Deals for Zendesk and Salesforce Sales Cloud.
Complexity
BStandard
Timeline
4-8 weeks
Overview
Moving from CRM and Deals for Zendesk to Salesforce is a schema redesign, not a record copy. Zendesk treats Deals as a secondary object subordinate to tickets and contacts; Salesforce uses Opportunity as a first-class record attached to Account and Contact. We resolve that structural inversion during scoping, reconstruct stage-history by joining Activities to Deals (because Zendesk's Deals API does not expose stage-change events), and pre-migrate any Legacy Custom Objects to the v2 API before writing to Salesforce. We use Salesforce's Bulk API 2.0 for engagement history and handle Zendesk's separate Help Center API rate limit bucket to avoid cross-contamination during export. Workflows, triggers, automations, and Help Center articles do not migrate as code; we deliver a written inventory for your admin to rebuild in Salesforce.
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 CRM and Deals for Zendesk object lands in Salesforce Sales Cloud, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
CRM and Deals for Zendesk
Contact
Salesforce Sales Cloud
Lead or Contact (split required)
1:manyZendesk Contacts with no Organization linkage or with lifecycle_type indicating a prospect map to Salesforce Lead. Zendesk Contacts with a confirmed Organization and a customer lifecycle_type map to Salesforce Contact tied to an Account. We extract the contact's associated org_id and resolve it to an AccountId at migration time, creating the Account first if it does not exist. The original Zendesk contact ID is preserved in a custom field zd_contact_id__c for audit and cross-reference.
CRM and Deals for Zendesk
Organization
Salesforce Sales Cloud
Account
1:1Zendesk Organizations map directly to Salesforce Account. The domain field becomes the Account Website. Organization custom fields map to custom Account fields. Zendesk's flat org structure has no parent-account hierarchy, so we create a flat Account tree in Salesforce unless the customer specifies a parent mapping derived from their org structure or a custom field.
CRM and Deals for Zendesk
Deal
Salesforce Sales Cloud
Opportunity
1:1Zendesk Deals map to Salesforce Opportunity. The critical difference is that Zendesk Deals do not require an Account or Contact linkage, while Salesforce Opportunities require both. We run a pre-migration reconciliation to flag Deals without an associated Organization and offer the customer three options: create a placeholder Account, attach to a default Account, or exclude from migration. StageName maps from the Deal's pipeline stage; we reconstruct the stage value from Activities if the current stage is not directly available on the Deal.
CRM and Deals for Zendesk
Pipeline
Salesforce Sales Cloud
Record Type + Sales Process
lossyEach Zendesk pipeline becomes a Salesforce Record Type on Opportunity with a corresponding Sales Process. Stage values from Zendesk become StageName picklist values in the Salesforce Sales Process. Stage probability percentages map to StageProbability on the OpportunityStage metadata.
CRM and Deals for Zendesk
Pipeline Stage (Activity-derived)
Salesforce Sales Cloud
OpportunityHistory
lossyZendesk's Deals API does not expose stage-change history. Stage transitions are logged as Activities with event type stage_change. We de-normalize these Activity records into a synthetic stage-history array during the transform phase, then write each stage transition as an OpportunityHistory record in Salesforce with the original Zendesk timestamp preserved in SystemModstamp.
CRM and Deals for Zendesk
Activity: Call, Email, Meeting
Salesforce Sales Cloud
Task + Event + EmailMessage
1:1Zendesk Activities (calls, emails, meetings) linked to Contacts or Deals migrate to Salesforce Task, Event, and EmailMessage records. Call activities map to Task with TaskSubtype=Call and disposition preserved. Email activities map to EmailMessage (body) plus a linked Task (timeline entry). Meeting activities map to Event with attendees preserved via EventRelation records.
CRM and Deals for Zendesk
Ticket
Salesforce Sales Cloud
Case
1:1Zendesk Tickets migrate to Salesforce Case if the destination org includes Service Cloud. Ticket status maps to Case Status, priority maps to Case Priority, and requester maps to Contact. Conversation comments migrate as EmailMessage records linked to the Case. Tags migrate as Case Tags or a custom multi-select picklist depending on the customer's preference.
CRM and Deals for Zendesk
Custom Objects v2
Salesforce Sales Cloud
Custom Object
1:1Zendesk Custom Objects v2 map to Salesforce custom objects with __c API naming. We pre-create the destination schema including all custom fields, lookup relationships, and validation rules before any record import. Plan-tier limits are checked during scoping: Suite Team allows 3 object types, Suite Growth 5, Suite Professional 30, and Suite Enterprise Plus 50. If the customer's custom object count exceeds the destination's Salesforce edition, we flag this during scoping and offer to exclude objects or upgrade the destination edition.
CRM and Deals for Zendesk
Legacy Custom Objects
Salesforce Sales Cloud
Custom Object (v2 schema first)
lossyWe do not migrate Legacy Custom Object records directly. The mandatory pre-migration step is a five-step v2 schema migration: object type definition export, schema creation in v2 API, relationship type creation, record import to v2, then relationship record linkage. This step alone adds 3-5 days to the timeline. After v2 migration is complete, the resulting v2 records follow the standard custom object migration path. Legacy custom objects without a v2 equivalent in the destination schema are excluded and documented in the handoff inventory.
CRM and Deals for Zendesk
User / Agent
Salesforce Sales Cloud
User
1:1Zendesk Users (agents) map to Salesforce User records by email match. Agent role, group assignments, and profile data migrate as Salesforce Role, Profile, and Permission Set assignments. Zendesk group memberships that have no Salesforce equivalent (internal queue structures) are documented but not replicated. Inactive Zendesk users map to inactive Salesforce Users to preserve historical assignment.
CRM and Deals for Zendesk
Help Center Article
Salesforce Sales Cloud
Knowledge Article
1:1Zendesk Help Center has no native export. We run a dedicated export job against the Help Center API, downloading all HTML article bodies, inline images, content blocks, and translations via separate API calls. Articles are written to Salesforce Knowledge with category and section mapping remapped to the destination's data category group structure. This step is scoped separately because Help Center API runs in its own rate limit bucket separate from the Support API.
CRM and Deals for Zendesk
Tag
Salesforce Sales Cloud
Topic or Multi-Select Picklist
lossyZendesk tags on tickets and contacts are flat string arrays. We offer two strategies: migrate as Salesforce Topics with TopicAssignment records for org-wide tag usage, or migrate to a custom multi-select picklist field on the target object for object-scoped tagging. The customer chooses during scoping.
| CRM and Deals for Zendesk | Salesforce Sales Cloud | Compatibility | |
|---|---|---|---|
| Contact | Lead or Contact (split required)1:many | Fully supported | |
| Organization | Account1:1 | Fully supported | |
| Deal | Opportunity1:1 | Fully supported | |
| Pipeline | Record Type + Sales Processlossy | Fully supported | |
| Pipeline Stage (Activity-derived) | OpportunityHistorylossy | Fully supported | |
| Activity: Call, Email, Meeting | Task + Event + EmailMessage1:1 | Fully supported | |
| Ticket | Case1:1 | Fully supported | |
| Custom Objects v2 | Custom Object1:1 | Fully supported | |
| Legacy Custom Objects | Custom Object (v2 schema first)lossy | Not supported | |
| User / Agent | User1:1 | Fully supported | |
| Help Center Article | Knowledge Article1:1 | Fully supported | |
| Tag | Topic or Multi-Select Picklistlossy | 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.
CRM and Deals for Zendesk gotchas
Help Center has no native export
Separate API rate limit buckets per plan
Legacy Custom Objects must migrate to v2 first
Deals and pipeline stages lack historical audit trail in API
Custom Objects limits vary by plan tier and are not enforced consistently at import
Salesforce Sales Cloud gotchas
Workflow Rules and Process Builder are retired
Bulk API batch quota exhaustion during large imports
Storage overage billing is non-obvious
Account-Contact many-to-many relationship mapping
Territory and team member import ordering dependencies
Pair-specific challenges
Migration approach
Discovery and scoping audit
We audit the source Zendesk account across plan tier (Suite Team through Enterprise Plus), API rate limit bucket (200-2,500 req/min), custom field count per object, custom object type count, legacy custom object usage, pipeline and stage definitions, Activity volume, and Help Center article count. We identify Deals without Organization linkage, Legacy Custom Object records requiring v2 pre-migration, and Help Center sections requiring Salesforce Knowledge category mapping. The discovery output is a written migration scope, a field mapping matrix, and a Legacy Custom Object v2 migration plan.
Legacy Custom Objects v2 pre-migration
If the account uses Legacy Custom Objects, we run the five-step v2 migration before any main migration phase begins. This includes schema export, v2 object type creation, relationship type definition, record import, and relationship record linkage. This phase runs 3-5 days and produces a validated v2 dataset. We do not proceed to main migration until v2 records are confirmed writable against the Zendesk API.
Schema design and custom field provisioning
We design the destination Salesforce schema: custom fields on Account, Contact, Lead, Opportunity, Case, and any custom objects (with __c API names matched to Zendesk field names), picklist value sets for stage names, Record Types and Sales Processes per Zendesk pipeline, and OpportunityTeamMember structure if deal ownership is multi-rep. Schema deploys via metadata API into a Salesforce Sandbox first for validation. We also create the Help Center-equivalent Salesforce Knowledge data category structure during this phase.
Sandbox migration and reconciliation
We run a full migration into a Salesforce Sandbox (Full Copy or Partial Copy) using production-like data volume. The customer's RevOps lead reconciles record counts, spot-checks 25-50 random records against the Zendesk source (including Deals with and without Organizations), and validates that stage history appears correctly on OpportunityHistory. Any mapping corrections, orphan deal resolutions, and custom field type mismatches surface here. Sign-off on the sandbox report gates the production migration date.
Owner reconciliation and User provisioning
We extract every distinct Zendesk User referenced on Contact, Organization, Deal, and Activity records and match by email against the Salesforce destination org's User table. Agents without a matching User go to a reconciliation queue. The customer's Salesforce admin provisions any missing Users (active for current agents, inactive for departed agents to preserve historical assignment). Migration cannot proceed past this step because Opportunity.AccountId and Opportunity.OwnerId references are required.
Production migration in dependency order
We run production migration in record-dependency order: Accounts (from Zendesk Organizations), Contacts and Leads (with the org split applied), Opportunities (with AccountId, ContactId, OwnerId, and RecordTypeId resolved), Custom Objects (post-schema validation), Activity history (Tasks, Events, EmailMessages via Bulk API 2.0 with chunking and exponential backoff), Cases (if Service Cloud included), then Help Center articles (final phase, separate API job). Each phase emits a row-count reconciliation report before the next begins. We run Zendesk Help Center export and Support API export in separate jobs against their respective rate limit buckets.
Cutover, parallel run, and handoff
We freeze Zendesk writes during cutover, run a final delta migration of any records modified during the migration window, then enable Salesforce as the system of record. We run a parallel-read period of 24-48 hours where both systems are accessible so the support and sales teams can validate data before Zendesk is decommissioned. We deliver the automation inventory (Zendesk triggers, automations, macros, and Help Center sections) to the customer's admin team for rebuild in Salesforce Flow, Salesforce Knowledge, and Omni-Channel. We support a one-week hypercare window for reconciliation issues. We do not rebuild Zendesk workflows as Salesforce Flow inside the migration scope.
Platform deep dives
CRM and Deals for Zendesk
Source
Strengths
Weaknesses
Salesforce Sales Cloud
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 3 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 CRM and Deals for Zendesk and Salesforce Sales Cloud.
Object compatibility
3 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
CRM and Deals for Zendesk: 200 req/min (Team) to 2,500 req/min (Enterprise Plus) — account-level, shared across all integrations and agents.
Data volume sensitivity
CRM and Deals for Zendesk exposes a bulk API — large-volume migrations stream efficiently.
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 CRM and Deals for Zendesk to Salesforce Sales Cloud migration scoping. Not seeing yours? Book a call.
Walk through your CRM and Deals for Zendesk to Salesforce Sales Cloud migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave CRM and Deals for Zendesk
Other ways to arrive at Salesforce Sales Cloud
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.