CRM migration

Migrate from Corteza CRM to Nutshell

Field-level mapping, validation, and rollback between Corteza CRM and Nutshell. We move data and schema; workflows are rebuilt natively in Nutshell.

Corteza CRM logo

Corteza CRM

Source

Nutshell

Destination

Nutshell logo

Compatibility

80%

8 of 10

objects map 1:1 between Corteza CRM and Nutshell.

Complexity

BStandard

Timeline

2-4 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Corteza CRM to Nutshell is a shift from a self-hosted open-source platform with a flexible module builder to a cloud-native SMB-focused CRM with per-user pricing. Corteza's module-based data model maps to Nutshell's People, Companies, and Deals structure, but custom modules require field-level flattening into custom fields on Nutshell's standard objects. We resolve Corteza's namespace export blocks (orphaned page references to deleted modules) before extraction, preserve workflow definitions as a written inventory for admin rebuild, and use Nutshell's REST API with batch chunking and retry logic for activity history migration. Automations, custom modules-as-objects, and namespace configuration do not migrate as code; we deliver a written schema map for the customer to implement post-migration.

Field-level fidelity

Every standard and custom field arrives verified.

Schema-aware mapping

AI proposes the map; you confirm before any record moves.

Relationships preserved

Parent–child, lookups, and ownership stay linked.

Full activity history

Calls, emails, meetings — with original timestamps.

Attachments & notes

Documents, uploads, and inline notes move with the record.

Why teams make this switch

Two sides of the same decision

Leaving

Corteza CRM logo

Corteza CRM

What's pushing teams away

  • Enterprise support is unclear — despite Enterprise tier branding, there is no documented SLA or dedicated support channel, leaving self-hosted teams without recourse when issues arise.
  • Workflow stability after upgrades is inconsistent — lead conversion automation buttons have been documented as disabled after restore operations, requiring manual re-import of workflow definitions to fix.
  • The platform feels bare for production use — federation is marked experimental and disabled by default, and multiple standard CRM functions still require manual scripts or DB workarounds.
  • Self-hosting carries hidden operational cost — teams need DevOps capacity for deployment, backups, updates, and troubleshooting that SaaS CRMs absorb entirely.

Choosing

Nutshell logo

Nutshell

What's pulling them in

  • Lowest cost entry point among mid-market CRMs—Foundation plan starts at $13/user/month, making it accessible for teams validating CRM fit before committing.
  • Integrated sales automation and email sequencing on Pro plans without requiring a separate email marketing platform, per verified Capterra reviews.
  • Consistently praised for intuitive interface and fast onboarding, with case studies reporting 100% team adoption rates within initial deployment periods.
  • Strong customer support responsiveness cited across G2 reviews, with dedicated support tiers available on Enterprise plans.
  • Native integrations with WhatsApp, Facebook Messenger, Instagram, and Slack reduce reliance on third-party middleware for common communication channels.

Object mapping

How Corteza CRM objects map to Nutshell

Each row shows how a Corteza 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.

Corteza CRM

Account

maps to

Nutshell

Company

1:1
Fully supported

Corteza Account records map to Nutshell Company. Industry classification, address data, and social media URLs transfer to the corresponding Nutshell Company fields. Account-industry and account-type picklist values are mapped to Nutshell's custom field options. We create Companies before any related People or Deal records so that the People-Company relationship is satisfied at insert time.

Corteza CRM

Contact

maps to

Nutshell

Person

1:1
Fully supported

Corteza Contact records map to Nutshell Person with the first name, last name, email, phone, job title, and job level fields transferring directly. The Contact-Account relationship maps to Nutshell's Person-Company link. If the source Contact has no associated Account, we create a placeholder Company record to satisfy Nutshell's relationship model.

Corteza CRM

Lead

maps to

Nutshell

Person (unqualified)

1:1
Fully supported

Corteza Leads map to Nutshell People in an unqualified state. The lead rating and lead source transfer to Nutshell custom fields. We flag converted vs unconverted Leads during migration: converted Leads that follow the Corteza lead-conversion workflow (creating Account, Contact, and Opportunity) map through the standard Account-Contact-Opportunity path above. Unconverted Leads become Nutshell People with a lead_status custom field preserved for segmentation.

Corteza CRM

Opportunity

maps to

Nutshell

Deal

1:1
Fully supported

Corteza Opportunities map to Nutshell Deals with stage, amount, probability, and expected close date transferring directly. The Opportunity-Account relationship maps to the Deal-Company link. OpportunityContactRole records from Corteza become Nutshell People linked to the Deal. Loss reason and win reason custom fields map to Nutshell's loss_reason and notes fields.

Corteza CRM

Campaign

maps to

Nutshell

Campaign (via custom field or tag)

lossy
Fully supported

Corteza Campaigns map to a Nutshell custom object or tag structure. Because Nutshell does not have a native CampaignMember object equivalent, we link Campaign membership to People via a tag or custom multi-select field. Campaign member status (sent, opened, responded) is preserved in a custom field on the Person record. If the customer requires CRM-native campaign reporting, we document the Campaign-to-Deal attribution model as a separate reporting configuration task.

Corteza CRM

Case

maps to

Nutshell

Case

1:1
Fully supported

Corteza Cases map to Nutshell Cases. Status, priority, origin, and resolution fields transfer directly. Case-Account and Case-Contact relationships map to the Nutshell Case-Company and Case-Person links. Case milestones migrate as Case comment entries or a custom timeline field depending on the milestone granularity required.

Corteza CRM

Contract

maps to

Nutshell

Deal (with custom fields)

1:1
Fully supported

Corteza Contract records with line items (ContractLineItem) map to Nutshell Deals with a contract_status custom field and contract terms stored in the Deal description or a custom long-text field. ContractContactRole records link the relevant People to the Deal. If the customer requires a formal contract object, we create a Nutshell custom record type on Deal with fields for contract start date, end date, and renewal terms.

Corteza CRM

Task

maps to

Nutshell

Activity

1:1
Fully supported

Corteza Tasks (standalone or related to any parent record) map to Nutshell Activities linked to the corresponding Person or Company. Task status, due date, assignee, and description transfer directly. We resolve assignee by email against Nutshell User records and hold any unresolved assignees in a reconciliation queue for the customer to provision.

Corteza CRM

Event

maps to

Nutshell

Activity (meeting or call)

1:1
Fully supported

Corteza Events (meetings, calls) map to Nutshell Activities with datetime, duration, and location preserved. Attendee references from Corteza map to Nutshell Person links on the Activity. We set the Activity type to meeting or call based on the Corteza event type field.

Corteza CRM

Custom Module

maps to

Nutshell

Custom fields on standard objects

lossy
Fully supported

Corteza custom modules (created via the low-code module builder) require flattening into Nutshell's standard objects. We audit each custom module during discovery, extract its field definitions and types, and propose a mapping to Nutshell custom fields on the appropriate standard object (Person, Company, or Deal). Custom module relationships are resolved as custom lookup fields or tag-based associations. Nutshell's Foundation and Pro tiers support custom fields; custom record types require Enterprise tier.

Gotchas + challenges

What specifically takes care here

Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.

Corteza CRM logo

Corteza CRM gotchas

High

Namespace export fails on orphaned page references

High

Workflow automation breaks after restore or upgrade

Medium

Field-level security does not cover all access scenarios

Medium

Federation is experimental and not production-ready

Low

No publicly documented API rate limits

Nutshell logo

Nutshell gotchas

High

Contact tier limits enforced on import

Medium

No bulk API endpoint requires paginated extraction

Medium

Email sequences not exportable via API

Medium

Foundation plan disables key sales features

Pair-specific challenges

  • Corteza namespace export fails on orphaned page references

    Corteza's namespace export path explicitly fails when any page in the namespace references a deleted module. This prevents a bulk namespace export from completing and blocks the 'take your entire CRM and move it' migration path. We audit the namespace for orphaned page-module references before attempting export, clean up the broken links, and then proceed so the migration does not stall at the export step. If the namespace is heavily customized or references many deleted modules, we fall back to API-based record extraction rather than namespace export.

  • Workflow automation breaks after restore or upgrade in Corteza

    Corteza's standard CRM workflows — including lead conversion automation buttons — have been documented as disabled or broken after a system restore or upgrade. The source CRM must be in a stable state before migration begins. We capture workflow definitions during the discovery phase as a written inventory and deliver it to the customer so their admin can rebuild the automation logic in Nutshell or a workflow tool post-migration. We do not migrate workflows as code because Cortenza workflow definitions do not map directly to Nutshell's automation model.

  • Custom module field types require flattening for Nutshell

    Corteza's low-code module builder supports field types including Record (cross-module references), complex Select with conditional options, and multi-value fields that have no direct Nutshell equivalent. We audit every custom module during discovery, document each field type, and design a flattening strategy: Record fields become custom lookup fields or tags, complex Selects become multi-select picklists, and multi-value fields become tag arrays on the target Nutshell object. This step adds scoping time but prevents field type mismatches from blocking import.

  • No publicly documented Corteza API rate limits

    Corteza does not publish API rate limit quotas in its public documentation. For bulk migration operations, we cannot pre-configure rate-limit-aware throttling without performing discovery requests against the specific instance. We start with conservative request pacing and monitor for HTTP 429 responses to dynamically adjust throughput. If the source instance has experienced throttling during discovery, we extend the migration timeline accordingly to avoid data loss from rejected requests.

  • Nutshell custom record types require Enterprise tier

    Nutshell's Foundation and Pro tiers do not include custom record types for Deals or People. Teams migrating from Corteza that rely on multiple Deal record types (for example, separate pipelines for products vs services) need to either upgrade to Nutshell Enterprise or consolidate Deal types into a single pipeline with a stage-based or custom field-based segmentation strategy. We confirm the destination Nutshell tier during scoping and flag this constraint before designing the object mapping schema.

Migration approach

Six steps for a successful Corteza CRM to Nutshell data migration

  1. Discovery and source audit

    We audit the source Corteza CRM instance across modules in use, custom module definitions and field types, namespace page structure (including orphaned page references), workflow definitions, active vs inactive records, and API discovery via the Corteza JSON API. We identify any namespace export blockers, custom module field types that require flattening, and workflow definitions that will need a written rebuild inventory. The discovery output is a written migration scope, a source field inventory, and a pre-flight checklist confirming the source instance is in a stable state (no recent restore or upgrade pending).

  2. Schema design and custom field flattening plan

    We design the destination schema in Nutshell. This includes creating custom fields on Person, Company, and Deal for any flattened Corteza custom module data, configuring custom field types (text, number, date, multi-select picklist) to match the source field semantics, and setting up tag structures for association data that does not fit a structured field. If the customer requires multiple Deal record types, we confirm Nutshell tier and either propose a custom field-based workaround (for Pro) or plan the Enterprise custom record type approach. Schema design is documented in a written spec for customer sign-off before any data moves.

  3. Namespace cleanup and data extraction

    We resolve any orphaned page references in the Corteza namespace that block export, then extract data via the Corteza JSON API using the module list as the extraction unit. We run a data quality check on the extracted records: duplicate detection (by email for People, by domain for Companies), required field completeness, and date format normalization. Any records failing quality gates are flagged in a reconciliation report for the customer to address before migration. This step prevents bad data from entering Nutshell.

  4. Sandbox migration and reconciliation

    We run a full migration into a Nutshell trial or sandbox environment using production-like data volume. The customer reviews the migrated records, spot-checks 25-50 random People and Deals against the Corteza source, and signs off the schema and field mapping before production migration begins. Any custom field mapping corrections, tag strategy decisions, or Deal record type consolidation choices happen in this phase. Nutshell's built-in Import2 tool is available as a fallback for simple record types; API-based migration is used for anything requiring relationship resolution or activity history.

  5. Production migration in dependency order

    We run production migration in record-dependency order: Companies (from Corteza Accounts) first, then People (with Company relationship resolved), then Deals (with Company and Person links resolved), then Activities (Tasks and Events via API chunking), then Cases, then custom field data on each standard object. We use Nutshell's REST API with batch chunking, retry logic, and rate-limit monitoring throughout. Each phase emits a row-count reconciliation report before the next phase begins. We freeze Corteza writes during cutover and run a delta migration of any records modified during the migration window.

  6. Cutover, validation, and workflow rebuild handoff

    We enable Nutshell as the system of record after the final delta migration completes. We deliver the custom module flattening map and workflow definition inventory to the customer's admin team with a written guide for rebuilding Corteza workflows in Nutshell or a connected automation tool. We support a one-week hypercare window where we resolve any reconciliation issues raised by the customer's team. We do not rebuild Corteza workflows as Nutshell automations inside the migration scope; that is a separate engagement or an internal admin task.

Platform deep dives

Context on both ends of the pair

Corteza CRM logo

Corteza CRM

Source

Strengths

  • 100% open-source with no per-user, per-contact, or tier-gated feature restrictions on the self-hosted version.
  • Self-hosted deployment gives complete data ownership and sovereignty over where customer data resides.
  • Low-code module builder lets non-developers create custom CRM objects and fields without writing code.
  • API-first design documented via OpenAPI with OIDC authentication for secure integrations.
  • Fine-grained RBAC with field-level read and update permissions for complex internal security policies.

Weaknesses

  • No documented SLA or dedicated enterprise support tier despite Enterprise tier branding — self-hosted teams rely on community forums.
  • Upgrade and restore events can break standard CRM workflow behavior, including lead conversion automation buttons.
  • Federation feature is marked experimental and disabled by default, limiting multi-instance identity management.
  • Self-hosted deployment requires DevOps resources for installation, configuration, backups, and ongoing maintenance.
  • Community-driven support has inconsistent response times compared to vendor-backed SaaS alternatives.
Nutshell logo

Nutshell

Destination

Strengths

  • Simple, intuitive interface with minimal learning curve for sales teams new to CRM
  • Per-seat pricing is transparent and predictable, with annual billing reducing monthly cost
  • Full data export tool available for all account data including backups
  • Open JSON-RPC API allows programmatic access to all core objects
  • Native multichannel engagement (email, SMS, WhatsApp) without third-party add-ons for communication

Weaknesses

  • Reporting and analytics are considered weak, requiring manual Excel exports for detailed analysis
  • No bulk API endpoint—migration requires paginated API reads that must be rate-limited carefully
  • JSON-RPC API is less common than REST, requiring custom integration code compared to standard REST CRMs
  • Add-on costs (Forms, Nutshell IQ, Email Marketing) are per-company charges that stack on top of per-seat pricing
  • Feature restrictions on entry-level plans mean teams often need mid-tier to get basic automation

Complexity grading

How hard is this migration?

Standard CRM migration. 1 of 8 objects need a mapping; the rest are 1:1.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Corteza CRM and Nutshell.

  • Object compatibility

    B

    1 of 8 objects need a mapping; the rest are 1:1.

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    8-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    B

    Corteza CRM: Not publicly documented.

  • Data volume sensitivity

    B

    Corteza CRM doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your Corteza CRM to Nutshell migration cost

Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.

Step 1

What are you migrating?

Pick a category, then your source and destination platforms.

Category

FAQ

Frequently asked questions about Corteza CRM to Nutshell data migrations

Answers to the questions buyers ask most during Corteza CRM to Nutshell migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Corteza CRM to Nutshell migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most migrations land between two and four weeks for accounts under 10,000 Contacts and 2,000 Deals with no custom modules and a clean namespace. Migrations with custom modules requiring field-level flattening, large activity histories (over 100,000 engagement records), or namespace export cleanup move to six to ten weeks because of the module audit, schema redesign, and API-based activity chunking work. Discovery alone takes one to two weeks regardless of size.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Corteza CRM.
Land in Nutshell, intact.

Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.

Accuracy guarantee Rollback included Quote in 1 business day