CRM migration
Field-level mapping, validation, and rollback between Sellsy and Zoho CRM. We move data and schema; workflows are rebuilt natively in Zoho CRM.
Sellsy
Source
Zoho CRM
Destination
Compatibility
10 of 14
objects map 1:1 between Sellsy and Zoho CRM.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from Sellsy to Zoho CRM is a structural migration that requires separating Sellsy's conflated Contact model, remapping financial documents from Sellsy's integrated invoicing layer to Zoho CRM's Quote-SalesOrder-Invoice flow, and resolving owner references across a different user-management paradigm. Sellsy bundles Individuals and Corporations in a single Contact object with a type discriminator; Zoho maintains separate Contacts and Accounts modules, so we split by type at migration time and wire the resulting Contact to the corresponding Account before any Deals attach. SmartTags on Invoices, Orders, and Credit Notes become Zoho Tags, and Sellsy Staff records map to Zoho Users with a reconciliation queue for any unresolved owners. We do not migrate Sellsy's workflows, document templates, or access-control rules; we deliver a written inventory of these for your admin to rebuild in Zoho's Blueprint and Workflow Rule builders.
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 Sellsy object lands in Zoho CRM, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Sellsy
Contact (type=individual)
Zoho CRM
Contact
1:1Sellsy exports all Contacts in a single bundle with a type discriminator field that identifies Individual versus Corporation. We split by type during pre-flight: Individual records map to Zoho CRM Contact with the name split into First Name and Last Name fields, email mapped to Email, phone mapped to Phone, and the original Sellsy Contact ID preserved in a custom field sellsy_contact_id__c for cross-system reference. Address fields map to Zoho's Mailing Street, Mailing City, Mailing State, and Mailing Country composite or split fields per the customer's address format preference.
Sellsy
Corporation
Zoho CRM
Account
1:1Sellsy Corporation records map to Zoho CRM Account. Corporation name becomes Account Name, SIRENE registry number (if present) maps to a custom field sellsy_siren__c, website maps to Website, and phone maps to Phone. The Sellsy Corporation ID is preserved in sellsy_corporation_id__c. Account is created before any Contact import so that the Contact-Account lookup (Account Name lookup or Account ID) is satisfied at the moment of Contact insert.
Sellsy
Contact (type=corporation)
Zoho CRM
Contact
1:manySellsy Contacts of type=corporation represent people associated with a company who are not the primary account contact. We map these to Zoho CRM Contact records linked to the Account created from the corresponding Corporation. The Contact-Account relationship uses the Account Name lookup or a custom Account ID field. The original Sellsy Corporation reference is preserved in a custom field so that the linkage remains auditable.
Sellsy
Opportunity
Zoho CRM
Deal
1:1Sellsy Opportunities map to Zoho CRM Deals. Opportunity name becomes Deal Name, amount maps to Amount, closing date maps to Closing Date, owner_id resolves to Zoho User via email match, and pipeline stages map to Zoho Stage picklist values. We configure Zoho Stages before migration to match the Sellsy pipeline stage names and probabilities so that the stage distribution is preserved. The original Sellsy opportunity ID goes in sellsy_opportunity_id__c.
Sellsy
Pipeline (Opportunity stages)
Zoho CRM
Deal Stages
lossySellsy deal pipelines and their stage definitions (names, probabilities, order) map to Zoho CRM Deal Stage picklist values. We create the stage sequence in Zoho before Deal import so that all Deals land in the correct stage on first insert. If Sellsy has multiple pipelines, we use Zoho's Stage custom field or a Deal custom field to preserve the pipeline context.
Sellsy
Invoice
Zoho CRM
Invoice
1:1Sellsy Invoices map to Zoho CRM Invoice. Line items (product name, quantity, unit price, discount, tax) map to Invoice Items. Invoice status (draft, sent, paid, overdue) maps to Zoho Invoice Status. The linked Contact and Corporation from Sellsy resolve to the Zoho Contact and Account created earlier in the migration. SmartTags on invoices become Zoho Tags. We preserve the original Sellsy invoice number in sellsy_invoice_id__c and the invoice date as the Invoice Date in Zoho.
Sellsy
Order
Zoho CRM
Sales Order
1:1Sellsy Orders map to Zoho CRM Sales Order. Product-line items migrate to Sales Order Items with quantity, unit price, and discount preserved. The linked Contact and Corporation resolve to the migrated Zoho Contact and Account. SmartTags become Zoho Tags. Order status maps to Zoho Status picklist values. We preserve the original Sellsy order number in sellsy_order_id__c.
Sellsy
Credit Note
Zoho CRM
Invoice (Credit Note subtype)
1:1Sellsy Credit Notes (API v2.86.0+) map to Zoho CRM Invoice records with a Credit Note flag or a custom field sellsy_credit_note__c set to true. The linked invoice reference maps to the Related To (WhatId) field on the Zoho Invoice. Credit note amount, reason, and date migrate to corresponding Zoho Invoice fields. SmartTags become Zoho Tags.
Sellsy
Staff
Zoho CRM
User
1:1Sellsy Staff records represent users and carry role information. We map Staff to Zoho CRM User by email match. Any Sellsy Staff without a matching Zoho User goes to a reconciliation queue for the customer's admin to provision before record import resumes. Role and privilege information does not migrate because Zoho's Roles and Profiles system is structurally different from Sellsy's privilege model; we deliver a written map of each Staff member's Sellsy role for the admin to assign equivalent Zoho permissions.
Sellsy
Task
Zoho CRM
Task
1:1Sellsy Tasks map to Zoho CRM Task. Subject, description, due date, status, and priority migrate directly. Assignee from Sellsy task.owner_id resolves to Zoho User ID via the Staff-User lookup. The linked Contact or Opportunity from Sellsy resolves to Zoho Contact ID or Deal ID. We preserve the original Sellsy task ID in sellsy_task_id__c.
Sellsy
Activity (appointments, calls, logged interactions)
Zoho CRM
Event
1:1Sellsy Activities mapped to appointments and meetings migrate to Zoho CRM Event records with Subject, Start DateTime, End DateTime, and Location. Attendee information maps to Event Participants. Call logs migrate to Zoho Tasks with Task Type set to Call and Call Duration in a custom field. The linked Contact and Opportunity from Sellsy resolve to Zoho Contact ID and Deal ID. Activity timestamps are preserved as Event Start DateTime and End DateTime.
Sellsy
Product
Zoho CRM
Product
1:1Sellsy Product catalog entries map to Zoho CRM Product. Product name, code (hs_sku equivalent), unit price, and product description migrate. If Sellsy has pricing tiers or matrix pricing, we map these to Zoho Price Books and Price Book Entries. The original Sellsy product ID is preserved in sellsy_product_id__c.
Sellsy
SmartTags (Invoice, Order, Credit Note)
Zoho CRM
Tags
lossySmartTags are Sellsy's transaction-level tagging system and have no direct Zoho CRM equivalent as a relational object. We remap SmartTags as Zoho native Tags on the respective Invoice, Sales Order, and Credit Note records. If Zoho Tags are insufficient for the customer's taxonomy, we create a custom field sellsy_smart_tag__c (single or multi-select picklist) on the relevant modules to preserve the full SmartTag vocabulary.
Sellsy
Custom Fields (Invoices, Contacts, Corporations)
Zoho CRM
Custom Fields
lossySellsy custom fields on Invoices, Contacts, and Corporations (accessed via GET+PUT /custom-fields endpoints) map to Zoho CRM custom fields of equivalent type. We inspect the custom field schema at scoping, create matching Zoho custom fields (with appropriate field types: text, number, date, picklist, multi-select, checkbox) before migration, and map values during the import phase. Field-level validation rules in Zoho are coordinated with the customer's admin to avoid import blocking.
| Sellsy | Zoho CRM | Compatibility | |
|---|---|---|---|
| Contact (type=individual) | Contact1:1 | Fully supported | |
| Corporation | Account1:1 | Fully supported | |
| Contact (type=corporation) | Contact1:many | Fully supported | |
| Opportunity | Deal1:1 | Fully supported | |
| Pipeline (Opportunity stages) | Deal Stageslossy | Fully supported | |
| Invoice | Invoice1:1 | Fully supported | |
| Order | Sales Order1:1 | Fully supported | |
| Credit Note | Invoice (Credit Note subtype)1:1 | Fully supported | |
| Staff | User1:1 | Mapping required | |
| Task | Task1:1 | Fully supported | |
| Activity (appointments, calls, logged interactions) | Event1:1 | Fully supported | |
| Product | Product1:1 | Fully supported | |
| SmartTags (Invoice, Order, Credit Note) | Tagslossy | Mapping required | |
| Custom Fields (Invoices, Contacts, Corporations) | Custom Fieldslossy | 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.
Sellsy gotchas
Owner name uniqueness required in CSV exports
Pricing numbers scattered across modular and bundled models
SmartTags are a tagging layer, not a structured object
Public API rate limits not documented
Zoho CRM gotchas
API access requires Professional tier or above
Subform fields do not export cleanly via CSV
API credit consumption is non-linear
Export download links expire in 7 days
Owner (User) assignments require pre-mapped user IDs
Pair-specific challenges
Migration approach
Discovery and scoping
We audit the source Sellsy account across plan tier (Standard, Professional, Scale), object inventory (Contacts, Corporations, Opportunities, Invoices, Orders, Credit Notes, Tasks, Activities, Products), custom field schemas, SmartTag taxonomy, Staff count, and engagement volume. We pair this with a Zoho CRM edition assessment: Standard ($14/user/month) covers most SMB migrations; Professional ($20/user/month) adds workflow rules, Blueprints, and macro support; Enterprise ($35/user/month) is required for advanced validation rules, scoring, and territory management. The discovery output is a written migration scope, object inventory, and Zoho edition recommendation.
Contact-Corporation split and schema design
We split Sellsy's combined Contact export by the type discriminator into Individual records (mapped to Zoho Contact) and Corporation records (mapped to Zoho Account) before any Zoho import begins. We design the destination Zoho CRM schema: Contacts and Accounts modules with the lookup relationship, Deal stages pre-configured to match Sellsy pipeline names, custom fields created to match Sellsy custom field types, and Tags taxonomy designed for SmartTag remapping. Schema is validated in a Zoho Sandbox org before production migration.
Staff-to-User reconciliation and User provisioning
We extract every distinct Sellsy Staff member referenced on Contact, Opportunity, Task, and Document records and match by email against the Zoho CRM destination org's User table. Any Sellsy Staff without a matching Zoho User goes to a reconciliation queue. The customer's Zoho admin provisions any missing Users (active or inactive depending on whether the original Sellsy user is still employed). Migration cannot proceed past this step because Owner and assignee references on Deals, Tasks, and Documents require a valid Zoho User ID.
Sandbox migration and reconciliation
We run a full migration into a Zoho Sandbox (Copy Production configuration) using production-like data volume. The customer's admin reconciles record counts (Accounts in, Contacts in, Deals in, Invoices in, Sales Orders in, Credit Notes in, Tasks in, Events in), spot-checks 25-50 random records against the Sellsy source, and validates SmartTag remapping on sample invoices and orders. The customer signs off on the mapping before production migration begins. Any mapping corrections happen in Sandbox, not production.
Production migration in dependency order
We run production migration in record-dependency order: Accounts (from Sellsy Corporations first), Contacts (Individuals then Corporation-linked contacts), Products, Deals (with Account lookup and User owner resolved), Tasks and Events, Invoices (with Contact and Account lookup resolved, SmartTags remapped to Tags), Sales Orders, Credit Notes (with linked Invoice reference resolved), and SmartTags fallback custom fields if the customer chose the picklist strategy over native Tags. Each phase emits a row-count reconciliation report before the next phase begins.
Cutover, delta migration, and Workflow rebuild handoff
We freeze Sellsy writes during cutover, run a final delta migration of any records modified during the migration window, then enable Zoho CRM as the system of record. We deliver a written inventory of Sellsy Workflows, document templates, and privilege/access-control rules with Zoho equivalent recommendations (Workflow Rules, Blueprint, and Roles respectively). We support a one-week hypercare window where we resolve any reconciliation issues raised by the customer's team. We do not rebuild Sellsy Workflows as Zoho Blueprint or Workflow Rules inside the migration scope; that is a separate engagement or an internal admin task.
Platform deep dives
Sellsy
Source
Strengths
Weaknesses
Zoho CRM
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 Sellsy and Zoho CRM.
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
Sellsy: Not publicly documented.
Data volume sensitivity
Sellsy exposes a bulk API — large-volume migrations stream efficiently.
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 Sellsy to Zoho CRM migration scoping. Not seeing yours? Book a call.
Walk through your Sellsy to Zoho CRM migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Sellsy
Other ways to arrive at Zoho CRM
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.