CRM migration
Field-level mapping, validation, and rollback between OneHash CRM and Nutshell. We move data and schema; workflows are rebuilt natively in Nutshell.
OneHash CRM
Source
Nutshell
Destination
Compatibility
7 of 10
objects map 1:1 between OneHash CRM and Nutshell.
Complexity
BStandard
Timeline
2-4 weeks
Overview
Moving from OneHash CRM to Nutshell is a structural simplification, not a straightforward record copy. OneHash organizes business data around ERPNext-style DocTypes (Leads, Contacts, Opportunities, Quotations, Sales Orders, Customers, Items) with parallel ERP objects for Employees, Projects, and Chart of Accounts. Nutshell uses a streamlined SMB-focused data model: People, Companies, Deals, Activities, and Tasks. We discover every active DocType and its custom field definitions via pre-migration schema introspection, map OneHash's multi-object relationships to Nutshell's flatter structure, and normalize INR-denominated amounts during import. Workflows and automations built in OneHash do not migrate; we deliver a written inventory for the customer's admin to rebuild in Nutshell. Custom DocType-level fields require a schema discovery pass because OneHash does not publish a public field registry.
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 OneHash 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.
OneHash CRM
Lead
Nutshell
Person
1:1OneHash Leads map directly to Nutshell People records with status set to lead. We preserve lead source, lead status, and conversion timestamp. If the Lead was converted to a Contact in OneHash, we migrate the Contact instead and drop the original Lead record to avoid duplication. The lead_score custom property (if present) migrates to a Nutshell custom numeric field on People.
OneHash CRM
Contact
Nutshell
Person
1:1OneHash Contacts map to Nutshell People with full name, email, phone, and address fields preserved. The organization linkage (Contact's link to Customer DocType) resolves to the Nutshell Company lookup after the Company import phase. Nutshell People do not have a separate Contact object, so the distinction between primary and secondary contacts within OneHash is preserved via a custom role field.
OneHash CRM
Customer
Nutshell
Company
1:1OneHash Customer records (organization-level accounts) map to Nutshell Company. We preserve customer name, website, billing address, and shipping address. The customer territory and industry custom fields (if present in the DocType) migrate to Nutshell custom fields on Company. Company is imported before People so that the Company lookup on People is satisfied at insert time.
OneHash CRM
Opportunity
Nutshell
Deal
1:1OneHash Opportunities map to Nutshell Deals. The opportunity amount in INR is normalized to USD using the customer's specified exchange rate and stored as USD in Nutshell. Pipeline stage names from OneHash map to Nutshell Deal stage values via a stage-mapping table defined during scoping. Probability and expected close date migrate directly.
OneHash CRM
Quotation
Nutshell
Quote
1:1OneHash Quotations carry line items linked to Items DocType. We migrate quotation header fields (quotation number, date, party, currency, terms) and create a Nutshell Quote record. Quotation line items map to Quote line items with product name, quantity, rate, and amount. Tax templates from OneHash are noted as a text field because Nutshell Quotes do not have a native tax template engine.
OneHash CRM
Sales Order
Nutshell
Deal (status = Won)
lossyOneHash Sales Orders reference both Customer and Items and carry delivery and billing status. We treat closed-won Sales Orders as Won Deals in Nutshell, preserving the order number and amount. The line item rows map to the Deal as a note attachment listing products and quantities, because Nutshell Deals do not support line-item structures. Open Sales Orders are migrated as active Deals with the order number stored in a custom field.
OneHash CRM
Item
Nutshell
Product (configuration required)
1:1OneHash Items (product and service definitions) map to Nutshell Products. We migrate item name, item code, description, standard rate, and unit of measure. OneHash allows custom fields per Item DocType; we pre-discover these during schema discovery and create matching custom fields on Nutshell Product. Item stock data (if present) is noted but does not migrate because Nutshell does not have native inventory management.
OneHash CRM
Employee
Nutshell
Nutshell User
1:1OneHash Employee records (designation, department, email) map to Nutshell User provisioning. We extract the employee email and map designation to Nutshell role (Admin or Standard). Salary structure and compensation fields do not migrate because Nutshell is a sales CRM, not an HR system. The customer's admin provisions the actual Nutshell users after we deliver the employee-to-user mapping list.
OneHash CRM
Project
Nutshell
Task (custom grouping)
lossyOneHash Projects with task hierarchies migrate to Nutshell as a grouped task structure. The project name becomes a Nutshell Activity or a custom field grouping. Individual project tasks migrate as Nutshell Tasks with assignees, due dates, and status preserved. Time tracking entries from OneHash are migrated as task notes with duration. Open vs. completed status carries over directly.
OneHash CRM
Custom DocType Field
Nutshell
Custom Field
lossyOneHash allows unlimited custom fields per DocType via ERPNext's Customize Form tool. We run a pre-migration discovery pass that introspects each active DocType's custom field definitions via the API before mapping. Custom fields that map to People, Companies, Deals, or Products in Nutshell are created as typed custom fields during the schema phase. Custom fields that reference unsupported ERPNext objects are flagged for the customer's admin to handle post-migration.
| OneHash CRM | Nutshell | Compatibility | |
|---|---|---|---|
| Lead | Person1:1 | Fully supported | |
| Contact | Person1:1 | Fully supported | |
| Customer | Company1:1 | Fully supported | |
| Opportunity | Deal1:1 | Fully supported | |
| Quotation | Quote1:1 | Fully supported | |
| Sales Order | Deal (status = Won)lossy | Fully supported | |
| Item | Product (configuration required)1:1 | Fully supported | |
| Employee | Nutshell User1:1 | Fully supported | |
| Project | Task (custom grouping)lossy | Fully supported | |
| Custom DocType Field | Custom Fieldlossy | 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.
OneHash CRM gotchas
OneHash is a fork of ERPNext with Indian-market pricing
Annual billing is mandatory for paid plans above the free tier
No publicly documented API rate limits or bulk export endpoints
Custom Fields are DocType-specific and require schema discovery
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
Schema discovery and scoping
We run a pre-migration discovery pass against the OneHash API, introspecting every active DocType for standard fields, custom fields, link fields, and table fields. This builds the complete field manifest that becomes the export specification. In parallel, we audit the Nutshell destination tenant for existing custom field definitions and object structures. The discovery output is a written scope document with the object mapping table, custom field mapping, and INR-to-USD conversion rate confirmation from the customer.
DocType field mapping and schema deployment
We map every discovered OneHash field to a Nutshell field type. Standard fields (name, email, phone, address, amount, date) map directly. Custom fields are created in Nutshell as typed custom fields (text, number, date, picklist) during this phase. Link fields (e.g., Contact-to-Customer) become Nutshell lookups after the target object is imported. Table fields (e.g., Quotation Item rows) are flattened to comma-separated values or mapped to Nutshell Quote line items depending on the target object.
Trial migration and data quality assessment
We run a trial migration using a subset of records (typically the 500 most recently modified records per object) to validate the mapping. The customer's team spot-checks migrated records against the OneHash source for field accuracy, lookup resolution, and currency normalization. We correct any mapping errors and refine the stage-mapping table for Opportunities-to-Deals. Data quality issues (duplicate emails, missing required fields, orphaned lookups) are flagged with a remediation action per record.
Production migration in dependency order
We run production migration in record-dependency order: Companies (from OneHash Customer), People (from OneHash Contact and Lead with status split), Deals (from OneHash Opportunity with INR-to-USD conversion applied), Products (from OneHash Item), Quotes (from OneHash Quotation with line items), Sales Orders (as Won or active Deals), Projects (as grouped Tasks), and Custom fields (per DocType discovery results). Each phase emits a row-count reconciliation report before the next phase begins.
Cutover and automation inventory handoff
We freeze OneHash writes during cutover, run a final delta migration of any records modified during the migration window, then enable Nutshell as the system of record. We deliver the workflow and automation inventory document to the customer's admin team. We do not rebuild OneHash workflows as Nutshell Workflows inside the migration scope; that is a separate engagement or an internal admin task. We support a one-week hypercare window where we resolve any reconciliation issues raised by the customer's team.
Platform deep dives
OneHash CRM
Source
Strengths
Weaknesses
Nutshell
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 OneHash CRM and Nutshell.
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
OneHash CRM: Not publicly documented — discovered dynamically during migration.
Data volume sensitivity
OneHash 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 OneHash CRM to Nutshell migration scoping. Not seeing yours? Book a call.
Walk through your OneHash 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 OneHash 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.