CRM migration

Migrate from ConSol to Twenty CRM

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

ConSol logo

ConSol

Source

Twenty CRM

Destination

Twenty CRM logo

Compatibility

100%

12 of 12

objects map 1:1 between ConSol and Twenty CRM.

Complexity

BStandard

Timeline

48–72 hours

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

ConSol CM is a German-built platform combining BPM, CRM, and case management for IT helpdesk and construction process digitization. It stores contacts and organizations in a flat relational model with case tickets, document attachments, and scripting capabilities via REST API. Twenty CRM is a TypeScript/NestJS open-source CRM with a PostgreSQL backend that exposes REST and GraphQL APIs. Its data model centers on People (contacts), Companies, Opportunities, Notes, Tasks, and Custom Objects — all configurable through Settings → Data Model without touching code. We migrate ConSol contacts and organizations into Twenty People and Companies, case tickets into Tasks or custom objects, document metadata into Notes, and user ownership via email matching against Twenty workspace members. Workflows, automations, and scripting logic do not migrate and must be rebuilt in Twenty's Settings → Workflows. We use ConSol's REST API for data extraction and Twenty's CSV import with API upsert for bulk loads, maintaining source system IDs for delta-run de-duplication. The migration does not require downtime on ConSol — scoped read access lets your team continue working while we validate, test, and cut over.

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

ConSol logo

ConSol

What's pushing teams away

  • Limited integration with external CRM systems noted as a frustration in G2 reviews, with users unable to connect ConSol CM to their primary customer platforms.
  • Complex feature set and steep learning curve reported in G2 feedback, with users feeling overwhelmed by information density during onboarding.
  • Perpetual licensing and enterprise pricing structure makes the platform costly for smaller organizations evaluating alternatives.
  • Vendor lock-in concerns with proprietary German-developed platform motivating organizations to evaluate international alternatives with broader ecosystem support.

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

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

ConSol

Contact Model

maps to

Twenty CRM

People

1:1
Fully supported

ConSol contact model records map directly to Twenty People objects. Each ConSol contact's email, name, phone, and job title fields map to their Twenty equivalents. Owner resolution uses email matching against Twenty workspace members. Contacts without a primary organization map to standalone People records.

ConSol

Organization

maps to

Twenty CRM

Company

1:1
Fully supported

ConSol organizations map to Twenty Companies. Company name, domain/website, industry, and employee count fields translate to their Twenty Company counterparts. Parent-child organization hierarchies in ConSol map using Twenty's Company → Company self-relation field. We validate that each organization's domain is properly formatted before importing into Twenty's domain field.

ConSol

Case Ticket

maps to

Twenty CRM

Custom Object (Case)

1:1
Fully supported

ConSol case tickets do not have a native equivalent in Twenty's standard object set. We create a Case custom object in Twenty and map ticket number, status, priority, description, and created date as custom fields. Original case owners map via email matching to Twenty workspace members.

ConSol

Case Ticket Activity

maps to

Twenty CRM

Note

1:1
Fully supported

ConSol case activity logs (status changes, internal notes, customer responses) map as Twenty Notes attached to the related Case record. Original timestamps and actor information are preserved in the Note body or custom fields. We parse the activity log entries and format them consistently for readability in Twenty's Notes interface.

ConSol

Document / Attachment

maps to

Twenty CRM

Note

1:1
Fully supported

ConSol document attachments are metadata records referencing files stored in ConSol's document management. We extract file names, URLs, and upload metadata as a Note record in Twenty. The actual file content cannot be transferred; we document the original ConSol URL for reference.

ConSol

Contact-Organization Association

maps to

Twenty CRM

People (companyId lookup)

1:1
Fully supported

ConSol supports N:N contact-to-organization relationships. Twenty People records have a single companyId field. We migrate the most recently updated organization as the primary companyId and surface additional associations as a custom multi-select field on the People record. We also preserve a history log of all associated organizations for audit purposes.

ConSol

Contact Custom Properties

maps to

Twenty CRM

Custom Fields (People)

1:1
Fully supported

ConSol extended contact properties created via scripting or the REST API map to Twenty custom fields on the People object. We create fields in Twenty Settings → Data Model before migration and map values by type — text to TEXT, numbers to NUMBER, dates to DATE, and pick-lists to SELECT.

ConSol

Organization Custom Properties

maps to

Twenty CRM

Custom Fields (Company)

1:1
Fully supported

ConSol organization-level custom properties follow the same pattern as contact custom fields. We create matching custom fields in Twenty's Company object before migration. Type-aware mapping applies: boolean flags, currency fields, and multi-select values each require specific field type selection. We verify all currency values use consistent decimal formatting before import.

ConSol

User / Owner

maps to

Twenty CRM

WorkspaceMember

1:1
Fully supported

ConSol user and owner records do not have a direct Twenty equivalent. We resolve ConSol owner IDs by matching user email addresses against Twenty workspace members. Unmatched owners are flagged for admin review and assigned to a fallback workspace member.

ConSol

Workflow / Automation

maps to

Twenty CRM

Not Migrated

1:1
Fully supported

ConSol BPM workflows, scripts, and automated routing rules do not migrate. They must be rebuilt in Twenty's Settings → Workflows (Organization tier) or via custom code using Twenty's SDK. We export ConSol workflow definitions as a JSON reference document to guide the rebuild.

ConSol

Scripting / Custom Code

maps to

Twenty CRM

Not Migrated

1:1
Fully supported

ConSol's server-side scripting objects and REST extensions are bespoke code with no equivalent in Twenty. Custom integrations that relied on ConSol scripting must be rebuilt as Twenty API clients or webhook handlers. We document all API endpoints used by ConSol scripts to ensure the replacement integration covers the same functionality.

ConSol

Report / Dashboard

maps to

Twenty CRM

Not Migrated

1:1
Fully supported

ConSol report configurations and dashboard layouts do not transfer. The underlying data (contacts, organizations, case tickets) migrates but report definitions must be recreated as Twenty views or via a BI tool connected to Twenty's API. We provide a mapping of ConSol report metrics to Twenty field references to assist with report recreation.

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.

ConSol logo

ConSol gotchas

High

REST API documentation is fragmented across multiple moved URLs

High

Workflow automations and SLA rules are not API-accessible

Medium

Attachment extraction requires a secondary pipeline pass

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

  • Twenty Free tier API limits cap bulk migration throughput

    Twenty's self-hosted and Free Cloud tier is capped at 100 API calls per minute and 20,000 records per CSV export. ConSol datasets with 50,000+ records hit this ceiling during bulk upsert operations, requiring pagination and throttling in the migration script. The Organization Cloud tier ($19/seat) raises the limit to 200 calls per minute. We build exponential backoff and retry logic into the migration engine to handle rate limit responses gracefully without data loss or duplicate records.

  • Twenty ships minimal standard fields — every custom property requires upfront schema creation

    ConSol's contact models support extended properties defined via scripting or REST API without a UI-driven schema. Twenty requires every custom field to exist in Settings → Data Model before records import — the CSV import creates records, not fields. ConSol setups with more than 20 custom contact properties need significant pre-migration time allocated to creating matching Twenty fields. We deliver a field-creation checklist before migration runs so the schema is ready before data lands.

  • ConSol N:N contact-to-organization associations collapse into a single companyId in Twenty

    ConSol allows a contact to be associated with multiple organizations simultaneously. Twenty People records have one primary companyId lookup. We migrate the most recently updated organization as the primary link and record additional associations in a custom multi-select field. Business context carried in the N:N relationship (such as which organization a contact is the primary decision-maker for) requires a custom field on the People record to preserve that meaning. We recommend scheduling a post-migration review session with your admin team to confirm that primary organization assignments align with business expectations.

  • ConSol case tickets require a custom object with manual workflow recreation

    ConSol's case ticketing model has no direct Twenty equivalent — Twenty's standard Tasks object is too lightweight for structured case management. We create a Case custom object in Twenty and map ticket status, priority, and description. However, ConSol's intelligent auto-routing, SLA timers, and escalation rules do not migrate. These must be rebuilt as Twenty Workflows (Organization tier) or as custom server-side logic using Twenty's SDK. The case data migrates; the case process does not.

  • ConSol scripting and BPM workflows have no migration path to Twenty

    ConSol's server-side scripting objects and BPM-driven process automation are bespoke code stored in the ConSol instance. Twenty's workflow builder operates on a different execution model and cannot parse ConSol workflow definitions. We export ConSol workflow JSON as a reference document and recommend a rebuild approach using Twenty's Settings → Workflows canvas. Teams on the Twenty Free tier have no native workflow builder — the Organization tier ($19/seat) must be selected to access workflow automation.

Migration approach

Six steps for a successful ConSol to Twenty CRM data migration

  1. Audit ConSol data model and export via REST API

    We connect to ConSol's REST API using scoped read credentials and enumerate all contact models, organizations, case tickets, and document metadata. We document custom properties, pick-list values, and relationship tables. This audit produces a field inventory and identifies N:N associations, custom scripts, and BPM workflows that will not migrate. The output is a migration scope document listing every object and field that will transfer.

  2. Create Twenty workspace schema before data lands

    Before any records move, we create all required custom fields in Twenty Settings → Data Model for People, Company, and the Case custom object. We configure SELECT option values matching ConSol pick-lists and set field types (TEXT, NUMBER, DATE, SELECT, MULTI_SELECT) for each custom property. This step also includes inviting all migration-relevant users to the Twenty workspace so owner email matching resolves correctly during import.

  3. Resolve owners and validate data relationships

    We match ConSol owner IDs to Twenty workspace members by email. Contacts without a resolvable owner are flagged for fallback assignment to a designated admin user. For N:N contact-organization relationships, we apply the most-recently-modified rule to select the primary companyId and store additional associations in a custom multi-select field. Circular parent-company references in ConSol organizations are flagged and resolved before the migration sequence begins to prevent data integrity issues.

  4. Run sample migration with field-level diff

    A representative slice of 200–500 records — spanning People, Companies, and Cases — migrates first using Twenty's CSV import and API upsert. We generate a field-level diff comparing source values against destination values to verify pick-list mapping, date format translation, custom field population, and owner resolution. You review the diff before the full run commits. Any field mapping corrections are applied before proceeding.

  5. Execute full migration with delta-pickup window

    The full dataset loads in dependency order: Companies first, then People with companyId lookups resolved, then Cases linked to People records, then Notes and document metadata. A delta-pickup window (typically 24–48 hours) captures records modified in ConSol during the cutover window. All operations are logged to an audit trail. One-click rollback reverts the Twenty workspace to its pre-migration state if reconciliation fails.

Platform deep dives

Context on both ends of the pair

ConSol logo

ConSol

Source

Strengths

  • Combines help desk ticketing with BPM workflow capabilities in a single platform.
  • Intelligent auto-routing assigns requests to appropriate support tiers automatically.
  • ISO 27001 certified cloud deployment meets enterprise security standards.
  • Established in 1984 with a track record of large enterprise deployments in Germany.

Weaknesses

  • Limited public API documentation makes automated data extraction and migration planning difficult.
  • Integration capabilities with external CRMs are constrained, limiting hybrid workflow setups.
  • Steep onboarding curve requires significant training investment before teams become productive.
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. 1 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 ConSol and Twenty CRM.

  • Object compatibility

    B

    1 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

    ConSol: Not publicly documented.

  • Data volume sensitivity

    B

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

Estimator

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

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

Can't find your answer?

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

Book a free 30 minute consultation

Most ConSol-to-Twenty migrations complete in 48–72 hours of clock time for under 25,000 records. The longest planning step is creating matching custom fields in Twenty's Settings → Data Model before records can import — this alone can take 2–4 hours per 20 custom properties. Larger setups with 250,000+ records or complex case-ticket custom objects extend to 7–10 days. The ConSol REST API export itself typically runs in under 2 hours for typical datasets.

Adjacent paths

Related migrations to explore

Ready when you are

Move from ConSol.
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