CRM migration
Field-level mapping, validation, and rollback between Smokeball and Nutshell. We move data and schema; workflows are rebuilt natively in Nutshell.
Smokeball
Source
Nutshell
Destination
Compatibility
11 of 12
objects map 1:1 between Smokeball and Nutshell.
Complexity
BStandard
Timeline
48–72 hours
Overview
Smokeball and Nutshell serve fundamentally different workflows — Smokeball organizes around matters, billing, and legal document automation, while Nutshell organizes around accounts, deals, and sales pipelines. This migration carries contacts, companies, activities, and any deal-like records from Smokeball into Nutshell's account-person-lead-deal model. Custom fields migrate as Nutshell custom fields on the corresponding record type. Workflows, document templates, billing data, and trust accounting records do not have equivalents in Nutshell and must be rebuilt or left behind. FlitStack AI uses Nutshell's JSON-RPC API with Basic auth (API token) to write records in dependency order — accounts first, then people, then leads and deals, then activities — preserving original create dates and owner assignments via email matching. A delta-pickup window captures any records modified during the cutover window to ensure Nutshell reflects the final state of Smokeball at go-live. The migration process requires careful sequencing because Nutshell enforces referential integrity — accounts must exist before people can link to them, and activities require parent records to exist first. Custom fields must be created via Nutshell's custom fields API before migration data can populate them, adding a preparation step for any non-standard fields.
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 Smokeball 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.
Smokeball
Contact
Nutshell
Person
1:1Smokeball contacts map directly to Nutshell people. Each person record carries name, email, phone, address, and salutation fields. Primary company association maps to the Nutshell account lookup on the person record. Contacts without a linked company receive a default 'Unassigned' account in Nutshell.
Smokeball
Contact (staff member)
Nutshell
User
1:1Smokeball staff records include name, email, status, and salutation. FlitStack resolves each staff email against Nutshell users to assign OwnerId on migrated records. Inactive Smokeball staff become inactive Nutshell users or are omitted from the user list — this is a configuration decision made before migration runs.
Smokeball
Company
Nutshell
Account
1:1Smokeball companies map 1:1 to Nutshell accounts. Company name, domain/website, industry, phone, and address fields migrate directly. Smokeball parent-company hierarchies map to Nutshell's parent-account field. Multi-contact companies in Smokeball (N:N relationships) land as a single Nutshell account with all linked people associated.
Smokeball
Matter
Nutshell
Custom Field + Account
1:1Smokeball matters have no direct Nutshell equivalent — Nutshell has no concept of legal cases or matter types. We preserve matter description, matter number, matter type, and key dates as custom fields on the linked Nutshell account for reference. Matter-specific data like parties, opposing counsel, and court details are preserved in a long-text custom field.
Smokeball
Matter Party / Client
Nutshell
Person (linked to Account)
many:1Smokeball matter parties (Initiating Party, Responding Party, Client, Other Side) are merged into the Nutshell person record as a custom field (Party_Role__c) attached to the account representing the matter. Each party role is stored as a delimited value so firms can reconstruct party structure from the custom field after migration.
Smokeball
Activity (Task / Email / Note)
Nutshell
Activity
1:1Smokeball activity records — tasks, document work, memos, emails — migrate as Nutshell activities with original timestamps and owners preserved. Activity type maps to Nutshell's activity kind field. Each activity links to its parent person or account record. Bulk activity imports run after persons and accounts are established.
Smokeball
Time Entry
Nutshell
Note (on Account or Person)
1:1Smokeball time entries map to Nutshell notes because Nutshell has no time-tracking module. Each time entry is written as a note with type='Time Entry', the duration in the note body, and a reference to the linked matter/account. Billable/non-billable flag is preserved as a custom field on the note. Time-entry data must be reconciled against separate billing software.
Smokeball
Document / File
Nutshell
File (via attachment to Person/Account)
1:1Smokeball documents attach to matters and contacts. FlitStack re-uploads document files to Nutshell, attaching each to the corresponding person or account record. File names and original upload dates are preserved in the Nutshell file metadata. Large document volumes increase migration time due to file-reupload overhead.
Smokeball
Custom Field (on Contact/Company/Matter)
Nutshell
Custom Field (on Person/Account/Lead)
1:1Smokeball custom fields on contacts, companies, and matters become Nutshell custom fields on the corresponding record type (Person, Account, or Lead). Nutshell supports custom field types including text, number, date, dropdown, and checkbox. FlitStack creates the custom fields in Nutshell via its custom fields API before writing the data. Field types are mapped intelligently — a Smokeball dropdown becomes a Nutshell dropdown with the same options.
Smokeball
Workflow
Nutshell
Automation (Nutshell built-in + rebuild required)
1:1Smokeball workflows — automated task series applied to matters — have no Nutshell equivalent. Nutshell offers personal email sequences and lead assignment rules, but not multi-step matter-based workflow automation. FlitStack exports Smokeball workflow definitions as a JSON reference file that your team can use to rebuild logic in Nutshell's automation tools or a third-party integration platform.
Smokeball
Billing / Trust Accounting
Nutshell
No equivalent
1:1Smokeball billing records, trust accounting entries, invoices, and disbursement data do not map to Nutshell because Nutshell has no billing or accounting module. Financial records must be exported from Smokeball and migrated to dedicated accounting software (QuickBooks, Xero, LawPay). FlitStack can export billing data as CSV for import into your accounting platform of choice.
Smokeball
Tag
Nutshell
Tag
1:1Smokeball contact and company tags migrate directly to Nutshell tags on the corresponding person and account records. Tags are preserved as-is — no transformation required. Tags used for segmentation in Smokeball can continue to be used for filtering in Nutshell's list view.
| Smokeball | Nutshell | Compatibility | |
|---|---|---|---|
| Contact | Person1:1 | Fully supported | |
| Contact (staff member) | User1:1 | Fully supported | |
| Company | Account1:1 | Fully supported | |
| Matter | Custom Field + Account1:1 | Fully supported | |
| Matter Party / Client | Person (linked to Account)many:1 | Fully supported | |
| Activity (Task / Email / Note) | Activity1:1 | Fully supported | |
| Time Entry | Note (on Account or Person)1:1 | Fully supported | |
| Document / File | File (via attachment to Person/Account)1:1 | Fully supported | |
| Custom Field (on Contact/Company/Matter) | Custom Field (on Person/Account/Lead)1:1 | Fully supported | |
| Workflow | Automation (Nutshell built-in + rebuild required)1:1 | Fully supported | |
| Billing / Trust Accounting | No equivalent1:1 | Fully supported | |
| Tag | Tag1: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.
Smokeball gotchas
Document upload may not finish before Go Live
Data entry must halt during final LIVE migration cutover
Duplicate contacts are not detected during import
Closed and archived matters migrate after Go Live
Lower pricing tiers strip PDF functionality and auto time
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
Enumerate Smokeball data scope and verify API or CSV export access
FlitStack reviews your Smokeball account to count contacts, companies, matters, activities, documents, and custom fields. If Smokeball partner enrollment is complete, we extract data via the REST API using OAuth 2.0 with the token bucket algorithm (5 req/sec, 5 concurrent burst). If API access is unavailable, we use the Jumpstart CSV export tool as the extraction pathway, which limits document export to manual re-upload. The scope document identifies which Smokeball objects have Nutshell equivalents and which require custom field or no-equivalent handling.
Create Nutshell custom fields before writing data
Nutshell custom fields must exist before records can populate them. FlitStack creates custom fields on Person, Account, and Lead record types via Nutshell's custom fields API — text, number, date, dropdown, and checkbox types are mapped from Smokeball field types. Matter-metadata fields (Matter_Number__c, Matter_Type__c, Matter_Status__c) are created on the Account object. Staff-to-user resolution is prepared: each Smokeball staff email is matched against Nutshell users by email, with unmatched staff flagged for fallback owner assignment.
Migrate in dependency order: Accounts → People → Leads → Activities
Nutshell requires accounts to exist before people can link to them (via the account_id field), and activities require people or accounts to exist first. FlitStack sequences the migration accordingly: (1) Companies → Accounts, (2) Contacts → People (with account_id resolved), (3) Lead records split from contacts where applicable, (4) Activities attached to the correct person or account. Owner assignment is resolved by email match at this stage. Custom field values are written alongside standard fields in the same API call.
Re-upload documents and attach to linked Nutshell records
Smokeball documents are downloaded, organized by their linked contact or matter, and re-uploaded to Nutshell's file storage. Each file is attached to the corresponding Nutshell person or account record. For matters, documents attach to the account record representing the matter's primary client. File metadata (original filename, upload date, file size) is preserved in Nutshell's file record. Large document sets run in parallel batches with retry logic to handle transient upload failures.
Run sample migration with field-level diff, then cut over with delta pickup
A representative slice (typically 100–500 records spanning contacts, companies, matters, and activities) migrates first. FlitStack generates a field-level diff comparing source values against Nutshell field values so you can verify custom field mapping, owner resolution, and activity attachment. After sample sign-off, the full migration runs. A delta-pickup window (typically 24–48 hours) captures any records modified in Smokeball during the cutover. Audit log records every operation; one-click rollback is available if reconciliation fails.
Platform deep dives
Smokeball
Source
Strengths
Weaknesses
Nutshell
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 Smokeball and Nutshell.
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
Smokeball: Not publicly documented.
Data volume sensitivity
Smokeball 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 Smokeball to Nutshell migration scoping. Not seeing yours? Book a call.
Walk through your Smokeball 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 Smokeball
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.