CRM migration
Field-level mapping, validation, and rollback between Referrizer and Salesforce Sales Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Sales Cloud.
Referrizer
Source
Salesforce Sales Cloud
Destination
Compatibility
7 of 14
objects map 1:1 between Referrizer and Salesforce Sales Cloud.
Complexity
BStandard
Timeline
4-6 weeks
Overview
Moving from Referrizer to Salesforce Sales Cloud is a platform migration that combines a flat-file export from a marketing-focused CRM with a structured import into an enterprise CRM built for scale. Referrizer lacks a bulk export API, so we automate CSV generation through its paginated endpoints (100 records per page) and stitch pages together before transformation. Loyalty point balances, which Referrizer stores as numeric custom fields on Contact rather than as a distinct object, remap to Salesforce custom fields on Contact or Account. Smart Inbox conversations are not accessible via the Referrizer API and cannot be migrated; we disclose this loss during scoping and confirm whether message history is business-critical. Multi-location accounts require explicit location-level scoping during extraction to prevent cross-contamination between business locations. Workflows, automated campaigns, and loyalty programs do not migrate as code; we deliver a written inventory of these for the customer's admin to rebuild in Salesforce Flow.
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 Referrizer 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.
Referrizer
Contact
Salesforce Sales Cloud
Lead or Contact (split required)
1:manyReferrizer Contacts with referral source, lifecycle stage labels, or engagement scores map to Salesforce Lead for unqualified prospects and Contact for qualified or active customers. We compute the split using Referrizer label assignments (referral, new, returning, VIP) as the split criteria, with the customer defining the threshold during scoping. Original label assignments preserve as a custom multi-select picklist ref_labels__c on both Lead and Contact for audit and reporting continuity.
Referrizer
Contact (multi-location)
Salesforce Sales Cloud
Account
1:manyReferrizer multi-location contacts scope by location ID during extraction to prevent cross-contamination. Each distinct Referrizer location maps to a Salesforce Account representing the business location. Contact records attach to the Account corresponding to their location assignment. Location metadata (location name, address, phone) migrates to Account fields. Accounts are created before Contact import so that AccountId Lookup is satisfied at insert time.
Referrizer
Custom Fields
Salesforce Sales Cloud
Custom Fields
1:1Referrizer custom fields are contact-level key-value properties enumerated via GET /contacts before migration. We inspect the full custom field schema to capture field names, data types, and values. Text fields map to Salesforce Text fields, numeric fields to Number, date fields to Date, and checkbox fields to Checkbox. Custom field API names from Referrizer translate to Salesforce __c field names with the original label preserved in the field-level description for admin reference.
Referrizer
Pipeline / Stage
Salesforce Sales Cloud
Record Type + Sales Process
lossyReferrizer pipeline stages map to Salesforce Sales Processes and Record Types on Opportunity. We capture all stage names, order, and any custom stage probability values during extraction and configure equivalent stage values in Salesforce before Opportunity import. Stage probability percentages round to the nearest Salesforce-allowed integer.
Referrizer
Campaign (Regular and Automated)
Salesforce Sales Cloud
Campaign
1:1Referrizer campaign records (Regular and Automated modes) map to Salesforce Campaign. Campaign name, type, status, and start/end dates migrate directly. Automated campaign re-entry configuration is documented as a Salesforce Campaign Influence or Journey Builder note for the customer's admin to rebuild in Salesforce Marketing Cloud if relevant. Campaign member associations (which contacts received which campaign) migrate to CampaignMember records linked to the converted Lead or Contact.
Referrizer
Loyalty Points
Salesforce Sales Cloud
Custom Number Field
lossyReferrizer stores loyalty point balances as numeric custom fields on Contact records rather than as a distinct object. We flag these fields during schema enumeration, separate them from standard contact properties during transformation, and remap them to a Salesforce custom Number field loyalty_points__c on Contact (or Account if the customer prefers location-level loyalty). Point balance history is not available in Referrizer; only the current balance migrates.
Referrizer
Offer
Salesforce Sales Cloud
Opportunity or Custom Object
lossyReferrizer offers (promotional codes, reward structures, referral link associations) map to Salesforce Opportunity with custom fields for offer_code__c, reward_type__c, and referral_link__c if the customer uses Opportunities to track promotional campaigns. Alternatively, offers migrate to a custom Offer object with lookup to Account or Contact. The customer selects the target model during scoping based on their Salesforce data model.
Referrizer
Review Request
Salesforce Sales Cloud
Campaign or Case
lossyReferrizer review request history (which contacts received requests, when, and to which platform) migrates as activity records or Campaign Member status entries. We export review request logs as Salesforce Campaign Members with Member Status indicating the platform (Google, Yelp, Facebook) and the request date. If the customer wants review tracking as cases, review requests map to Salesforce Case records with custom fields for platform and status.
Referrizer
Label / Segment
Salesforce Sales Cloud
Multi-Select Picklist
lossyReferrizer labels assigned to contacts (segmentation tags) migrate to Salesforce multi-select picklist fields on Contact. We capture the full label vocabulary during extraction and configure the picklist values in Salesforce before migration. If the customer uses labels for marketing segmentation, we recommend mapping to Salesforce Topics with TopicAssignment records as a scalable alternative.
Referrizer
Engagement: Email
Salesforce Sales Cloud
EmailMessage + Task
1:1Referrizer email engagement records (sent, delivered, opened, clicked) available via the Reports API migrate to Salesforce EmailMessage records linked to Tasks on the Contact timeline. Only campaign-level email metrics are accessible; individual email body content is not guaranteed. We confirm email content availability during extraction and note gaps in the reconciliation report.
Referrizer
Engagement: Call and Meeting
Salesforce Sales Cloud
Task (TaskSubtype = Call) and Event
1:1Referrizer activity feed events (call recordings, meeting logs, UTM tracking, link clicks) migrate to Salesforce Task and Event records. Calls map to Task with TaskSubtype=Call and CallDurationInSeconds preserved. Meetings map to Event with StartDateTime, EndDateTime, and Location preserved. Activity timestamps migrate as ActivityDate to preserve timeline ordering.
Referrizer
Engagement: Note
Salesforce Sales Cloud
Note
1:1Referrizer notes attached to contacts migrate to Salesforce Note records linked via ContentDocumentLink to the parent Contact or Account. Note body migrates as rich text with any embedded images preserved as separate ContentDocument records. Note ownership resolves by matching the Referrizer creator user to a Salesforce User by email.
Referrizer
User / Team Member
Salesforce Sales Cloud
User
1:1Referrizer team members and role assignments map to Salesforce User records. We extract user name and email from Referrizer and resolve by email match against the destination org's User table. Any Referrizer user without a matching Salesforce User enters a reconciliation queue for the customer's admin to provision before record import resumes. Role-based permission structures do not migrate as Referrizer roles are platform-specific.
Referrizer
Location
Salesforce Sales Cloud
Account (location-scoped)
1:1Referrizer locations (multi-location business accounts) map to Salesforce Account records with a custom field location_id__c carrying the Referrizer location identifier. Contact records scope to their parent location Account during extraction to ensure no cross-contamination. If the customer needs to track parent-company versus location separately, we recommend a separate Location__c custom object with Account lookup.
| Referrizer | Salesforce Sales Cloud | Compatibility | |
|---|---|---|---|
| Contact | Lead or Contact (split required)1:many | Fully supported | |
| Contact (multi-location) | Account1:many | Fully supported | |
| Custom Fields | Custom Fields1:1 | Mapping required | |
| Pipeline / Stage | Record Type + Sales Processlossy | Fully supported | |
| Campaign (Regular and Automated) | Campaign1:1 | Fully supported | |
| Loyalty Points | Custom Number Fieldlossy | Fully supported | |
| Offer | Opportunity or Custom Objectlossy | Fully supported | |
| Review Request | Campaign or Caselossy | Fully supported | |
| Label / Segment | Multi-Select Picklistlossy | Fully supported | |
| Engagement: Email | EmailMessage + Task1:1 | Fully supported | |
| Engagement: Call and Meeting | Task (TaskSubtype = Call) and Event1:1 | Fully supported | |
| Engagement: Note | Note1:1 | Fully supported | |
| User / Team Member | User1:1 | Fully supported | |
| Location | Account (location-scoped)1: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.
Referrizer gotchas
No bulk export API — migration relies on Zapier or CSV
Smart Inbox conversations are not accessible via API
Loyalty points stored as contact properties, not a distinct object
Rate limits not publicly documented
Multi-location scoping required to avoid cross-contamination
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 location scoping
We audit the Referrizer account across contact volume, custom field schema (via sample introspection), pipeline stages, campaign records, loyalty point fields, review request logs, label vocabulary, and user accounts. For multi-location accounts, we enumerate all location IDs and contact counts per location. We pair this with a Salesforce edition assessment: Essentials ($25/user) covers basic sales CRM; Professional ($80/user) enables custom objects, Flow, and multiple Sales Processes; Enterprise ($165/user) adds record-triggered Flow at scale. The discovery output is a written migration scope with object mapping, location list, and Salesforce edition recommendation.
Paginated extraction and data stitching
We automate CSV generation via the Referrizer paginated REST API (100 records per page) iterating through all pages sequentially for each location. We stitch pages together, validate row counts against Referrizer UI totals, and separate loyalty point fields from standard contact fields during a pre-transform audit. Smart Inbox data is flagged as unavailable; we confirm whether the customer has manually exported it from the UI. The extraction output is a deduplicated CSV per object per location, ready for transformation.
Schema design in Salesforce Sandbox
We deploy the destination schema into a Salesforce Sandbox (Full Copy or Partial Copy) via metadata API or change set. This includes custom fields for loyalty points, referral labels, review request status, and any offer-related fields; Record Types and Sales Processes for pipeline stages; and Page Layouts per Record Type. The customer reconciles record counts, spot-checks mapped fields, and signs off the schema before production migration begins.
Owner and user reconciliation
We extract every Referrizer user referenced on Contact, Campaign, and Engagement records and match by email against the Salesforce destination org's User table. Any Referrizer user without a matching Salesforce User enters a reconciliation queue for the customer's admin to provision before record import resumes. User provisioning is validated before the production migration begins because OwnerId references are required on most standard Salesforce objects.
Production migration in dependency order
We run production migration in record-dependency order: Users (manually provisioned, validated), Accounts (from Referrizer locations and companies), Contacts (with AccountId and Lead/Contact split applied), Leads (for unqualified prospects), Campaigns (with campaign member associations), Opportunities (with pipeline Record Type and stage resolved), Activity history (Tasks, Events, EmailMessages via Salesforce Bulk API 2.0 with chunking and parent-record lookup), Custom Fields (mapped loyalty points and referral labels), and Labels as multi-select picklist values. Each phase emits a row-count reconciliation report before the next phase begins.
Cutover, delta sync, and automation rebuild handoff
We freeze Referrizer writes during cutover, run a final delta migration of records modified during the migration window, then enable Salesforce as the system of record. We deliver the Automation Inventory document listing every Referrizer automated campaign and loyalty program configuration requiring rebuild in Salesforce Flow or a loyalty app from the AppExchange. We support a one-week hypercare window for reconciliation issues. We do not rebuild Referrizer automations or loyalty programs as Salesforce Flow inside the migration scope; that is a separate engagement.
Platform deep dives
Referrizer
Source
Strengths
Weaknesses
Salesforce Sales Cloud
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM 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 Referrizer and Salesforce Sales Cloud.
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
Referrizer: Not publicly documented; API returns 429 TOO_MANY_REQUESTS on overages.
Data volume sensitivity
Referrizer 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 Referrizer to Salesforce Sales Cloud migration scoping. Not seeing yours? Book a call.
Walk through your Referrizer 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 Referrizer
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.