CRM migration

Migrate from Mekari Qontak to Twenty CRM

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

Mekari Qontak logo

Mekari Qontak

Source

Twenty CRM

Destination

Twenty CRM logo

Compatibility

36%

4 of 11

objects map 1:1 between Mekari Qontak and Twenty CRM.

Complexity

BStandard

Timeline

3-5 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Mekari Qontak to Twenty CRM is a structural migration from an Indonesia-centric omnichannel platform to a self-hosted open-source CRM that prioritizes data ownership and schema flexibility. Qontak uses WhatsApp Business API integration as its core differentiator with channel attribution stored at the conversation layer, while Twenty uses a Company-People-Opportunity object model with full custom object support from its first release. We export contacts, companies, deals, and tickets via the Mekari API, transform enumerated pipeline stages and ticket status values into Twenty's configuration-driven stage model, and handle the WhatsApp number offboarding sequence so that message history is extracted before the WABA access is released. Chatbot flows, workflow automations, and broadcast campaign history do not migrate as code; we deliver a detailed flow map and automation inventory for your admin to rebuild in Twenty or an alternative automation layer. Custom objects require pre-creation in Twenty's Settings before CSV import, a constraint that Twenty's own documentation explicitly calls out and that we resolve at schema design time.

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

Mekari Qontak logo

Mekari Qontak

What's pushing teams away

  • Frequent platform updates disrupt established workflows, with at least one reviewer noting significant time spent adapting to new UI patterns.
  • API integration support is slow and difficult to reach when custom webhook or two-way sync errors occur, particularly around WhatsApp message forwarding.
  • Daily and monthly broadcast quota limits throttle high-volume marketing campaigns, forcing customers to either split sends across days or upgrade tiers unexpectedly.
  • Indonesian Rupiah pricing creates currency conversion complexity and unpredictability for international teams or subsidiaries outside Indonesia.

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 Mekari Qontak objects map to Twenty CRM

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

Mekari Qontak

Contact

maps to

Twenty CRM

People

1:1
Fully supported

Qontak Contacts map directly to Twenty People. The primary fields (name, phone, email, address) migrate 1:1. We preserve the Qontak contact source channel (WhatsApp, Instagram, Email, LINE) as a custom field on People since Twenty has no native channel attribution model. Custom Contact properties migrate to Twenty custom fields, which must be pre-created in Settings before import. Phone numbers in Qontak's Indonesian format (08xx) require normalization to international format (62xx) during the transform step.

Mekari Qontak

Company

maps to

Twenty CRM

Company

1:1
Fully supported

Qontak Companies map to Twenty Companies with domain and address fields preserved. The company domain becomes the Website field and is used as a dedupe key. If Qontak stores multiple contacts per company with a primary-company assignment, we resolve the Company record first so that the Company-People relationship is satisfied at import time.

Mekari Qontak

Deal

maps to

Twenty CRM

Opportunity

1:1
Fully supported

Qontak Deals map to Twenty Opportunities. The Qontak dealstage property (enumerated stage names that vary by plan tier) maps to Twenty Opportunity stage values, which we configure in Twenty's workspace settings before import. Deal amount, close date, and owner assignment migrate directly. Qontak's pipeline-to-stage hierarchy requires pre-configuration in Twenty's pipeline settings to match the source pipeline structure.

Mekari Qontak

Deal Stage

maps to

Twenty CRM

Opportunity Stage

lossy
Fully supported

Qontak's enumerated stage lists (which differ by Sales Suite, Service Suite, and Qontak 360 tiers) map to Twenty workspace-configurable stage values. We extract the complete stage list during discovery, configure the matching stage set in Twenty before any Opportunity import, and map stage probabilities from Qontak to Twenty stage settings.

Mekari Qontak

Ticket

maps to

Twenty CRM

Case or Custom Object

lossy
Fully supported

Qontak Tickets migrate to Twenty Cases if the customer uses a service-oriented workflow, or to a custom object (e.g., SupportTicket) if Twenty's native Case object does not cover the ticket schema. Qontak ticket status values (enumerated) map to Twenty status picklist values that we configure before import. Custom ticket fields migrate to Twenty custom fields pre-created in Settings.

Mekari Qontak

User / Agent

maps to

Twenty CRM

People (with role field)

1:1
Fully supported

Qontak agent records (Supervisor, Agent roles, channel allocation rules) map to Twenty People records with the role stored as a custom text or select field. We resolve agent email matches against Twenty user accounts. If a Qontak agent has no corresponding Twenty user, we hold the mapping in a reconciliation queue for admin provisioning before record import.

Mekari Qontak

Custom Properties (Contact)

maps to

Twenty CRM

Custom Fields on People

lossy
Fully supported

Qontak custom Contact properties (accessible via Mekari API) migrate to Twenty custom fields on the People object. We extract the full custom property schema during discovery, pre-create all custom fields in Twenty's Settings with matching field types, and map property values during the transform step. Qontak multi-select or checkbox properties convert to Twenty multi-select picklist fields.

Mekari Qontak

Custom Properties (Deal)

maps to

Twenty CRM

Custom Fields on Opportunity

lossy
Fully supported

Qontak custom Deal properties migrate to Twenty custom fields on the Opportunity object. Same pre-creation requirement applies: Twenty requires fields to exist before import. Custom Deal fields referencing other Qontak objects (e.g., a custom field pointing to a related Contact) map to Twenty lookup fields on Opportunity after the target object is imported.

Mekari Qontak

Chatbot Flows

maps to

Twenty CRM

Documentation deliverable

lossy
Mapping required

Qontak chatbot flows use an internal JSON schema that is not portable to Twenty or any other CRM platform. We extract the full decision tree structure, conditional branching logic, and message templates from Qontak's flow builder and document them as a re-build guide. The flow map includes trigger conditions, decision node branches, delay actions, and CRM action steps. No automated import is possible.

Mekari Qontak

Workflow Automations

maps to

Twenty CRM

Automation inventory deliverable

lossy
Mapping required

Qontak automation rules (trigger conditions, action sequences, scheduled broadcasts) use a Qontak-specific workflow schema that does not export in a portable format. We document every active automation: trigger type, conditions, action sequence, and scheduling. Twenty's automation model requires manual rebuild; the inventory document maps each Qontak automation to a recommended Twenty equivalent or a third-party automation tool (e.g., n8n, Make) if the workflow involves external system actions.

Mekari Qontak

Contacts List / Segment

maps to

Twenty CRM

Custom Field or Tag on People

lossy
Fully supported

Qontak list membership and segmentation criteria are stored as separate objects. We export list definitions and populate list membership as a multi-select custom field on People (e.g., segment_1, segment_2). Dynamic segment membership, which recalculates based on current contact data, does not migrate as a live rule; we deliver a static snapshot and a re-build recommendation for Twenty's filtering or a third-party segmentation tool.

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.

Mekari Qontak logo

Mekari Qontak gotchas

High

WhatsApp Business API number offboarding requires manual support request

High

Broadcast quotas are enforced at account level, not campaign level

Medium

Marketing Messages API migration for WABA numbers registered after August 2025

Medium

Chatbot flow JSON is not portable between platforms

Low

Frequent platform UI updates can rename or relocate export options

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

  • WhatsApp Business API number offboarding requires manual Qontak support request

    When migrating away from Qontak, the WABA number associated with the account cannot be transferred automatically. Offboarding requires emailing [email protected] with company details. We handle this by submitting the offboarding request on the customer's behalf and sequencing the contact export before the number is released, since losing WABA access also severs the WhatsApp message history API endpoint. If the WABA number is also the customer's primary WhatsApp Business number, the offboarding must be coordinated carefully to avoid losing message attribution before we extract it.

  • Broadcast quotas enforced at account level throttle bulk imports

    Qontak enforces daily email quotas (e.g., 4,000/day with a 10,000/month cap) at the account level, not per campaign. If a customer is mid-campaign during migration scoping, a hit on the daily limit can suspend sending and, in some configurations, affect API access. We flag quota headroom during discovery and chunk large contact imports to avoid triggering rate-limit responses mid-migration that could suspend the account. This is especially relevant for customers using Qontak Broadcast or Qontak 360 tiers.

  • Marketing Messages API migration for WABA numbers registered after August 2025

    Starting August 20, 2025, all new WABA registrations through Qontak default to the Marketing Messages API (MM API). This changes the message limit model and delivery reporting structure. We detect whether the source account uses MM API at scan time and adjust the conversation history export format accordingly. If the customer has active Marketing Messages API templates, those require re-registration in the destination WhatsApp Business API configuration, not migration.

  • Twenty requires custom objects and fields pre-created before CSV import

    Twenty's documentation explicitly states that CSV import creates records, not fields. Custom objects and custom fields must exist in Settings before any import begins. We create the full destination schema in Twenty's workspace settings during the approach step, including custom field types, picklist values, and lookup relationships. Any Qontak custom properties referencing lookups to other objects require the target object to be imported first to satisfy the foreign key relationship.

  • Channel attribution and conversation history have no Twenty destination

    Qontak stores channel attribution (WhatsApp, Instagram, LINE, Email, Telegram) as a first-class property on conversations, and conversation history is accessible via the Qontak channel API. Twenty has no native omnichannel inbox or channel attribution model. We extract conversation metadata (channel type, timestamp, agent assignment, conversation status) and store it as custom fields and activity notes on the related People record. The unified inbox view does not migrate; the customer rebuilds communication tracking as activity logging in Twenty.

Migration approach

Six steps for a successful Mekari Qontak to Twenty CRM data migration

  1. Discovery and Qontak scan

    We audit the source Qontak account across plan tier (Broadcast, Sales Suite, Service Suite, Qontak 360), contact volume, deal and ticket counts, custom property schemas, active chatbot flows, active automation rules, and broadcast campaign history. We verify the WABA number status (standard vs. Marketing Messages API), check quota headroom, and confirm the HMAC API access credentials. The discovery output is a written migration scope with record counts per object, a custom property inventory, and a WABA offboarding timeline recommendation.

  2. Schema design and Twenty workspace preparation

    We configure the destination Twenty workspace before any import. This includes creating any custom objects needed (e.g., SupportTicket if Case is insufficient), adding custom fields to Company, People, and Opportunity with types matched from Qontak, configuring Opportunity stage values and probabilities to match the Qontak pipeline, and inviting all team members who will be referenced as record owners. Twenty requires fields and users to exist before CSV import; we complete this step entirely before record migration begins.

  3. WABA offboarding coordination and message history extraction

    We submit the WhatsApp Business API offboarding request to Qontak support on the customer's behalf and sequence the contact export immediately before the offboarding completes. This ensures that the WhatsApp message history API endpoint is still accessible for us to extract conversation metadata (channel, timestamp, agent, disposition) before the WABA access is released. The offboarding is coordinated to avoid mid-migration disruption if the customer is actively using WhatsApp messaging during the migration window.

  4. Data export, transform, and deduplication

    We export Contacts, Companies, Deals, and Tickets via the Mekari API with HMAC authentication. During transform, we normalize phone numbers to international format, split Qontak's enumerated pipeline stages into Twenty's configurable stage values, map Qontak's channel attribution to custom People fields, and resolve Qontak agent email references against the pre-provisioned Twenty user list. We run deduplication on email and phone as the dedupe key, flagging records that would create duplicates for customer review before import.

  5. CSV import and reconciliation

    We import records into Twenty via CSV in dependency order: Companies first, then People (with Company lookup resolved), then Opportunities (with People and Company lookups resolved), then Tickets or custom objects. Each phase emits a row-count reconciliation report. We spot-check 25-50 records per object against the Qontak source for field-level accuracy and flag any mapping corrections before the next phase begins.

  6. Cutover, delta migration, and automation handoff

    We freeze writes to Qontak during the cutover window, run a final delta migration of any records modified during the migration, then mark Twenty as the system of record. We deliver the chatbot flow map, automation inventory document, and segmentation rebuild guide to the customer's admin team for manual rebuild in Twenty or a third-party automation tool. We support a one-week hypercare window for reconciliation issues. We do not rebuild Qontak workflows or chatbot flows as Twenty configurations inside the migration scope.

Platform deep dives

Context on both ends of the pair

Mekari Qontak logo

Mekari Qontak

Source

Strengths

  • Official WhatsApp Business API partner with verified badge support for Indonesian businesses
  • Unified inbox across WhatsApp, Instagram, LINE, Telegram, Email, and LiveChat in a single agent view
  • No-code chatbot builder with visual flow editor praised by multiple reviewers for ease of use
  • Embedded CRM (Contacts, Deals, Tickets) reduces need for separate sales stack
  • Built-in automation for message scheduling, auto-allocation, and follow-up sequences

Weaknesses

  • HMAC-only API authentication limits integration flexibility compared to OAuth 2.0 platforms
  • Frequent UI updates create ongoing learning curve for agent teams
  • Daily and monthly broadcast quotas are restrictive for high-volume marketing use cases
  • Pricing in Indonesian Rupiah complicates cost estimation for international teams
  • Limited public API documentation compared to global CRM platforms
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 Mekari Qontak 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

    Mekari Qontak: Not publicly documented by Qontak; enforced at account level for broadcast quotas.

  • Data volume sensitivity

    B

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

Estimator

Estimate your Mekari Qontak 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 Mekari Qontak to Twenty CRM data migrations

Answers to the questions buyers ask most during Mekari Qontak to Twenty CRM migration scoping. Not seeing yours? Book a call.

Can't find your answer?

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

Book a free 30 minute consultation

Migrations under 15,000 Contacts and 3,000 Deals with no custom objects and a single WABA number land in three to five weeks. Migrations with custom objects, large ticket histories, multi-pipeline deal structures, or active WABA numbers requiring coordinated offboarding move to six to ten weeks because of schema pre-creation, channel attribution extraction, and offboarding coordination. The WABA offboarding step alone requires a 5-7 business day lead time from Qontak support.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Mekari Qontak.
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