CRM migration

Migrate from Sellsation CRM to Odoo CRM

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

Sellsation CRM logo

Sellsation CRM

Source

Odoo CRM

Destination

Odoo CRM logo

Compatibility

75%

9 of 12

objects map 1:1 between Sellsation CRM and Odoo CRM.

Complexity

BStandard

Timeline

3-5 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Sellsation CRM organizes sales around Customers and Contact Persons linked to Sales Projects tracked through guided pipeline stages. Odoo CRM maps these concepts to its Contact/Partner and crm.lead object model but requires explicit pipeline stage configuration and does not have a native heatmap or territory map feature. The primary migration constraint is Sellsation's lack of a documented public API, which means extraction relies on CSV exports enumerated during a scoping call; we validate field coverage against the Sellsation UI export before migration day. We preserve Sales Project pipeline stage names and stagnating-deal flags as Odoo tags and stage configuration. Multi-level Campaign structures and custom reports do not migrate as configuration; we deliver a written inventory of both so your Odoo admin can rebuild them in Odoo's automation and reporting framework.

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

Sellsation CRM logo

Sellsation CRM

What's pushing teams away

  • Very limited third-party review presence—only one verified G2 review exists for Sellsation CRM, making it difficult for migration teams to find independent validation of feature claims before committing.
  • Small market footprint outside German-speaking regions—the company is headquartered in Linz and Vienna, Austria, and most customer-facing content is German-language, limiting appeal and support depth for English-speaking teams.
  • Unclear API availability and export capabilities—no public API documentation was found in research, creating risk for teams needing programmatic data extraction or automation-driven migrations.
  • Competitors offer broader ecosystem integrations—G2 lists Salesforce Sales Cloud, ActiveCampaign, and HubSpot as the top Sellsation alternatives, all of which have richer app marketplace ecosystems and integration libraries.

Choosing

Odoo CRM logo

Odoo CRM

What's pulling them in

  • Teams choose Odoo CRM for its modular architecture — one base install with one-click app additions means they can adopt CRM alone and add accounting, inventory, or sales later as the business grows.
  • Small businesses pick Odoo because the Community edition is free and open-source, with no per-user or contact limits, allowing full evaluation before committing to a paid Enterprise tier.
  • The drag-and-drop Kanban pipeline and AI lead scoring are highlighted across G2 reviews as concrete features that make lead management faster and more visual than spreadsheet-based workflows.
  • Odoo's native integration with email, live chat, SMS, VoIP, and WhatsApp means inbound leads from multiple channels feed into a single pipeline without third-party middleware.
  • Companies in retail, supply chain, and construction value that Odoo's CRM module shares the same PostgreSQL database and UI as its ERP modules, eliminating data silos between sales and operations.

Object mapping

How Sellsation CRM objects map to Odoo CRM

Each row shows how a Sellsation CRM object lands in Odoo CRM, including any object-level transformations, lookup resolution, or schema-design dependencies.

Typical mapping — final map is confirmed during the sample migration step.

Sellsation CRM

Customer

maps to

Odoo CRM

res.partner (company type)

1:1
Fully supported

Sellsation Customers (account-level records with company information, address, and industry) map to Odoo res.partner records with partner_type set to 'company'. We preserve the Sellsation Customer name as partner display name, address fields as address child records, and any industry or classification data as Odoo custom tag fields. Customer is imported before Contact Persons to satisfy the partner_id lookup on the contact-side import.

Sellsation CRM

Contact Person

maps to

Odoo CRM

res.partner (contact type)

1:1
Fully supported

Sellsation Contact Persons map to Odoo res.partner records with partner_type set to 'person' and parent_id pointing to the linked Customer partner record. We resolve the parent link at migration time by matching Contact Person's customer reference to the imported Customer record, then insert Contact Persons with parent_id populated. Email, phone, and role/title data migrate to standard partner fields; custom fields map to Odoo custom ir.model.fields.

Sellsation CRM

Sales Project

maps to

Odoo CRM

crm.lead (opportunity)

1:1
Fully supported

Sellsation Sales Projects (pipeline-stage-tracked deals with values and phase history) map to Odoo crm.lead records with type='opportunity'. The Sellsation pipeline stage name becomes the Odoo stage_id reference, which we configure as a named stage in the target CRM pipeline before migration. Deal value migrates to Odoo's expected_revenue or planned_revenue field. The traffic-light stagnating-deal flag migrates as an Odoo tag (crm.tag) so sales managers can filter neglected opportunities in Odoo's pipeline view.

Sellsation CRM

Activity (calls, appointments, notes, tasks)

maps to

Odoo CRM

mail.activity and calendar.event

1:1
Fully supported

Sellsation Activity records (calls, appointments, notes, tasks) linked to Contact Persons or Sales Projects map to Odoo mail.activity entries on the corresponding res.partner or crm.lead record. We batch activities by parent object and chronological window to avoid Odoo request-timeouts on high-volume timelines. Appointment records with date, time, duration, and attendees map to Odoo calendar.event with calendar.event.type set to the Sellsation activity type label. Activity timestamps and user assignments migrate as activity_date_deadline and create_uid respectively.

Sellsation CRM

Campaign

maps to

Odoo CRM

crm.activity.plan + mail.mass_mailing

lossy
Fully supported

Sellsation multi-level campaigns (combining emails, letters, conditional stage movements, and task creation) do not have a single Odoo equivalent. We export campaign structure, enrollment data, and stage movement rules as a written inventory. Email-based campaign steps migrate to Odoo mail.mass_mailing with audience lists rebuilt from the Sellsation campaign member records. Automated task-creation steps migrate to Odoo crm.activity.plan entries. Conditional stage movements require manual rebuild in Odoo Studio or via a consultant because Sellsation's campaign logic does not export as machine-readable rules.

Sellsation CRM

Task

maps to

Odoo CRM

project.task (or mail.activity)

1:1
Fully supported

Sellsation Tasks assigned to Contact Persons or Sales Projects map to Odoo project.task if the customer uses Odoo Project, or to mail.activity on the parent crm.lead or res.partner if only CRM is deployed. Task status, due date, description, and assignment (user_id) migrate directly. We resolve Sellsation user assignments by email match against Odoo res.users; any unresolved assignments go to a reconciliation queue for the customer's admin to provision.

Sellsation CRM

Custom Fields

maps to

Odoo CRM

ir.model.fields (custom)

1:1
Mapping required

Sellsation custom fields on Customers, Contact Persons, and Sales Projects are enumerated during scoping and mapped to Odoo custom ir.model.fields. We pre-create the Odoo field schema (with correct field type: char, selection, text, float, date, etc.) before any data import. Picklist-style custom fields migrate as Odoo selection fields with matching key-value pairs; formula or computed fields cannot be migrated and are flagged in the scoping report for manual rebuild in Odoo Studio.

Sellsation CRM

Geo Map Data (territory and heatmap)

maps to

Odoo CRM

res.partner address fields

1:1
Fully supported

Sellsation geo map and heatmap data stores territory and region context as internal map state rather than standard geographic coordinates. We export the linked Sales Project location data as standard address fields (street, city, zip, country) on the associated Customer partner record. The geographic context is preserved in address form even though the native heatmap visualization cannot be replicated. If the customer requires territory visualization, Odoo Map plugin or a third-party Odoo App provides basic pin-plotting on partner addresses.

Sellsation CRM

KPIs and Reports

maps to

Odoo CRM

delivery as underlying data

lossy
Mapping required

Sellsation standard reports and custom KPI dashboards do not export as definitions. We deliver the underlying Sales Project, activity, and deal-value data as structured CSV exports so the customer's Odoo team can rebuild reports from complete source data. Pipeline performance reports, deal aging reports, and sales activity summaries are among the highest-priority rebuilds identified during scoping.

Sellsation CRM

Owner (User)

maps to

Odoo CRM

res.users

1:1
Fully supported

Sellsation user assignments on Contact Persons, Sales Projects, Activities, and Tasks map to Odoo res.users records. We resolve by email match against the destination Odoo instance's user table. Any Sellsation owner without a matching Odoo user is placed in a reconciliation queue for the customer's admin to provision before record import continues, because OwnerId references are required on most crm.lead fields.

Sellsation CRM

Pipeline Stage

maps to

Odoo CRM

crm.stage

lossy
Fully supported

Each Sellsation pipeline stage name becomes a named crm.stage record in Odoo's CRM pipeline configuration. We capture stage order, probability percentage (where set in Sellsation), and stage type (new, working, won, lost) from the Sales Project phase change history. The Sellsation traffic-light stagnating-deal logic is not a stage property; it migrates as a tag on records that exceeded the stagnation threshold.

Sellsation CRM

Survey Responses

maps to

Odoo CRM

mail.message or custom ir.model.fields

1:1
Fully supported

Sellsation captures survey responses attached to Contact Persons as part of the activity history. We export survey question and answer pairs as structured records linked to the Contact Person partner. In Odoo, survey responses are handled by the Odoo Survey module, which is not part of a standard CRM-only deployment; we map survey data to mail.message notes or to a custom Odoo field depending on whether the customer licenses Odoo Survey.

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.

Sellsation CRM logo

Sellsation CRM gotchas

High

No documented public API for programmatic export

Medium

Activity history volume can bloat export files

Medium

Custom reports and dashboards do not migrate

Low

Geo map and heatmap data is proprietary visualization

Odoo CRM logo

Odoo CRM gotchas

High

Odoo.sh version gating blocks assisted migrations from trial

High

Enterprise modules fail to install on Community after database restore

Medium

Custom module view inheritance breaks between Odoo major versions

Medium

Custom fields risk losing their application context on Community

Low

API access for Community is gated behind the Custom Plan

Pair-specific challenges

  • Sellsation has no public API — extraction is CSV-only

    Sellsation CRM does not publish API documentation, and our research found no programmatic export mechanism. All data extraction relies on CSV exports from the Sellsation UI. We perform a full scoping call to enumerate every object, field, and custom field before export, and we validate record counts from the UI export against our scoping counts to identify gaps before migration day. If the CSV export omits activity history or custom fields not visible in the default export view, we flag these during scoping and discuss manual extraction options with the customer before committing to a migration timeline.

  • Odoo res.partner conflates contacts and companies

    Odoo uses a single res.partner model for both companies and individuals, with an is_company boolean flag distinguishing the two. Sellsation separates Customer (company) and Contact Person (individual) into distinct objects with explicit linking. We resolve the Sellsation Customer-to-is_company-true partner and Sellsation Contact Person-to-is_company-false partner mapping, and we set parent_id on Contact Persons to link them to their Customer partner. Misidentifying a Contact Person as a company (or vice versa) during import creates broken relationship hierarchies in Odoo's partner views.

  • Odoo custom fields require pre-schema creation before import

    Odoo custom fields must be created in the system before data can be inserted into them via the API or CSV import. Unlike platforms where custom fields can be created inline during import, Odoo requires the field definition (name, type, selection options, relational model) to exist first via Settings > Technical > Fields. We pre-create all Sellsation custom field mappings as Odoo ir.model.fields before any data load. Any Sellsation formula or computed fields are flagged as non-migratable because Odoo computed fields require Python code that cannot be imported from CSV.

  • Activity history volume can exceed Odoo import timeouts

    Sellsation logs every call, appointment, note, and task as a separate activity record. Teams with years of engagement history can accumulate 10-20x more activity records than Contact Person records. Odoo's XML-RPC interface enforces request timeouts on large batch imports. We chunk activity exports into time-bounded batches (by month or quarter) and insert them sequentially, verifying parent-record existence (crm.lead id or res.partner id) before each batch to prevent orphaned activity records. Large activity migrations add one to three weeks to the timeline depending on total activity volume.

  • Multi-level campaign logic cannot export as automation rules

    Sellsation multi-level campaigns combine emails, conditional stage movements, and automated task creation in a single campaign definition. Odoo separates these into mail.mass_mailing (email campaigns), crm.activity.plan (task templates), and manual stage configuration. We export campaign structure, enrollment lists, and campaign member data as structured CSV so the customer's Odoo admin can rebuild the campaign in Odoo's framework. The conditional stage-movement logic requires manual rebuild as Odoo server actions or a consultant engagement.

Migration approach

Six steps for a successful Sellsation CRM to Odoo CRM data migration

  1. Scoping and export preparation

    We schedule a scoping call with the customer's Sellsation admin to enumerate all Customers, Contact Persons, Sales Projects, Activities, Campaigns, Custom Fields, and user accounts. We identify any data visible only in the Sellsation UI that is not included in the default CSV export, and we work with the customer to build a complete field inventory. We also confirm the target Odoo version and installed apps so that the destination schema design accounts for the actual module set in use.

  2. CSV extraction and validation

    The customer exports all objects from Sellsation using the UI export function. We validate record counts against the scoping inventory, check for encoding issues (particularly for German-language fields given Sellsation's Austria origin), and identify any truncated or missing fields. If the export misses custom fields or activity history, we coordinate with the customer on manual extraction steps. The validated CSV files become the migration source of truth.

  3. Odoo destination schema setup

    We configure the destination Odoo CRM: we create crm.stage records matching the Sellsation pipeline stage names and probabilities, create any custom ir.model.fields for Sellsation custom fields, create crm.tag records for the stagnating-deal traffic-light flags, and configure the crm.lead required fields and picklists. This schema is deployed into the customer's Odoo Sandbox or staging environment first for validation before production migration.

  4. Sandbox migration and reconciliation

    We run a full migration into the Odoo staging environment following the dependency order: res.users (owner reconciliation), res.partner (Customers first as companies, then Contact Persons with parent_id), crm.lead (Sales Projects with stage_id and owner resolved), mail.activity and calendar.event (activities batched by parent and time window), project.task or mail.activity (tasks), and crm.activity.plan (campaign task templates). The customer reconciles record counts and spot-checks 25-50 records against the Sellsation source before approving production migration.

  5. Production migration in dependency order

    With staging validated, we run production migration in the same dependency order used in sandbox. Each phase emits a row-count reconciliation report before the next begins. We freeze Sellsation writes during the production window, extract a final delta of any records modified since the initial export, merge the delta into the migration set, and execute the final import. Parent-record lookup errors during import are resolved against the reconciliation queue before proceeding.

  6. Cutover, validation, and rebuild handoff

    We confirm the migrated data in Odoo matches the validated counts from staging. We deliver the Campaign and Automation inventory document (what Sellsation campaign logic existed and what Odoo equivalents to use for rebuild) and the Custom Reports rebuild brief (which underlying data tables to query for each Sellsation report). We provide a one-week hypercare window for the customer's team to report any data issues. We do not rebuild Sellsation Workflows, Campaigns, or Reports as code inside the migration scope.

Platform deep dives

Context on both ends of the pair

Sellsation CRM logo

Sellsation CRM

Source

Strengths

  • Annual billing at 90–100 € per user with no long-term contract commitment
  • Traffic-light system automatically flags stagnating deals and neglected contacts
  • Automated potential and strengths/weaknesses analysis per Sales Project
  • Multi-level campaign and workflow automation combining emails, tasks, and stage movements
  • Geo map feature with heatmaps for territory analysis and regional pursuit tracking

Weaknesses

  • No publicly documented API—migration requires CSV/manual export with unknown field coverage
  • Only one verified third-party review exists on G2, limiting independent validation
  • German-language primary market presence with limited English documentation
  • Small company footprint raises long-term viability and support continuity questions
  • Custom reports and dashboards are platform-native and must be rebuilt after migration
Odoo CRM logo

Odoo CRM

Destination

Strengths

  • Modular open-source architecture lets teams start with CRM and add ERP apps as needs grow, all sharing one PostgreSQL database.
  • Free Community edition with no contact limits and full source code access means zero licensing cost for evaluation and small deployments.
  • Drag-and-drop Kanban pipeline with AI lead scoring gives a visual, prioritized view of the sales funnel without requiring custom configuration.
  • Native integrations with email, live chat, SMS, VoIP, WhatsApp, and social media feed all inbound leads into a single unified inbox.
  • Active Odoo Community Association (OCA) maintains dozens of community-maintained modules on GitHub for extended functionality.

Weaknesses

  • Gmail and email integration reliability is a recurring complaint — threads drop and conversations scatter across inboxes, disrupting sales team workflows.
  • Enterprise edition pricing stacks quickly: multiple apps at per-user rates ($25–$50/user/month) plus Odoo.sh hosting costs more than many SMBs anticipate.
  • Setup and configuration complexity increases significantly once custom fields, automation rules, and multiple installed modules are in play.
  • Odoo.sh trial databases run on a version (e.g., 18.3) that is not directly migratable to Odoo.sh, blocking the assisted migration path Odoo advertises.
  • Version upgrades between major Odoo releases (e.g., 17→18) frequently break custom module view definitions and XPath expressions, requiring manual remediation.

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 Sellsation CRM and Odoo CRM.

  • 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

    Sellsation CRM: Not publicly documented.

  • Data volume sensitivity

    B

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

Estimator

Estimate your Sellsation CRM to Odoo CRM 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 Sellsation CRM to Odoo CRM data migrations

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

Can't find your answer?

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

Book a free 30 minute consultation

Migrations under 5,000 Customers, 10,000 Contact Persons, and 2,000 Sales Projects with no complex custom fields typically complete in three to five weeks. Migrations with large activity histories (50,000+ activity records), extensive custom field schemas, or multi-currency deal values extend to eight to twelve weeks because of CSV extraction validation, parent-record lookup resolution, and Odoo stage configuration. The primary timeline driver is the absence of a Sellsation API, which requires manual CSV assembly and validation before any data moves.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Sellsation CRM.
Land in Odoo CRM, 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