CRM migration
Field-level mapping, validation, and rollback between SalesPro CRM and Nutshell. We move data and schema; workflows are rebuilt natively in Nutshell.
SalesPro CRM
Source
Nutshell
Destination
Compatibility
5 of 8
objects map 1:1 between SalesPro CRM and Nutshell.
Complexity
BStandard
Timeline
2-4 weeks
Overview
Moving from SalesPro CRM to Nutshell is a structural migration for teams leaving a flat-rate platform built around hospitality and event-space sales workflows. SalesPro organizes data around Contacts, Companies, Events, and BEO (Banquet Event Order) records with a live People Tracker dashboard, but its API is entirely webhook-based with no bulk export endpoint, which constrains how we retrieve data. Nutshell uses a People-to-Company-to-Deal object model with a visual pipeline builder, unlimited contacts on all tiers, and a native Import2 partnership that handles CSV ingest. We request a full data export from SalesPro on the customer's behalf, transform BEO records into Nutshell Activities with custom fields, and import in dependency order so that Company lookups are resolved before Contact inserts. Workflows, automations, and the People Tracker dashboard do not migrate; we deliver a written inventory of these for the customer's admin to rebuild in Nutshell's automation layer.
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 SalesPro CRM object lands in Nutshell, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
SalesPro CRM
Contact
Nutshell
Person
1:1SalesPro Contact records map directly to Nutshell Person. We extract name fields, email address, phone number, company association (via the Company foreign key), and any permission-based sharing flags. The Contact-to-Company lookup resolves to a Nutshell Company record that must be created first in the import sequence. Null spouse fields (a known SalesPro bug where the spouse field displays even when empty) are stripped during transformation to avoid spurious data in Nutshell Person records.
SalesPro CRM
Company
Nutshell
Company
1:1SalesPro Company records map to Nutshell Company. The HubSpot-sourced salespro_crm Company name becomes the Nutshell Company name, and the domain or website field maps to Company website. Nutshell Company records are imported before Person records so that the Company lookup on Person is satisfied at the moment of insert. Any SalesPro Company without a domain or name becomes a placeholder Company record that the customer reconciles post-migration.
SalesPro CRM
Event
Nutshell
Activity
1:1SalesPro Event records map to Nutshell Activity. We preserve start and end timestamps, location, group details, and event description. The Contact association (via the SalesPro event-to-contact linkage) migrates as an Activity linked to the resolved Nutshell Person. If SalesPro Events reference BEO records, we preserve the BEO identifier in a custom Activity field for reconstruction against the BEO custom object mapping.
SalesPro CRM
BEO (Banquet Event Order)
Nutshell
Custom Fields on Activity
1:manySalesPro BEO records are derived outputs generated from Event data, containing cost calculations, timeline specifications, and event signing data. Nutshell has no native BEO object, so we reconstruct BEO data as custom fields on the corresponding Nutshell Activity. Cost line items map to custom currency fields; timeline specs map to custom date and text fields; signing data (signer name, timestamp, spouse field if valid) maps to custom fields on the Activity. This reconstruction requires the Event-to-BEO linkage to be intact at export time.
SalesPro CRM
Task
Nutshell
Task
1:1SalesPro Task records map to Nutshell Task with assignee (via email-to-User resolution), due date, description, and completion status preserved. Email reminder flags migrate as Nutshell Task notification settings. Task assignment resolves HubSpot owner IDs to Nutshell User records by email match, with unresolved owners placed in a reconciliation queue for the customer's admin to provision before record import.
SalesPro CRM
Milestone
Nutshell
Custom Fields on Deal or Task
lossySalesPro custom milestone definitions tied to sales cycles or goal-based scenarios map to Nutshell custom fields on the relevant Deal. We ask the customer during scoping which milestones are pipeline-level (mapped as Deal custom fields) versus task-level (mapped as Task custom fields). Milestone ordering and relative stage position are preserved as picklist or integer values in the custom field.
SalesPro CRM
Pipeline Stage
Nutshell
Pipeline Stage
lossySalesPro pipeline and stage configurations (tier-dependent on SalesPro) map to Nutshell Pipeline stages. We extract stage names and relative ordering from SalesPro, then configure the corresponding Nutshell Pipeline with matching stage labels. If SalesPro stages use custom colors or probabilities, we document these for manual configuration in Nutshell's visual pipeline builder post-migration.
SalesPro CRM
User/Team Member
Nutshell
User
1:1SalesPro Users mapped to Contacts, Tasks, and Events by email address resolve to Nutshell User records. We extract the full user list from SalesPro, match by email against Nutshell's provisioned users, and hold any unmatched owners in a reconciliation queue. Owner reassignment during migration requires the customer to provision missing Nutshell users before the Person and Activity imports run, since OwnerId references are required for Activity assignment.
| SalesPro CRM | Nutshell | Compatibility | |
|---|---|---|---|
| Contact | Person1:1 | Fully supported | |
| Company | Company1:1 | Fully supported | |
| Event | Activity1:1 | Fully supported | |
| BEO (Banquet Event Order) | Custom Fields on Activity1:many | Fully supported | |
| Task | Task1:1 | Fully supported | |
| Milestone | Custom Fields on Deal or Tasklossy | Fully supported | |
| Pipeline Stage | Pipeline Stagelossy | Fully supported | |
| User/Team Member | User1: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.
SalesPro CRM gotchas
Webhook-only API limits bulk export capability
BEO records depend on Event linkage
Signature field displays spouse field incorrectly
Flat-rate tier caps user count
Nutshell gotchas
Contact tier limits enforced on import
No bulk API endpoint requires paginated extraction
Email sequences not exportable via API
Foundation plan disables key sales features
Pair-specific challenges
Migration approach
Discovery and vendor data export request
We audit the SalesPro account for record counts (Contacts, Companies, Events, BEOs, Tasks, Milestones), active pipeline stages, user count and tier, and the presence of any archived or deleted records. We simultaneously initiate a formal data export request to SalesPro's vendor on the customer's behalf, explaining that the export is needed for a CRM migration to Nutshell. We set a 5-7 business day expectation for export delivery and align the migration timeline accordingly.
Data intake and transformation design
Once the SalesPro data export arrives (typically as a structured CSV or JSON file), we ingest it into a staging environment and run a data quality audit. We identify orphaned Events (Events without associated BEOs), spurious spouse fields, duplicate records, and missing Company associations on Contacts. We design the transformation rules: BEO records become custom fields on Nutshell Activities; Milestones map to custom fields on Deals or Tasks per the customer's scoping decision; stage names map to Nutshell Pipeline stages. We define the import order (Companies, People, Activities, Tasks) and document any records requiring manual reconciliation.
Nutshell schema configuration
We configure the Nutshell destination: provisioning the Pipeline with stages matching the SalesPro pipeline, creating custom fields on Activity for BEO cost data and timeline specs, creating custom fields on Deal for milestone tracking, and setting up any required custom fields on Person for signing data. We configure these in Nutshell's field management UI before any data import begins so that the CSV column headers match Nutshell's field labels exactly. Per-pipeline custom fields are available from Nutshell Foundation tier ($16/user/mo) with no additional charge.
Owner and user reconciliation
We extract every distinct SalesPro user referenced on Contacts, Events, and Tasks and match by email against the Nutshell destination account's User list. Users without a matching Nutshell account go to a reconciliation queue. The customer's Nutshell admin provisions any missing users (active or inactive depending on whether the original SalesPro user is still with the team) before record import begins. This step gates the Activity and Task imports because OwnerId references must resolve at insert time.
Staged import in dependency order
We run the migration in staged CSV imports using Nutshell's Import2 tooling or direct API ingest: first Companies (to satisfy the Company lookup on Person), then People (with Company field populated from the resolved Company records), then Activities (with BEO custom fields populated from the reconstructed BEO data), then Tasks. Each stage emits a row-count reconciliation report before the next stage begins. We validate 25-50 records per stage against the source SalesPro data and correct any mapping errors before proceeding.
Cutover, delta sync, and automation inventory handoff
We freeze SalesPro writes during the cutover window, run a final delta migration of any records modified during the migration process, then mark Nutshell as the system of record. We deliver a written inventory of SalesPro Workflows, the People Tracker dashboard configuration, and any event-signing automations that require rebuilding in Nutshell's automation layer. We support a one-week post-cutover window for reconciliation of any records that were missed or mapped incorrectly. We do not rebuild SalesPro automations in Nutshell as part of the standard migration scope.
Platform deep dives
SalesPro CRM
Source
Strengths
Weaknesses
Nutshell
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 SalesPro CRM and Nutshell.
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
SalesPro CRM: Not publicly documented.
Data volume sensitivity
SalesPro CRM 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 SalesPro CRM to Nutshell migration scoping. Not seeing yours? Book a call.
Walk through your SalesPro CRM to Nutshell migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave SalesPro CRM
Other ways to arrive at Nutshell
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.