CRM migration
Field-level mapping, validation, and rollback between Barantum CRM and Odoo CRM. We move data and schema; workflows are rebuilt natively in Odoo CRM.
Barantum CRM
Source
Odoo CRM
Destination
Compatibility
8 of 12
objects map 1:1 between Barantum CRM and Odoo CRM.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from Barantum CRM to Odoo CRM is a migration from a locally-focused Indonesian omnichannel platform to a globally-scaled open-source ERP with CRM as one integrated module. Barantum tightly couples WhatsApp Business conversations to contact records and prices by 3-user bundles; Odoo uses per-user licensing and separates messaging into the Discuss module. We extract WhatsApp conversation threads as standalone notes before import, re-attach them to the correct Odoo Contact record, and map Barantum pipeline stages to Odoo stages via a customer-approved stage mapping table. Barantum's workflow automation rules and chatbot autoresponders do not export via API; we document every rule for manual reconstruction in Odoo Studio. Custom fields enumerate during discovery and migrate to Odoo custom fields of matching data type. Odoo's multi-company and multi-currency capabilities are activated during schema configuration if the customer's business spans Indonesian and international operations.
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 Barantum 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.
Barantum CRM
Contact
Odoo CRM
Contact
1:1Barantum Contact records map to Odoo Contact. Standard fields (name, phone, email, website) migrate directly. WhatsApp profile linkage stored on Barantum contacts migrates to the WhatsApp field on Odoo Contact if the destination Odoo instance has a WhatsApp gateway app installed; otherwise it is preserved in a custom field barantum_whatsapp_id__c. Mobile number formatting is normalized from Indonesian format (08xx) to E.164 during transform to ensure Odoo validation accepts the value.
Barantum CRM
Company
Odoo CRM
Company
1:1Barantum Company records map to Odoo Company (res.partner with is_company=True). Company-contact parent relationships are resolved by matching the company name field: we create the Odoo Company record first, then link child Contact records via the parent_id field on the Contact. If multiple Barantum contacts share the same company name, we apply a company dedupe rule during import to avoid duplicate Company records in Odoo.
Barantum CRM
Deal
Odoo CRM
CRM Opportunity
1:1Barantum Deals map to Odoo CRM Opportunity. Deal name becomes Opportunity name; deal value maps to planned_revenue; expected close date maps to date_deadline. The Barantum pipeline stage assignment maps to an Odoo Stage via a customer-approved mapping table created during scoping. Closed-won and closed-lost statuses from Barantum map to Odoo stage categories won and lost respectively.
Barantum CRM
Pipeline Stage
Odoo CRM
Stage
lossyBarantum pipeline stages are enumerated during discovery and mapped to Odoo CRM stages. Odoo stages belong to a single pipeline per sales team by default; if Barantum uses multiple pipelines, we configure Odoo Sales Teams (crm.team) with separate stage sequences. Stage probabilities from Barantum are stored in custom fields on Odoo stages if the customer requires them, since Odoo stage probability is configured per stage but not exposed as a standard field on the Opportunity view.
Barantum CRM
Lead
Odoo CRM
Lead
1:1Barantum Leads map to Odoo CRM Lead. Lead source, status, and score fields from Barantum migrate to Odoo custom fields (x_barantum_source, x_barantum_status, x_barantum_score) since Odoo CRM Lead does not have native equivalents. Leads are not converted to Opportunities during migration; the customer decides the conversion cadence post go-live.
Barantum CRM
Ticket
Odoo CRM
Helpdesk Ticket
1:1Barantum Tickets map to Odoo Helpdesk Ticket if the destination Odoo instance includes the helpdesk app; otherwise they map to CRM Lead records tagged with a custom ticket flag. Ticket status (open, in_progress, resolved, closed) maps to Odoo ticket_stage via a mapping table. Agent assignment migrates by email matching to Odoo User. Conversation history on the ticket migrates as Odoo message records on the ticket.
Barantum CRM
Meeting
Odoo CRM
Calendar Event
1:1Barantum Meeting records map to Odoo Calendar Event. Title, scheduled time, attendees, and outcome notes migrate directly. Recurring meetings are enumerated and each occurrence is imported as a separate Calendar Event linked to the same CRM record (Lead or Opportunity). Odoo calendar synchronization with external calendars (Google, Outlook) is configured separately post-migration.
Barantum CRM
WhatsApp Conversation
Odoo CRM
Note (linked to Contact)
1:manyBarantum WhatsApp chat threads stored as conversation logs linked to Contact records are extracted as separate note entries during migration. Each message in the thread becomes a line in an Odoo Note (using the note.note model) with the message body, timestamp, sender (agent or customer), and a link to the migrated Contact via a Many2one reference. This approach is necessary because Odoo does not have a native WhatsApp conversation object; conversation threads are preserved as readable note history rather than a threaded chat interface.
Barantum CRM
Call Record
Odoo CRM
Log Activity
1:1Barantum VoIP call logs (call direction, duration, agent extension, recording URL) map to Odoo CRM Log Activities with activity_type set to Phone Call. Call disposition migrates to a custom field x_call_disposition. Recording links are preserved as URLs in a custom field x_recording_url on the activity; the actual audio files are exported as attachments and re-linked post-migration.
Barantum CRM
User / Agent
Odoo CRM
User
1:1Barantum user and agent records are mapped to Odoo User records by email address. We extract the role (admin, agent, manager) and extension number from Barantum and store them in Odoo user fields or custom fields. Odoo User provisioning (creating login credentials) is the customer's responsibility during the migration window; we provide a User mapping worksheet that lists every Barantum user and the recommended Odoo User ID to assign.
Barantum CRM
Custom Field
Odoo CRM
Custom Field
lossyBarantum custom fields added to contacts, companies, deals, tickets, or other objects are enumerated during discovery and mapped to Odoo custom fields of matching data type. Text fields map to char or text; numeric fields map to float or integer; date fields map to date; dropdown fields map to selection. Odoo custom fields use the x_ prefix in the database and are created via Odoo Studio or programmatically before migration begins.
Barantum CRM
Workflow Automation
Odoo CRM
Odoo Studio (manual rebuild)
lossyBarantum workflow automation rules (auto-assignment, auto-reply, SLA timers) are not exposed through the public API and cannot be migrated programmatically. We enumerate every active workflow during discovery, document its trigger, conditions, and actions in a Workflow Audit Worksheet, and hand this to the customer for manual rebuild in Odoo Studio. Odoo automated actions, server actions, and base_automation rules replicate the Barantum logic; we provide a mapping table that translates each Barantum action type to its Odoo equivalent.
| Barantum CRM | Odoo CRM | Compatibility | |
|---|---|---|---|
| Contact | Contact1:1 | Fully supported | |
| Company | Company1:1 | Fully supported | |
| Deal | CRM Opportunity1:1 | Fully supported | |
| Pipeline Stage | Stagelossy | Fully supported | |
| Lead | Lead1:1 | Fully supported | |
| Ticket | Helpdesk Ticket1:1 | Fully supported | |
| Meeting | Calendar Event1:1 | Fully supported | |
| WhatsApp Conversation | Note (linked to Contact)1:many | Fully supported | |
| Call Record | Log Activity1:1 | Fully supported | |
| User / Agent | User1:1 | Fully supported | |
| Custom Field | Custom Fieldlossy | Fully supported | |
| Workflow Automation | Odoo Studio (manual rebuild)lossy | 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.
Barantum CRM gotchas
WhatsApp conversation history coupling to contacts
Workflow automations do not export via API
Per-3-users pricing creates minimum seat tiers
Enterprise customizations are man-days priced
API key authentication lacks granular scope controls
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 Barantum API enumeration
We audit the source Barantum CRM portal via its REST API, enumerating all object types (Contacts, Companies, Deals, Leads, Tickets, Meetings, Activities, Users), custom fields, pipeline stages, active workflows, and WhatsApp conversation thread counts. We request a dedicated migration API key scoped to read-only endpoints where possible. We extract the workflow automation list and the full WhatsApp conversation archive in parallel with standard record exports. The discovery output is a written Migration Scope Document that lists every object, record count, and the estimated transform complexity for each.
Odoo environment provisioning and schema design
We provision the destination Odoo environment (Odoo.sh cloud or on-premise) with the CRM app installed and any additional apps required (helpdesk, calendar, note). We configure the pipeline structure: stages, sales teams, and stage probabilities mapped from the Barantum discovery output. We create custom fields on Contact, Company, Opportunity, and Lead using the x_ prefix convention. Custom fields are typed (char, integer, float, date, selection) based on the Barantum field data type, and validation rules are applied to match Barantum's original field requirements. Schema is validated in a staging environment before production migration begins.
WhatsApp conversation extraction and transform
We extract every WhatsApp conversation thread from Barantum and transform it into Odoo Note records. Each message in the thread becomes a separate note entry with the sender, timestamp, and message body. The notes are batched by contact_id and linked to the migrated Contact record via a Many2one relationship. This extraction runs concurrently with the standard record export to avoid extending the critical path. Media attachments (images, documents shared via WhatsApp) are exported separately as binary files and linked as Odoo attachments post-migration.
Staging migration and reconciliation
We run a full migration into the Odoo staging environment using production-like data volume. The customer's team reconciles record counts (Contacts in, Companies in, Opportunities in, Tickets in, Notes in), spot-checks 25-50 random records against the Barantum source, and validates the WhatsApp conversation note threading. The customer signs off the staging migration before production migration begins. Any field mapping corrections, stage mapping adjustments, or custom field type corrections happen at this stage.
Production migration in dependency order
We run production migration in record-dependency order: Odoo Users (provisioned by the customer's admin), Companies (from Barantum Companies), Contacts (with parent_id resolved to the Company), Leads, Opportunities (with stage_id, team_id, and user_id resolved), Tickets, Meetings, Call Log Activities, and finally WhatsApp Note history. Each phase emits a row-count reconciliation report before the next phase begins. We run a delta migration at cutover to capture any records created in Barantum during the final validation window.
Workflow audit handoff and post-migration support
We deliver the Workflow Audit Worksheet listing every discovered Barantum automation with its trigger, conditions, actions, and recommended Odoo Studio equivalent. We support a one-week hypercare window where we resolve any data quality issues raised by the customer's team. We do not rebuild Barantum workflows as Odoo automated actions inside the migration scope; that work is documented for the customer's Odoo administrator or an Odoo implementation partner to complete post go-live.
Platform deep dives
Barantum CRM
Source
Strengths
Weaknesses
Odoo CRM
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 4 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 Barantum CRM and Odoo CRM.
Object compatibility
4 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
Barantum CRM: Not publicly documented — typical SaaS limits assumed and confirmed during scoping.
Data volume sensitivity
Barantum CRM 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 Barantum CRM to Odoo CRM migration scoping. Not seeing yours? Book a call.
Walk through your Barantum CRM 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 Barantum CRM
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.