CRM migration
Field-level mapping, validation, and rollback between Plezi and Odoo CRM. We move data and schema; workflows are rebuilt natively in Odoo CRM.
Plezi
Source
Odoo CRM
Destination
Compatibility
7 of 12
objects map 1:1 between Plezi and Odoo CRM.
Complexity
BStandard
Timeline
2-4 weeks
Overview
Moving from Plezi to Odoo CRM is a migration from a French marketing automation platform to an integrated ERP-native CRM. Plezi's Contact model carries behavioral scoring profiles and lifecycle stages that Odoo CRM does not store natively, so we preserve both in custom Lead fields. Companies map directly to Odoo CRM's Companies model. Campaigns carry over as CRM Campaign records with cost, channel, and date metadata intact. Landing Pages and Forms have no native Odoo CRM equivalent; we document the full configuration for rebuild in Odoo Website or Survey. Smart Campaign automation logic and Workflows are stored in Plezi's proprietary format and do not migrate as code. We deliver a written inventory of every Smart Campaign and Workflow with trigger events, conditional rules, and action sequences so the customer's admin can reproduce the logic in Odoo Studio. Odoo CRM's pricing model at approximately $37 per user per month offers more predictability than Plezi's per-contact or negotiated model as contact volumes grow.
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 Plezi 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.
Plezi
Contact
Odoo CRM
Lead
1:1Plezi Contacts map to Odoo CRM Lead. Standard properties (name, email, phone, company) migrate directly. The Plezi lifecycle_stage and behavioral scoring profile do not have native Odoo CRM equivalents; we preserve both in custom Lead fields lifecycle_stage__c and scoring_profile__c as structured JSON so the customer's admin can act on the data in Odoo Studio. Company association in Plezi maps to a Lead company_name string, with a separate Company record created in Odoo CRM if the contact is linked to a Plezi Company with enrichment data.
Plezi
Company
Odoo CRM
Company
1:1Plezi Company records map to Odoo CRM Company. Company name, domain, industry, size, and any custom enrichment properties migrate to the Odoo Company fields and custom fields. The Odoo Company is created before the associated Contact or Lead import so that the relational reference is satisfied at insert time. Where Plezi Company enrichment data includes third-party sourced fields, we store the source attribution in a custom field enrichment_source__c.
Plezi
Campaign
Odoo CRM
Campaign
1:1Plezi Campaigns map to Odoo CRM Campaign. Campaign name, type, start date, end date, budget, and channel metadata migrate to the corresponding Odoo Campaign fields. Campaign cost data from Plezi migrates to Odoo's crm_campaign.planned_cost field. If the campaign has associated contacts, we create Campaign Influence or Sales Team membership records in Odoo to preserve the relationship.
Plezi
Landing Page
Odoo CRM
Odoo Website Page (out of scope)
lossyOdoo CRM does not include a native landing page builder; landing pages require the Odoo Website module or a third-party tool. We export the Plezi landing page title, URL slug, and form reference during the audit phase. We document every page's structure, form field configuration, and any embedded third-party content (webinar iframes, live chat scripts, custom JavaScript widgets) for the customer's admin to rebuild manually. Embedded third-party widgets are flagged individually because they cannot be extracted and will not appear in the Plezi export. This is pair-specific because it affects the migration completeness for marketing teams that rely on Plezi landing pages as a primary lead-capture channel.
Plezi
Form
Odoo CRM
Odoo Survey or Website Form (out of scope)
lossyPlezi Forms capture leads and feed them into Smart Campaigns. We export form field names, required flags, and the target pipeline stage assignment. Custom field types are mapped to the closest Odoo equivalent (text, integer, date, email). The form itself does not migrate because Odoo CRM has no native form builder; we document the full form configuration for rebuild in Odoo Survey (for standalone lead qualification forms) or Odoo Website contact forms. The target Smart Campaign stage assignment is documented as a manual step in Odoo lead creation.
Plezi
Smart Campaign
Odoo CRM
Odoo Studio Automation (documented for rebuild)
lossyPlezi Smart Campaigns store trigger-action logic in a platform-specific format that cannot be exported as runnable automation. We reconstruct each Smart Campaign's intent by exporting the campaign trigger events, conditional rules, and action sequence as a written inventory document. The document includes trigger type (form submission, email open, page visit, score change), all condition branches, and the full action sequence. Odoo Studio automation (server actions, automated activities, mail templates) is the equivalent rebuild target. The customer's admin or an Odoo consultant uses the inventory document to reproduce Smart Campaign logic in Odoo Studio. This is the highest-severity pair gotcha because the automation intent is not automatically portable.
Plezi
Workflow
Odoo CRM
Odoo Studio Automation (documented for rebuild)
lossyPlezi Workflows manage multi-step nurture sequences with step references to Contacts or Companies. We export the step sequence and associated content blocks as a written document. Dynamic content personalization steps are flagged individually because they cannot be automatically reproduced in Odoo Studio without manual mapping of the personalization variables. Odoo Studio's mail templates and automated activities cover most nurture sequence use cases.
Plezi
Marketing Assets (emails, content blocks)
Odoo CRM
CRM Email Templates
1:1Emails and content blocks used inside Plezi Smart Campaigns and Workflows are exportable as HTML and text variants. We import the HTML body and subject line as Odoo CRM email templates via the mail.template model. Inline images may require re-hosting in the Odoo media library; we flag any image references that point to external URLs for manual re-uploading. Email template variables (%customer_name%, %company_name%, etc.) are documented with their Plezi equivalents for the admin to remap in Odoo's qweb template syntax.
Plezi
User (team member)
Odoo CRM
User
1:1Plezi user accounts include name, email, and role. We export user records and attempt to map roles to Odoo's permission groups (Sales / Administrator / Custom). Plezi-specific role names that have no direct Odoo equivalent are flagged for manual review during the Odoo user provisioning phase. Owner references on Contacts, Companies, and Campaigns are resolved by email match against the Odoo User table. Any Plezi owner without a matching Odoo User is held in a reconciliation queue until the customer's admin provisions the account.
Plezi
Tag
Odoo CRM
Tag
1:1Plezi Contact and Company tags migrate to Odoo CRM Tags. Tags are a native field type in Odoo CRM Lead and Contact models. We export all tag names and their associated record references, then import them into Odoo where they attach to the corresponding Lead or Contact records. Tags used for segmentation in Plezi Smart Campaigns are documented in the automation inventory so the customer can reproduce segmentation in Odoo using the Tag field and Odoo Studio domain filters.
Plezi
Scoring Profile
Odoo CRM
Custom Lead Fields (scoring_profile__c)
lossyPlezi behavioral scoring profiles are structured data attached to each Contact. Odoo CRM has no native scoring engine. We store the full scoring profile as a custom JSON field scoring_profile__c on the Odoo Lead model, preserving all behavioral signals (page views, email opens, form submissions, engagement scores) for the customer's admin or RevOps team to act on through Odoo Studio or a third-party scoring tool integrated with Odoo.
Plezi
Product (if applicable)
Odoo CRM
Product
1:1If Plezi carries product records linked to Campaigns or scoring profiles, these map to Odoo Product variants. We resolve the product schema against any existing Odoo Inventory or Purchase module to avoid conflicts if the Odoo ERP is already live. Product names, SKUs, and pricing data migrate directly. Product images and descriptions are stored as Odoo product template attachments.
| Plezi | Odoo CRM | Compatibility | |
|---|---|---|---|
| Contact | Lead1:1 | Fully supported | |
| Company | Company1:1 | Fully supported | |
| Campaign | Campaign1:1 | Fully supported | |
| Landing Page | Odoo Website Page (out of scope)lossy | Fully supported | |
| Form | Odoo Survey or Website Form (out of scope)lossy | Fully supported | |
| Smart Campaign | Odoo Studio Automation (documented for rebuild)lossy | Fully supported | |
| Workflow | Odoo Studio Automation (documented for rebuild)lossy | Fully supported | |
| Marketing Assets (emails, content blocks) | CRM Email Templates1:1 | Fully supported | |
| User (team member) | User1:1 | Fully supported | |
| Tag | Tag1:1 | Fully supported | |
| Scoring Profile | Custom Lead Fields (scoring_profile__c)lossy | Fully supported | |
| Product (if applicable) | Product1:1 | 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.
Plezi gotchas
Smart Campaign automation logic is not directly portable
Landing pages may contain non-exportable embedded content
Pricing is not publicly documented and varies by negotiation
Odoo CRM gotchas
Odoo.sh version gating blocks assisted migrations from trial
Enterprise modules fail to install on Community after database restore
Custom module view inheritance breaks between Odoo major versions
Custom fields risk losing their application context on Community
API access for Community is gated behind the Custom Plan
Pair-specific challenges
Migration approach
Discovery and export audit
We request access to the Plezi account and run a full object audit across Contacts, Companies, Campaigns, Landing Pages, Forms, Smart Campaigns, Workflows, Marketing Assets, Users, Tags, and Scoring Profiles. We validate which objects have data, which have custom fields, and which are actively used versus deprecated. We review the current Plezi contract for any annual commitment implications and confirm the customer has a current Odoo CRM instance or plans to provision one before migration. The discovery output is a written migration scope with record counts per object and a list of any fields that require manual API validation due to Plezi's limited public documentation.
Odoo CRM readiness assessment
We assess the destination Odoo CRM environment: existing custom fields, lead stage configuration, user accounts, and any installed integrations. If the Odoo ERP includes Inventory, Accounting, or Purchase modules, we coordinate with the customer to map product and company schema overlaps before migration. If no Odoo instance exists, we recommend provisioning a trial or sandbox environment for mapping validation. We design the custom Lead fields lifecycle_stage__c and scoring_profile__c in Odoo Studio before any data is imported, and configure any tag normalization rules needed for the tag migration.
Owner and User reconciliation
We extract every distinct Plezi user referenced on Contacts, Companies, and Campaigns and match by email against the Odoo CRM User table. Any Plezi owner without a matching Odoo User goes to a reconciliation queue. The customer's Odoo admin provisions missing users with appropriate access rights before record import begins. Owner references on records are required for import, so this step gates the entire migration sequence.
Sandbox migration and reconciliation
We run the full migration into the Odoo Sandbox environment in dependency order: Companies first (to satisfy relational references), then Leads (with lifecycle_stage__c and scoring_profile__c populated), Campaigns, Tags, Email Templates, and finally Products if applicable. Each phase emits a row-count reconciliation report. The customer's admin reviews 25-50 randomly sampled records against the Plezi source for field-level accuracy, with particular focus on scoring_profile data integrity and tag assignment. Mapping corrections are applied in the sandbox before production migration begins.
Production migration in dependency order
We run production migration using the validated sandbox mapping. Companies import first, followed by Leads with all custom fields resolved. Campaigns import with cost and channel metadata. Tags attach to the corresponding Lead and Company records. Email templates load into the Odoo mail.template model. Smart Campaign and Workflow intent are delivered as a written automation inventory document for manual Odoo Studio rebuild. Landing page and form configuration is delivered as a separate document for rebuild in Odoo Website or Survey. A cutover delta pass captures any records modified during the migration window before Odoo becomes the system of record.
Cutover, validation, and automation rebuild handoff
We freeze Plezi writes during the cutover window and enable Odoo CRM as the system of record. We deliver the Smart Campaign and Workflow inventory document to the customer's admin team with step-by-step Odoo Studio rebuild instructions. We deliver the landing page and form configuration document separately with module recommendations (Odoo Website for landing pages, Odoo Survey for forms). We support a one-week hypercare window for reconciliation issues. We do not rebuild Plezi Smart Campaigns or Workflows as Odoo Studio automations inside the migration scope; that is a separate engagement or an internal admin task.
Platform deep dives
Plezi
Source
Strengths
Weaknesses
Odoo 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 Plezi and Odoo 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
Plezi: Not publicly documented — typical SaaS limits assumed and confirmed during scoping.
Data volume sensitivity
Plezi 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 Plezi to Odoo CRM migration scoping. Not seeing yours? Book a call.
Walk through your Plezi to Odoo 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 Plezi
Other ways to arrive at Odoo 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.