CRM migration
Field-level mapping, validation, and rollback between Oncord and Salesforce Sales Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Sales Cloud.
Oncord
Source
Salesforce Sales Cloud
Destination
Compatibility
8 of 12
objects map 1:1 between Oncord and Salesforce Sales Cloud.
Complexity
BStandard
Timeline
4-6 weeks
Overview
Moving from Oncord to Salesforce Sales Cloud is a migration from a website-builder-first all-in-one platform into a purpose-built CRM, and the difference in platform architecture shapes every decision. Oncord's primary CRM object is the Contact record, with Groups acting as static segmentation lists, Custom Fields extending the schema, and optional Commerce and Marketing modules (billed separately) containing Products, Events, and discount data. There is no publicly documented bulk API endpoint and no formal migration tool, so we extract data through Oncord's CustomFields API component and on-demand account backups, flagging export completeness upfront because it depends on what Oncord's internal systems have stored. We map Contacts directly into Salesforce Contact with any Oncord custom field properties translated to typed Salesforce custom fields, and we create Salesforce Campaigns from Oncord Groups to preserve segmentation history. Automation workflows, web forms, and event registrations do not migrate as functional code; we deliver a written inventory of every active workflow and form for the customer's admin to rebuild in Salesforce Flow or Web-to-Lead. Timeline runs four to ten weeks depending on record volume and whether the Commerce add-on was active.
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 Oncord 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.
Oncord
Contact
Salesforce Sales Cloud
Contact
1:1Oncord Contact records map 1:1 to Salesforce Contact. Standard fields (FirstName, LastName, Email, Phone, MailingAddress) transfer directly. Oncord's activity feed maps to Salesforce's Activity timeline as Tasks and Events. Any Owner assignment on the Contact resolves to a Salesforce User by email match during import. We flag Oncord Contacts with no last name (common in sole-trader records) and flag these for manual review before insert because Salesforce requires LastName on Contact.
Oncord
Group
Salesforce Sales Cloud
Campaign + CampaignMember
1:manyOncord Groups function as static segmentation lists and map to Salesforce Campaign records, with the Group membership preserved as CampaignMember records linked to the corresponding Contact. We use Campaign Type = 'Manual' for migrated Groups. If a Contact belongs to multiple Groups, it appears as multiple CampaignMember records. On Lite plans, filters are restricted to Groups only, which means Lite-tier customers may have extensive Group membership that requires bulk CampaignMember inserts.
Oncord
Custom Fields
Salesforce Sales Cloud
Custom Fields on Contact
lossyOncord CustomFields (text, number, date, dropdown, checkbox, file upload) read via the CustomFields API component map to typed Salesforce custom fields on the Contact object. We pre-create the destination schema in Salesforce before migration, handling type mapping (Oncord text to Salesforce Text, number to Number or Currency, date to Date, dropdown to Picklist or Multi-Select Picklist). File attachment fields on Oncord CustomFields map to Salesforce ContentDocument with ContentDocumentLink to the parent Contact.
Oncord
Products (Commerce add-on)
Salesforce Sales Cloud
Product2 + PricebookEntry
1:1Products are only present if the Commerce add-on ($40/month) was active. We export product name, description, price, SKU, inventory count, product images, and any custom product fields. Each Product becomes a Salesforce Product2 record with a Standard Pricebook entry. Products with multiple price tiers map to multiple PricebookEntry records. Commerce gating is confirmed during scoping; customers on Lite or base-only plans have no product data and that phase is skipped.
Oncord
Events
Salesforce Sales Cloud
Event + Campaign
1:1Oncord Events (part of the Marketing add-on) include event name, date, location, capacity, and an attendee list linked to Contacts. Events map to Salesforce Event records for scheduling data and to a Salesforce Campaign with Type = 'Conference' or 'Webinar' to capture the attendee list as CampaignMember records. We resolve each attendee Contact by email match before creating the CampaignMember. Events without attendees create only the Event record.
Oncord
Discounts and Coupons (Commerce add-on)
Salesforce Sales Cloud
Custom Object: Promotion__c
lossyOncord discount rules, coupon codes, eligibility conditions, and usage limits exist only with the Commerce add-on active. We map these to a custom Salesforce object Promotion__c with fields for code, discount type (percentage vs fixed), discount value, eligibility rules, usage limit, and usage count. If the customer requires Salesforce-native promotion tracking, we scope the custom object creation during discovery; otherwise, we deliver a written schema specification for their admin to create.
Oncord
Web Forms
Salesforce Sales Cloud
Web-to-Lead (or custom object)
lossyOncord web forms grow the contact database and carry custom field-to-property mappings per form. We export form definitions and field mappings, then deliver a written specification for rebuilding in Salesforce Web-to-Lead or a custom form builder. The field-to-contact-property mappings are documented so the customer's admin can configure the equivalent Web-to-Lead field mapping in Salesforce Setup. Form data submissions (the leads themselves) migrate as Contacts.
Oncord
Users / Administrators
Salesforce Sales Cloud
User
1:1Oncord user records (name, email, role) map to Salesforce User records. We extract every distinct user referenced on Contact owner fields and resolve by email match against the Salesforce destination org. Users without an active Salesforce User provision go to a reconciliation queue for the customer's admin to address before record import. Role semantics differ between platforms; Oncord admin roles map to Salesforce System Administrator profile assignments handled by the admin post-migration.
Oncord
Automation Workflows
Salesforce Sales Cloud
(No direct equivalent — documented only)
1:1Oncord marketing automation workflows (triggers, conditions, actions) are documented in a written inventory we deliver to the customer. Workflows do not migrate as code because Oncord's trigger-based automation model differs structurally from Salesforce Flow's record-triggered, scheduled, and screen flow variants. We capture the workflow name, trigger event, condition logic, action sequence, and active/inactive status for each workflow so the customer's admin or a Salesforce partner can rebuild them in Flow.
Oncord
Contact Activity Feed
Salesforce Sales Cloud
Task + Event
1:1Oncord's contact activity feed records timestamps and descriptions of interactions. We map activity entries to Salesforce Task records with ActivityDate set to the original Oncord timestamp and Description carrying the activity body. Phone call activities map to Task with TaskSubtype=Call. Email activities map to Task linked to an EmailMessage record. Each activity's parent Contact resolves by email match before insert.
Oncord
(Email accounts)
Salesforce Sales Cloud
(Not migrated — documented separately)
1:1Oncord email accounts ($5/account/month) are separate from the CRM data and do not migrate into Salesforce as email records. We flag email account count and storage volume during scoping and recommend a strategy for email archival separately from the CRM migration. If email-to-contact threading was active in Oncord, we document the email address associated with each Contact for the customer's admin to configure Salesforce email routing post-migration.
Oncord
Account / Company concept
Salesforce Sales Cloud
Account
1:1Oncord has no native Account or Company object — Contacts are the primary record. However, contacts with shared domain or organizational affiliation can be grouped. We create Salesforce Account records from Oncord Contact organizations identified by shared domain or explicit company name field, then link the related Contacts to those Accounts via AccountId. If no company data exists in Oncord, we create a single Account named 'Imported from Oncord' and link all Contacts to it, flagging this for the customer's admin to split by organization post-migration.
| Oncord | Salesforce Sales Cloud | Compatibility | |
|---|---|---|---|
| Contact | Contact1:1 | Fully supported | |
| Group | Campaign + CampaignMember1:many | Fully supported | |
| Custom Fields | Custom Fields on Contactlossy | Fully supported | |
| Products (Commerce add-on) | Product2 + PricebookEntry1:1 | Fully supported | |
| Events | Event + Campaign1:1 | Mapping required | |
| Discounts and Coupons (Commerce add-on) | Custom Object: Promotion__clossy | Fully supported | |
| Web Forms | Web-to-Lead (or custom object)lossy | Mapping required | |
| Users / Administrators | User1:1 | Mapping required | |
| Automation Workflows | (No direct equivalent — documented only)1:1 | Mapping required | |
| Contact Activity Feed | Task + Event1:1 | Fully supported | |
| (Email accounts) | (Not migrated — documented separately)1:1 | Fully supported | |
| Account / Company concept | Account1: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.
Oncord gotchas
Email accounts are not included in the base subscription
Lite plan restrictions gate most CRM and marketing data
No formal export or migration tooling exists
Commerce and Marketing are optional paid add-ons
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 add-on scoping
We audit the Oncord account across plan tier (Lite, Base, Base + Marketing, Base + Commerce, or Full), active add-on modules, contact volume, Group membership count, custom field definitions and types, and whether any Products, Events, or discount data exist. We extract a sample of Contact records via Oncord's CustomFields API to validate field name and type completeness before designing the Salesforce schema. This phase confirms which modules have data to migrate and which are absent, preventing wasted migration effort on non-existent records.
Schema design and Account resolution strategy
We design the Salesforce destination schema based on what Oncord data exists. Custom fields are pre-created on the Contact object with type-mapped Salesforce field types (Text, Number, Date, Picklist). We design the Account creation strategy: if Oncord Contacts carry company name or shared domain data, we create Accounts from those values; if not, we create a placeholder Account structure and document the split plan for the customer's admin. Products receive Product2 schema with Standard Pricebook entries; Events receive Campaign and Event schema; discount data is scoped as a custom Promotion__c object if required.
Data extraction from Oncord
We extract data through Oncord's CustomFields API component and on-demand account backup. For each module confirmed active (Marketing, Commerce), we run targeted exports: Contacts with all standard and custom fields, Groups with membership lists, Products with SKU and pricing, Events with attendee lists, and discount rules. We validate export row counts against Oncord's own backup manifest where available. Export completeness is flagged as a known limitation because Oncord provides no bulk API documentation guaranteeing field-level fidelity.
Salesforce Sandbox migration and reconciliation
We run a full migration into a Salesforce Sandbox (Full Copy or Partial Copy) using the extracted data at production-like volume. The customer's RevOps lead reconciles record counts (Contacts in, Accounts created, Groups mapped to Campaigns, Products in, Events and attendees in), spot-checks 25-50 records against the Oncord source, and reviews the Account-Contact linkage structure. Mapping corrections and any custom field type adjustments happen in Sandbox before production migration begins.
Owner reconciliation and User provisioning
We extract every distinct Oncord user referenced on Contact records and match by email against the Salesforce destination org's User table. Any Oncord user without a matching Salesforce User goes to a reconciliation queue for the customer's admin to provision. OwnerId references on Contact and other records require resolved User IDs before record insert. This step gates the migration start because Salesforce requires a valid OwnerId on all standard object inserts.
Production migration in dependency order
We run production migration in dependency order: Salesforce Users (validated from Step 5), Accounts (created from Oncord Contact organizations), Contacts (with AccountId resolved and custom fields populated), Groups mapped to Campaigns with CampaignMember records, Products and Pricebook entries (if Commerce active), Events mapped to Campaign and Event records (if Marketing active), Promotion__c records for discount data (if Commerce active), and Contact activity history as Task records. Each phase emits a row-count reconciliation report before the next begins.
Cutover, validation, and workflow handoff
We freeze Oncord 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 deliver the automation workflow inventory document to the customer's admin team for rebuild in Salesforce Flow. We support a one-week hypercare window for reconciliation issues raised by the team. We do not rebuild Oncord workflows as Salesforce Flow inside the migration scope; that is a separate engagement or an internal admin task. Post-migration admin configuration (email routing, page layouts, sales processes, record types) is customer-side work.
Platform deep dives
Oncord
Source
Strengths
Weaknesses
Salesforce Sales Cloud
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 1 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 Oncord and Salesforce Sales Cloud.
Object compatibility
1 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
Oncord: Not publicly documented.
Data volume sensitivity
Oncord 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 Oncord to Salesforce Sales Cloud migration scoping. Not seeing yours? Book a call.
Walk through your Oncord 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 Oncord
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.