CRM migration

Migrate from LionDesk to Odoo CRM

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

LionDesk logo

LionDesk

Source

Odoo CRM

Destination

Odoo CRM logo

Compatibility

92%

11 of 12

objects map 1:1 between LionDesk and Odoo CRM.

Complexity

BStandard

Timeline

2–5 business days

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

LionDesk was built as a lightweight, agent-focused real estate CRM — contacts and companies live in a single object graph with drip campaign membership stored as record properties. Odoo CRM uses a two-model architecture: res.partner for contacts and companies, and crm.lead for leads and opportunities. When you move from LionDesk to Odoo CRM, FlitStack AI splits each LionDesk contact into an Odoo res.partner record and optionally creates a corresponding crm.lead based on deal association. Custom fields migrate with their data types preserved — Text to Char, Number to Float or Integer, Date to Date, Dollar Amt to Monetary — and are created in Odoo via Studio or XML before data lands. Drip campaigns, SMS sequences, and task-reminder automations do not have Odoo equivalents and must be rebuilt as Odoo automation rules or email marketing campaigns. Owner resolution runs on email match against Odoo res.users, and a 24–48 hour delta window captures any LionDesk changes made during cutover. The migration reads LionDesk data via the v2 REST API and writes to Odoo via xmlrpc using your Odoo credentials — no manual CSV juggling required for the primary object set.

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

LionDesk logo

LionDesk

What's pushing teams away

  • Customer support is consistently unresponsive — Capterra support scores of 3.6/5 and Trustpilot at 2.8/5 reflect a pattern of unanswered inquiries and unreachable staff.
  • Users report that add-on costs drive monthly spend significantly above the advertised entry price, making budgeting unpredictable.
  • Multiple users describe the interface as visually dated and functionally basic — suitable for simple workflows but limiting for teams or advanced users.
  • Annual prepayments are difficult to recover; users report refund refusals even when canceling soon after an annual commitment.
  • The platform has a history of glitches and stability issues that agents describe as more trouble than the time savings justify.

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 LionDesk objects map to Odoo CRM

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

LionDesk

Contact

maps to

Odoo CRM

res.partner

1:1
Fully supported

LionDesk's Contact object maps to Odoo res.partner. Standard name, email, phone, address, and job title fields translate directly. Custom fields on the contact migrate as Odoo custom fields on res.partner. The contact's primary company (stored as company_id on the LionDesk record) resolves to the target res.partner's partner_id self-reference.

LionDesk

Contact

maps to

Odoo CRM

crm.lead

1:many
Fully supported

LionDesk contacts associated with active Deals generate a crm.lead record in Odoo. This creates a partner + lead link so the opportunity is attached to the correct contact. Contacts without deal associations only migrate as res.partner — no crm.lead is created. This split is evaluated per contact during migration.

LionDesk

Company

maps to

Odoo CRM

res.partner

1:1
Fully supported

LionDesk Company maps to Odoo res.partner in B2B mode. The company's name, domain, industry, employee count, and annual revenue map to res.partner fields (name, website, industry, employee_count, annual_revenue). Parent-company hierarchies in LionDesk (if used) map to res.partner parent_id self-references in Odoo.

LionDesk

Company

maps to

Odoo CRM

res.partner (linked to Contact)

1:1
Fully supported

LionDesk allows a contact to have a primary company but stores it as a property on the contact record rather than a separate company object. During migration, the company property on the contact is resolved to an existing res.partner (or created if no matching company exists), and the contact's partner_id is set to that partner's id.

LionDesk

Deal

maps to

Odoo CRM

crm.lead

1:1
Fully supported

LionDesk Deal maps to Odoo crm.lead. The deal name becomes the lead's name field; amount maps to Odoo expected_revenue (or planned_revenue depending on stage). Deal stage names are mapped value-by-value to crm.stage records scoped to the target crm.team. Owner assignment runs via email match to res.users before the lead is written.

LionDesk

Deal Pipeline

maps to

Odoo CRM

crm.stage + crm.team

1:1
Fully supported

LionDesk pipelines are not a separate object — pipeline is a property on the Deal. Each unique pipeline name in LionDesk creates a corresponding crm.stage record in Odoo's crm.stage table, scoped to a specific team_id. The stage sequence, legend_priority, and fold state are configured based on the pipeline's position in LionDesk.

LionDesk

Pipeline Stage

maps to

Odoo CRM

crm.stage

1:1
Fully supported

Stage names are mapped one-to-one from LionDesk to Odoo. If the stage name already exists in Odoo under the target team, the existing stage id is used. If not, a new crm.stage record is created. The stage probability and forecast category are re-applied in Odoo based on standard Odoo stage configuration after migration.

LionDesk

Custom Field

maps to

Odoo CRM

ir.model.fields (custom)

1:1
Fully supported

LionDesk custom fields (data_type: Text, Number, Date, Dollar Amt) are created in Odoo as custom fields on res.partner and crm.lead before data migration runs. Text → Char, Number → Float or Integer (based on field name context), Date → Date, Dollar Amt → Monetary. The field definition and values are migrated together so no post-migration data entry is required.

LionDesk

Activity (Call / Email / Note)

maps to

Odoo CRM

mail.activity / mail.message

1:1
Fully supported

LionDesk logged calls, emails, and notes migrate as Odoo mail.activity records linked to the parent res.partner or crm.lead. Original timestamps, subject, and body content are preserved. For emails that are stored as plain text in LionDesk, they write to mail.message as notes on the partner record since Odoo does not have a native email activity type in the standard CRM model.

LionDesk

Drip Campaign / SMS Sequence

maps to

Odoo CRM

No equivalent

1:1
Fully supported

LionDesk drip campaigns store membership and sequence-step data as record properties on contacts. Odoo has email marketing (mass_mailing) and automation rules, but no drip-campaign membership model that mirrors LionDesk's. We export the campaign names and step definitions as a structured JSON reference file for your Odoo admin to rebuild using Odoo email marketing or custom automation rules.

LionDesk

Attachment / File

maps to

Odoo CRM

ir.attachment

1:1
Fully supported

LionDesk file attachments on contacts, companies, or deals are downloaded and re-uploaded to Odoo as ir.attachment records linked to the corresponding res.partner or crm.lead. File names and original create dates are preserved in the attachment record. Odoo's attachment size limit and storage backend (file system, S3) apply.

LionDesk

Owner / User

maps to

Odoo CRM

res.users

1:1
Fully supported

LionDesk owner_id on contacts and deals resolves to Odoo res.users by email address match. Unmatched owners are flagged before migration — your team either creates the corresponding Odoo user first or assigns records to a fallback user. The original LionDesk owner id is preserved in a custom field (Source_Owner_ID__c equivalent) for audit purposes.

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.

LionDesk logo

LionDesk gotchas

High

LionDesk discontinuation as of September 2025

High

Drip campaign automation does not transfer between CRMs

Medium

SMS and video email assets are LionDesk-hosted

Medium

Bulk export requires API pagination

Low

Custom field type enforcement at write time

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

  • Odoo external API requires paid edition

    Odoo's External API (xmlrpc/jsonrpc) — the mechanism FlitStack AI uses to write partner and lead records during migration — is only available on Odoo Enterprise or Custom plan subscriptions. Odoo Community edition does not expose API endpoints for automated data writes. If your Odoo instance is on Community, the migration runs via CSV export from LionDesk and Odoo's native import interface, which increases timeline and requires manual field-by-field column mapping. We verify API availability during the discovery phase and advise on Odoo edition requirements before any migration work begins.

  • LionDesk custom fields require pre-creation in Odoo before data lands

    LionDesk stores custom fields as metadata with data_type constraints (Text, Number, Date, Dollar Amt). Odoo custom fields must be created either through Odoo Studio in the UI or as ir.model.fields XML records before migration data can write into them. The data_type mapping is not automatic — Text becomes Char, Number becomes Float or Integer, Date becomes Date, Dollar Amt becomes Monetary with a currency_id. We audit your full LionDesk custom field inventory during discovery, create the corresponding Odoo fields in a staging environment, and validate the types before the migration run. This step alone can add 1–3 days to the timeline for accounts with 20+ custom fields.

  • Drip campaigns and SMS sequences have no Odoo equivalent to migrate

    LionDesk drip campaigns store membership — which step a contact is on and when they entered the campaign — as a property on the contact record. Odoo has email marketing (mass_mailing module) and automation rules, but neither replicates LionDesk's drip sequence model. The campaign membership data cannot write to an equivalent Odoo construct. We export your drip campaign definitions as a structured JSON file (campaign names, step order, timing rules) and deliver it to your Odoo admin for rebuild using Odoo email marketing or ir.actions.server automation rules. This is a manual rebuild task — not a migration step.

  • Pipeline-to-crm.stage mapping requires pre-staged stage records

    LionDesk stores pipeline stages as string values on the Deal record. Odoo stores stages as records in crm.stage, scoped by team_id and carrying sequence, legend_priority, fold, and on_change flags. A 1:1 mapping from LionDesk stage names to Odoo stage records requires that the target crm.stage records exist in Odoo before migration writes run — you cannot map to a stage id that does not yet exist. We create the stage records via the Odoo API before migration, matching the stage name and assigning the correct sequence. If your LionDesk setup has 5+ pipelines with 6+ stages each, this creates 30+ stage records that need to be configured and tested in Odoo before data lands.

  • LionDesk-specific integrations cannot migrate and must be rebuilt

    LionDesk's Facebook Advertising Portal, Constellation1 IDX data services, and VoIP calling integration are LionDesk-native features with no Odoo equivalent. These integrations will not function in Odoo after migration and the data associated with them (e.g., Facebook lead ad data stored as LionDesk contact properties) migrates as standard fields only. Odoo connects to external services via its own module ecosystem — your admin will need to install and configure equivalent Odoo apps (e.g., Odoo VoIP, Facebook Pixel integration via Odoo Marketing Automation) after migration. We provide a full inventory of active LionDesk integrations during discovery so nothing is missed.

Migration approach

Six steps for a successful LionDesk to Odoo CRM data migration

  1. Verify Odoo API access and establish connection

    We confirm your Odoo edition (Enterprise, Custom, or Community) and validate API credentials. For Community editions, we switch to CSV-based export/import and adjust the timeline accordingly. For Enterprise or Custom, we test xmlrpc connectivity, verify user permissions (write access to res.partner, crm.lead, crm.stage, and mail.activity), and confirm the target database id and UID for the migration run. We document connection parameters, verify network access to the Odoo instance, and set up a dedicated migration user with appropriate security access before proceeding to the data audit phase.

  2. Audit LionDesk data model and custom field inventory

    We enumerate every LionDesk object, standard field, and custom field via the v2 REST API endpoints (/contacts, /companies, /deals, /custom-fields). Each custom field's data_type (Text, Number, Date, Dollar Amt) is recorded and mapped to its Odoo field type. We also capture drip campaign membership data, active pipeline names, stage values, and owner assignments in this audit so the full mapping plan is complete before any data is written.

  3. Create Odoo custom fields and crm.stage records

    Before any data migration runs, we create the Odoo custom fields via the ir.model.fields API (or Studio import for simpler setups). Each LionDesk custom field gets a corresponding Odoo field with the correct type. We also create crm.stage records for each unique pipeline+stage combination found in LionDesk, scoped to the target crm.team. This step ensures all value mappings (stage_id, custom fields) resolve correctly during the migration write phase.

  4. Migrate partners, leads, and activity records in dependency order

    We sequence the migration to respect foreign key constraints: Companies → res.partner (first), then Contacts → res.partner (with parent_id links to companies), then Deals → crm.lead (with partner_id and stage_id resolved). Owner resolution runs via email match to res.users — unmatched owners are flagged and assigned to a fallback user. Activity records (calls, emails, notes) write after their parent records exist. A sample migration of 100–500 records runs first; we generate a field-level diff so you can verify the mapping before the full run commits.

  5. Delta pickup and cutover with audit log

    After the full migration run completes, a 24–48 hour delta window captures any LionDesk records created or modified during the cutover period. Every migration operation is logged with the source record id, destination record id, and timestamp. We deliver an audit log CSV and a reconciliation summary showing record counts by object. If reconciliation fails or the delta reveals unexpected changes, a one-click rollback reverts the Odoo writes and the migration can be re-run with corrected mapping.

Platform deep dives

Context on both ends of the pair

LionDesk logo

LionDesk

Source

Strengths

  • Entry price of $21/month is among the lowest for any full-featured real estate CRM with drip campaigns and texting included.
  • Built-in texting and video email are genuine differentiators that keep agent communication centralized without third-party add-ons.
  • Pre-built real estate drip templates and lead tracking workflows reduce initial setup time for agents unfamiliar with CRM configuration.
  • Open API with OAuth 2.0 authentication allows third-party integrations and programmatic data access for migration tooling.

Weaknesses

  • Support quality is consistently poor across review platforms — agents report long response times and unresolved tickets.
  • The UI is described as basic and visually dated, limiting usability for teams or agents with complex workflows.
  • Annual prepayment refund refusals create a financial risk for agents who need to exit the platform early.
  • LionDesk was discontinued in September 2025, making long-term platform stability a migration urgency factor rather than a future consideration.
  • No publicly documented bulk export or bulk API capability means large contact databases may require iterative API extraction rather than a single pull.
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. 2 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 LionDesk and Odoo CRM.

  • Object compatibility

    B

    2 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

    LionDesk: Not publicly documented in available developer documentation.

  • Data volume sensitivity

    B

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

Estimator

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

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

Can't find your answer?

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

Book a free 30 minute consultation

LionDesk-to-Odoo CRM migrations typically complete in 2–5 business days for under 25,000 records. The fastest-moving component is the contact and company migration; deal migration is slower because each pipeline-to-crm.stage mapping requires pre-created stage records. Migrations with 100,000+ records or 50+ custom fields extend to 1–2 weeks, primarily because custom field creation in Odoo (via Studio or API) must be validated before data writes begin. Odoo API access verification on the destination side can add 1–3 days if the Community edition is in use and CSV-based fallback is required.

Adjacent paths

Related migrations to explore

Ready when you are

Move from LionDesk.
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