CRM migration

Migrate from Mazrica Sales (formerly Senses) to Twenty CRM

Field-level mapping, validation, and rollback between Mazrica Sales (formerly Senses) and Twenty CRM. We move data and schema; workflows are rebuilt natively in Twenty CRM.

Mazrica Sales (formerly Senses) logo

Mazrica Sales (formerly Senses)

Source

Twenty CRM

Destination

Twenty CRM logo

Compatibility

80%

8 of 10

objects map 1:1 between Mazrica Sales (formerly Senses) and Twenty CRM.

Complexity

BStandard

Timeline

3-5 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Mazrica Sales to Twenty CRM is a shift from a Japan-market-native AI-assisted SFA platform to an open-source CRM with a developer-first API and a minimal UI. The migration requires field-level remapping of Japanese-language contact and company properties, resolution of the Senses-era API path artifacts that persist in the Mazrica Sales v1 endpoints, and preservation of lifecycle stage values that drive automation in Mazrica Sales but must be stored as custom fields in Twenty. We sequence Contact and Company imports before Opportunity to satisfy lookup dependencies, preserve activity timelines against the correct parent records, and flag every Custom Object schema for manual recreation in Twenty because Twenty's custom object model is user-defined and not directly migrated. We do not migrate Mazrica Sales workflows, automation rules, or saved reports; we deliver a written inventory of these artifacts for your admin to rebuild in Twenty's settings.

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

Mazrica Sales (formerly Senses) logo

Mazrica Sales (formerly Senses)

What's pushing teams away

  • Feature breadth creates a steep learning curve — G2 reviewers note that having all capabilities available can make the tool feel complex to navigate for some users.
  • Pricing at higher tiers (Growth at ¥110,000/month, Enterprise at ¥330,000/month) scales into significant annual commitments with no published free trial to validate fit before paying.
  • AI order forecasting and risk analysis features require substantial historical deal data to produce useful outputs — teams with limited CRM history report underwhelming AI recommendations initially.

Choosing

Twenty CRM logo

Twenty CRM

What's pulling them in

  • Top open-source CRM on GitHub with 40.6K stars, giving teams full source code access and infrastructure ownership without per-feature licensing surprises.
  • Free self-hosting under AGPL-3.0 means unlimited users and custom objects for the cost of cloud infrastructure alone, typically $20–100/month.
  • Pricing page explicitly mocks competitors for charging add-on fees for API access, webhooks, and workflows — transparency that resonates with RevOps teams burned by Salesforce.
  • Unlimited custom objects and fields with no price impact, letting teams shape the data model to their business rather than forcing business into rigid schemas.
  • Modern TypeScript/React/PostgreSQL stack means developer-led teams can extend, self-host, or integrate without fighting legacy architecture.

Object mapping

How Mazrica Sales (formerly Senses) objects map to Twenty CRM

Each row shows how a Mazrica Sales (formerly Senses) object lands in Twenty 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

maps to

Twenty CRM

Person

1:1
Fully supported

Mazrica Sales Contacts map to Twenty CRM Person records. We map standard fields (name, email, phone, address) and preserve the lifecycle stage value from Mazrica Sales as a custom field (original_lifecycle_stage__c) on the Person record for audit and reporting. Japanese-language name fields (姓, 名) map to givenName and familyName in Twenty's schema. Owner assignment from Mazrica Sales resolves to a Twenty User record by email match.

Mazrica Sales (formerly Senses)

Company

maps to

Twenty CRM

Company

1:1
Fully supported

Mazrica Sales Company records map to Twenty CRM Company records. The company domain becomes the Website field. Financial info and external data sources from Mazrica Sales do not have direct Twenty equivalents; we map name, website, industry, and address fields. Any enrichment data (press releases, securities filings) that exists as structured fields in Mazrica maps to custom fields in Twenty that must be created during schema setup.

Mazrica Sales (formerly Senses)

Opportunity (案件)

maps to

Twenty CRM

Opportunity

1:1
Fully supported

Mazrica Sales Opportunities map to Twenty CRM Opportunity records. We preserve deal amount, expected close date, and stage name. Custom pipeline stage names in Mazrica become Opportunity stage values in Twenty; these require manual configuration in Twenty's settings before migration. Owner assignments migrate by email-to-User resolution.

Mazrica Sales (formerly Senses)

Pipeline Stages

maps to

Twenty CRM

Opportunity Stages

lossy
Fully supported

Each custom pipeline stage defined in Mazrica Sales becomes a named Stage value in Twenty's Opportunity settings. We extract the stage name and probability percentage (if set) from the Mazrica pipeline configuration during scoping and create a written stage mapping document. The customer configures the stages in Twenty before the Opportunity import phase runs.

Mazrica Sales (formerly Senses)

Activity (行動)

maps to

Twenty CRM

Activity

1:1
Fully supported

Mazrica Sales Activities (calls, emails, meetings, tasks, notes) map to Twenty CRM Activity records. We preserve the activity type, date, owner, and related note content. The parent record reference (Contact or Opportunity) resolves to the corresponding Person or Opportunity in Twenty using the ID mapping table built during the Contact and Opportunity import phases.

Mazrica Sales (formerly Senses)

Lifecycle Stage

maps to

Twenty CRM

Custom Field on Person

lossy
Fully supported

Lifecycle Stage is a configurable property in Mazrica Sales exposed via the LifecycleStageSetting API. We map existing stage values to a custom field on Twenty Person records (lifecycle_stage__c). The stage values are preserved as-is; Twenty does not have a native lifecycle stage model, so the customer decides whether to use the original values as-is or remap them to a simplified set during the migration scoping phase.

Mazrica Sales (formerly Senses)

Custom Object

maps to

Twenty CRM

Custom Object

1:1
Fully supported

Mazrica Sales custom objects with user-defined schemas map to Twenty CRM custom objects. We extract the schema definition (field names, types, lookup relationships) from the CustomObjectSetting API during scoping. The customer creates the equivalent custom object schema in Twenty's settings before migration; we do not auto-provision custom objects in Twenty because its custom object model requires manual definition in the UI or via configuration file.

Mazrica Sales (formerly Senses)

User/Owner

maps to

Twenty CRM

User

1:1
Fully supported

Mazrica Sales Users with roles and team assignments map to Twenty CRM User records. We resolve owners by email match. Any Mazrica Sales User without a matching Twenty User goes to a reconciliation queue for the customer to provision before record import resumes. Inactive users in Mazrica Sales are flagged separately for decision on whether to provision as inactive users in Twenty.

Mazrica Sales (formerly Senses)

Product

maps to

Twenty CRM

Product

1:1
Fully supported

If Mazrica Sales has product records (SKU, name, price), they map to Twenty CRM Product records. We extract product name, code, and standard price during the scoping phase and create a product mapping table. Products are imported before any Opportunity records that reference them to satisfy the lookup dependency.

Mazrica Sales (formerly Senses)

Attachment

maps to

Twenty CRM

Not migrated

1:1
Fully supported

Binary file attachments associated with Contacts or Opportunities in Mazrica Sales are not accessible via the documented v1 REST API. We do not migrate attachments through the API path. We advise customers to export attachments via Mazrica Sales's native export feature before migration and re-upload them manually in Twenty or via the Twenty API post-migration.

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.

Mazrica Sales (formerly Senses) logo

Mazrica Sales (formerly Senses) gotchas

Medium

Rebrand from Senses to Mazrica Sales creates API path ambiguity

Medium

Minimum 5-user contract requirement on Starter tier

Medium

Annual contract commitment with no free trial

Low

AI features require historical data volume to function

Twenty CRM logo

Twenty CRM gotchas

High

Import order is enforced and critical

High

Export limited to 20,000 records and visible columns only

Medium

Soft-deleted records count toward uniqueness and trigger restores

Medium

API rate limits cap at 200 req/min on Organization tier

Low

No native email sequences — follow-up cadences require external tools

Pair-specific challenges

  • Senses-era API path artifacts persist in Mazrica Sales v1

    The platform rebranded from Senses to Mazrica Sales in 2023 but the API base URL still uses senses-open-api.mazrica.com and internal documentation mixes both product names. We explicitly validate the API version and endpoint paths during scoping to avoid routing errors. If stale internal links or cached documentation references cause an incorrect path, the migration job fails silently with a 404. We use the validated base URL throughout and recommend the customer confirm the current API version during discovery.

  • Japanese-language fields require encoding validation

    Contacts and Companies in Mazrica Sales commonly store Japanese characters in name fields, addresses, and notes. Twenty CRM's database encoding must handle UTF-8 throughout. We validate that the destination Twenty instance's database collation supports full-width Japanese characters before migration. If the self-hosted instance uses a default collation that truncates or mangles Japanese text, we flag the encoding issue and recommend a database migration with the correct character set before proceeding with the data migration.

  • Custom pipeline stages require manual recreation in Twenty

    Mazrica Sales allows custom pipeline stage names beyond the standard set. Twenty CRM uses a fixed stage configuration model. We extract every distinct stage name from the Mazrica pipeline during scoping and deliver a written stage mapping document. The customer creates the corresponding stages in Twenty's Opportunity settings before the migration phase runs. If custom stages are not pre-created in Twenty, Opportunities will be imported with a default stage or fail validation.

  • AI deal scores and forecasting data have no Twenty equivalent

    Mazrica Sales stores AI-generated deal scores and risk analysis as opportunity-level fields. Twenty CRM has no native AI feature layer and no fields that directly receive AI score outputs. We flag AI-related opportunity fields during scoping and preserve them as custom numeric fields in Twenty (e.g., ai_deal_score__c, risk_rating__c). The customer decides whether to maintain these values manually, connect an external AI scoring tool, or treat them as historical reference data only.

  • Workflows, automations, and OCR scan data do not migrate

    Mazrica Sales workflow rules, automation triggers, and OCR business card scan history are platform-internal automation and enrichment artifacts that have no equivalent in Twenty CRM's automation model. We do not migrate them. We deliver a written inventory of every active workflow in Mazrica Sales with its trigger, conditions, and actions for the customer's admin to rebuild in Twenty's settings. OCR scan logs (名片的 scan records) are enrichment metadata only and are not exported via the API.

Migration approach

Six steps for a successful Mazrica Sales (formerly Senses) to Twenty CRM data migration

  1. Discovery and API path validation

    We audit the source Mazrica Sales portal via the v1 REST API (senses-open-api.mazrica.com) across record counts for Contacts, Companies, Opportunities, Activities, Custom Objects, and Lifecycle Stages. We validate the API version, confirm the correct base URL (noting the Senses-era artifact), and extract the pipeline stage configuration. We pair this with a Twenty CRM deployment check: confirming whether the instance is self-hosted (Docker, railway, PikaPods) or using Twenty's cloud offering, and validating the database encoding for Japanese character support. The discovery output is a written migration scope and a data quality report flagging any records with missing required fields.

  2. Schema setup and stage configuration

    We design the destination schema in Twenty CRM. This includes creating any custom fields required (original_lifecycle_stage__c on Person, ai_deal_score__c and risk_rating__c on Opportunity, and any custom fields mapped from Mazrica enrichment data). The customer configures the pipeline stages in Twenty using the stage mapping document we deliver. We do not auto-provision custom objects in Twenty because the UI-based custom object creation must be done by the customer's admin. We confirm all schema elements are created and validated before data migration begins.

  3. Owner and user reconciliation

    We extract every distinct Owner referenced on Contact, Company, Opportunity, and Activity records and match by email against the Twenty CRM User table. Owners without a matching Twenty User go to a reconciliation queue. The customer provisions any missing Users in Twenty (active or inactive based on whether the original Mazrica user is still active in the sales team). This step is a prerequisite for record import because OwnerId references are required on standard objects in Twenty.

  4. Contact and Company import in dependency order

    We run Company import first because Contact records in Mazrica Sales reference companies and Twenty resolves the company lookup at insert time. Contact records follow, with Japanese-language name fields validated for UTF-8 encoding and lifecycle stage values mapped to the custom field. We use batch chunking to respect any rate limits on the Twenty API and emit a row-count reconciliation report after each phase.

  5. Opportunity and Activity migration

    Opportunities are imported after Contacts and Companies so that the company and contact lookups are satisfied. Custom pipeline stage names are mapped to the Twenty stage values configured in step 2. Activity records (calls, emails, meetings, tasks) follow, with parent record references resolved to the corresponding Person or Company in Twenty using the ID mapping table built during the earlier phases. Large activity histories are chunked and retried with exponential backoff on rate-limit responses.

  6. Cutover, validation, and automation inventory handoff

    We freeze writes to Mazrica Sales during cutover, run a final delta migration of any records modified during the migration window, then enable Twenty CRM as the system of record. We deliver a row-count reconciliation report comparing source and destination record counts. We deliver the workflow and automation inventory document to the customer's admin team with recommended rebuild steps in Twenty's settings. We support a one-week hypercare window where we resolve any reconciliation issues. We do not rebuild Mazrica Sales workflows as Twenty automations inside the migration scope.

Platform deep dives

Context on both ends of the pair

Mazrica Sales (formerly Senses) logo

Mazrica Sales (formerly Senses)

Source

Strengths

  • AI-assisted deal scoring, risk analysis, and order forecasting built directly into the opportunity workflow.
  • Card-based pipeline UI with drag-and-drop stage changes that reduces friction for sales reps on the move.
  • OCR名片 scanning and AI-powered deduplication for rapid contact creation from field encounters.
  • Native Japanese-language product and support team — no localization gap for domestic SMBs.
  • Workato pre-built connector and iPaaS support for teams with existing Japanese cloud toolchains.

Weaknesses

  • Feature-rich interface creates a learning curve — G2 reviewers note complexity for some user segments.
  • Minimum 5-user contract on Starter tier may be costly for very small sales teams.
  • No published free trial or free tier to evaluate the product before committing to an annual contract.
  • AI features require accumulated historical deal data to produce meaningful outputs — limited value at initial deployment.
  • Binary attachments and saved reports are not accessible via the public API.
Twenty CRM logo

Twenty CRM

Destination

Strengths

  • AGPL-3.0 open-source license with full source code on GitHub — no vendor lock-in, no sunset risk.
  • Unlimited users and unlimited custom objects on self-hosted, with no feature gating based on headcount.
  • REST and GraphQL APIs available on all paid tiers, not locked behind an enterprise add-on fee.
  • MCP server and webhooks shipped as standard features, not premium upgrades.
  • Modern PostgreSQL-backed data model that developer teams can query, extend, and self-host.

Weaknesses

  • Recent v1.0 release means limited production hardening compared to CRMs with multi-year operational track records.
  • No native email sequencing or sales engagement tools — follow-up cadences require a separate platform.
  • No native two-way email sync or inbox integration, requiring third-party connectors for full activity logging.
  • Self-hosting 'free' pricing hides real infrastructure and DevOps costs that stack up over time.
  • Workflow automation is functional but lacks the complexity needed for sophisticated multi-step sales motions.

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 Mazrica Sales (formerly Senses) and Twenty 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

    Mazrica Sales (formerly Senses): Not publicly documented.

  • Data volume sensitivity

    A

    Mazrica Sales (formerly Senses) exposes a bulk API — large-volume migrations stream efficiently.

Estimator

Estimate your Mazrica Sales (formerly Senses) to Twenty 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 Mazrica Sales (formerly Senses) to Twenty CRM data migrations

Answers to the questions buyers ask most during Mazrica Sales (formerly Senses) to Twenty CRM migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Mazrica Sales (formerly Senses) to Twenty CRM migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Migrations under 10,000 Contacts, 3,000 Opportunities, and no custom objects typically complete in three to five weeks. Migrations with multiple custom objects, large activity histories (over 200,000 records), or Japanese-character encoding edge cases requiring pre-processing extend to six to ten weeks. The migration timeline also depends on how quickly the customer provisions Twenty Users for owner reconciliation and configures the pipeline stages in Twenty's settings before the import phases begin.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Mazrica Sales (formerly Senses).
Land in Twenty 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