CRM migration
Field-level mapping, validation, and rollback between Mazrica Sales (formerly Senses) and Odoo CRM. We move data and schema; workflows are rebuilt natively in Odoo CRM.
Mazrica Sales (formerly Senses)
Source
Odoo CRM
Destination
Compatibility
8 of 12
objects map 1:1 between Mazrica Sales (formerly Senses) and Odoo CRM.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from Mazrica Sales (formerly Senses) to Odoo CRM is a cross-platform migration from a Japan-market SFA to an open-source ERP with an integrated CRM module. The core challenge is the Senses rebrand: Mazrica still hosts its v1 REST API at senses-open-api.mazrica.com, so we explicitly validate endpoint paths during extraction to avoid routing failures caused by stale internal links. We map Mazrica Contacts, Companies, and Opportunities to their Odoo equivalents, pre-create any Odoo Studio custom models to host Mazrica Custom Object data, and flag that workflow automations and saved reports do not migrate through either platform API. Odoo CRM on its Community edition is free; the Enterprise edition charges per user, making the destination licensing model substantially more predictable than Mazrica's ¥27,500/month Starter floor.
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 Mazrica Sales (formerly Senses) 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.
Mazrica Sales (formerly Senses)
Contact
Odoo CRM
Contact
1:1Mazrica Sales Contacts map to Odoo Contact (res.partner with customer_rank > 0). First name, last name, email, phone, mobile, job title, and lifecycle stage all migrate as typed fields. Lifecycle stage (configurable in Mazrica) maps to a custom selection field in Odoo; we pre-create the field definition and enumerate every unique stage value encountered in the source export so no stage value is silently dropped during import.
Mazrica Sales (formerly Senses)
Company
Odoo CRM
Company
1:1Mazrica Sales Companies map to Odoo Company (res.partner with company_type = company). Company name, domain, industry, employee count, annual revenue, and external company data (press releases, securities filings) migrate as custom fields on the Company partner record. The Mazrica Company ID is preserved in a custom odoo_mazrica_id__c field for reconciliation.
Mazrica Sales (formerly Senses)
Opportunity
Odoo CRM
Opportunity
1:1Mazrica Sales Opportunities (案件) map to Odoo CRM Lead (crm.lead). Deal amount, expected close date, stage name, owner, and pipeline assignment migrate. Odoo Lead is the unified pipeline object in Odoo CRM; we set the type field to opportunity to indicate it is a qualified deal rather than a raw lead. Custom pipeline stages from Mazrica become Odoo stage records within the CRM pipeline configuration.
Mazrica Sales (formerly Senses)
Pipeline Stages
Odoo CRM
CRM Stages
lossyMazrica's custom pipeline stages (draggable cards in the Kanban) map to Odoo CRM Stage records within a configured Sales Pipeline. We create Odoo stage records with matching sequence order, name, and probability percentages before any Opportunity data is imported. Lost and Won states in Mazrica map to the corresponding Odoo terminal stages.
Mazrica Sales (formerly Senses)
Activity (行動)
Odoo CRM
Activity + Note
1:1Mazrica Sales Activities (calls, emails, meetings, tasks, notes) map to Odoo's mail.message and note.note records. Call and meeting activities become calendar.event with attendee links; task activities become mail.activity. Email body and notes migrate as mail.message with subtype comment. Owner assignment resolves by matching the Mazrica owner email to an Odoo User record. Activity timestamps are preserved to maintain the chronological timeline in the Odoo chatter.
Mazrica Sales (formerly Senses)
Custom Object
Odoo CRM
Custom Model (Studio)
lossyMazrica Sales Custom Objects use the CustomObjectSetting and CustomObjects API endpoints with their own user-defined schema. Odoo has no native equivalent to a user-defined Custom Object; we pre-create an Odoo Studio model with matching field names and types before migration, then import data via the Odoo JSON-RPC API. This step must complete before any Custom Object data is migrated so that the destination model exists when the API call is made.
Mazrica Sales (formerly Senses)
User/Owner
Odoo CRM
User
1:1Mazrica Sales Users (Owners) carry role and team assignments. We extract every distinct owner referenced on Contacts, Companies, Opportunities, and Activities and match by email against the destination Odoo User list. Any Owner without a matching Odoo User is held in a reconciliation queue for the customer's admin to provision before record import resumes. Orphaned ownership chains where the owning user does not exist in Odoo are flagged with a placeholder user during migration.
Mazrica Sales (formerly Senses)
Lifecycle Stage
Odoo CRM
Custom Selection Field
lossyLifecycle Stage is a configurable property on Mazrica Sales Contacts exposed via the LifecycleStageSetting API endpoint. Odoo has no native lifecycle stage field; we create a custom selection field on res.partner during schema setup and enumerate every unique stage value from the source export. This preserves the stage-driven segmentation that drives Mazrica's automation triggers, allowing the Odoo admin to rebuild equivalent automation rules post-migration.
Mazrica Sales (formerly Senses)
Company External Data
Odoo CRM
Custom Fields on Company
1:1Mazrica Sales Company records include financial info, press releases, and securities filings pulled from external sources (240万社以上の企業データベース). This structured data maps to custom fields on the Odoo Company (res.partner) record. The depth of external data coverage in Odoo depends on whether the customer licenses an Odoo partner data app or uses a third-party data provider; we migrate what exists in the source export without guaranteeing equivalent enrichment in Odoo.
Mazrica Sales (formerly Senses)
Attachments
Odoo CRM
Not migrated
1:1File attachments associated with Mazrica Sales Contacts or Opportunities are not exposed via the documented v1 REST API. We do not migrate binary attachments through the API path. Customers should export these separately through the Mazrica Sales UI before migration scoping closes, and re-upload them manually in Odoo or through a separate file migration process.
Mazrica Sales (formerly Senses)
Reports/Dashboards
Odoo CRM
Not migrated
1:1Saved reports and dashboard configurations are not accessible via the Mazrica Sales public API. We do not migrate analytics artifacts. We deliver a written inventory of every saved report and dashboard configuration in the source system so that the customer's Odoo admin can rebuild them using Odoo's reporting engine post-migration.
Mazrica Sales (formerly Senses)
Tag / Custom Property
Odoo CRM
Tags
lossyMazrica Sales tags stored as multi-checkbox custom properties migrate to Odoo Contact Tags (mail.message.category). Tags used for content classification or lead scoring migrate as tags on the relevant record type. The customer chooses tag strategy during scoping.
| Mazrica Sales (formerly Senses) | Odoo CRM | Compatibility | |
|---|---|---|---|
| Contact | Contact1:1 | Fully supported | |
| Company | Company1:1 | Fully supported | |
| Opportunity | Opportunity1:1 | Fully supported | |
| Pipeline Stages | CRM Stageslossy | Fully supported | |
| Activity (行動) | Activity + Note1:1 | Fully supported | |
| Custom Object | Custom Model (Studio)lossy | Fully supported | |
| User/Owner | User1:1 | Fully supported | |
| Lifecycle Stage | Custom Selection Fieldlossy | Fully supported | |
| Company External Data | Custom Fields on Company1:1 | Fully supported | |
| Attachments | Not migrated1:1 | Not supported | |
| Reports/Dashboards | Not migrated1:1 | Not supported | |
| Tag / Custom Property | Tagslossy | 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.
Mazrica Sales (formerly Senses) gotchas
Rebrand from Senses to Mazrica Sales creates API path ambiguity
Minimum 5-user contract requirement on Starter tier
Annual contract commitment with no free trial
AI features require historical data volume to function
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 API endpoint validation
We audit the source Mazrica Sales account via the senses-open-api.mazrica.com v1 REST API, extracting Contacts, Companies, Opportunities, Activities, Custom Objects, Lifecycle Stages, and owner records. We explicitly validate that the API base URL and all endpoint paths resolve correctly (accounting for the Senses-era naming artifacts) before extraction begins. We also audit custom object schemas via the CustomObjectSetting endpoint and identify all unique lifecycle stage values. This step produces a written data inventory, record counts per object, and a flag for any Senses/Mazrica path discrepancies found during extraction.
Schema design and Odoo Studio custom model creation
We design the destination schema in Odoo. This includes creating any required Odoo Studio custom models to host Mazrica Custom Object data, defining custom fields for lifecycle stage values on res.partner, and configuring CRM pipeline stages to match the Mazrica pipeline structure. Odoo Studio is used to create models and fields before production migration begins. The schema is validated in an Odoo sandbox or test database before any data is imported.
Sandbox migration and reconciliation
We run a full migration into an Odoo test database using production-equivalent data volume. The customer's Odoo admin reviews record counts, spot-checks 25-50 records against the Mazrica Sales source, and validates that lifecycle stages, pipeline stages, and custom object data rendered correctly. Any field mapping corrections and custom field enumeration updates happen here. The customer signs off the schema and mapping before production migration begins.
Owner reconciliation and User provisioning
We extract every distinct Mazrica Sales Owner referenced on Contacts, Companies, Opportunities, and Activities and match by email against the destination Odoo User list. Owners without a matching Odoo User go to a reconciliation queue. The customer's Odoo admin provisions any missing Users (active or inactive depending on whether the original Mazrica user is still active). Migration cannot proceed past this step because OwnerId references are required on most Odoo CRM records.
Production migration in dependency order
We run production migration in record-dependency order: Users (manual provisioning, validated), Companies (res.partner with company_type = company), Contacts (with lifecycle stage custom field populated), Opportunities (crm.lead with type = opportunity, stage_id resolved, owner resolved), Activity history (mail.message, calendar.event, mail.activity via JSON-RPC), Custom Objects (using pre-created Odoo Studio models via JSON-RPC). Each phase emits a row-count reconciliation report before the next phase begins. We handle the Senses API path for all extraction calls and validate HTTP 200 responses before processing each batch.
Cutover, validation, and automation rebuild handoff
We freeze Mazrica Sales writes during cutover, run a final delta migration of any records modified during the migration window, then enable Odoo CRM as the system of record. We deliver the Workflow and Automation inventory document to the customer's admin team with a written recommendation for each Odoo Studio Automated Action equivalent. We support a one-week hypercare window where we resolve reconciliation issues raised by the customer's sales team. We do not rebuild Mazrica Sales Workflows or Next Action triggers as Odoo Studio Automated Actions inside the migration scope; that is a separate engagement.
Platform deep dives
Mazrica Sales (formerly Senses)
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 Mazrica Sales (formerly Senses) 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
Mazrica Sales (formerly Senses): Not publicly documented.
Data volume sensitivity
Mazrica Sales (formerly Senses) 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 Mazrica Sales (formerly Senses) to Odoo CRM migration scoping. Not seeing yours? Book a call.
Walk through your Mazrica Sales (formerly Senses) 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 Mazrica Sales (formerly Senses)
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.