CRM migration
Field-level mapping, validation, and rollback between ConSol and Twenty CRM. We move data and schema; workflows are rebuilt natively in Twenty CRM.
ConSol
Source
Twenty CRM
Destination
Compatibility
12 of 12
objects map 1:1 between ConSol and Twenty CRM.
Complexity
BStandard
Timeline
48–72 hours
Overview
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.
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 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
Twenty CRM
People
1:1ConSol 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
Twenty CRM
Company
1:1ConSol 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
Twenty CRM
Custom Object (Case)
1:1ConSol 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
Twenty CRM
Note
1:1ConSol 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
Twenty CRM
Note
1:1ConSol 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
Twenty CRM
People (companyId lookup)
1:1ConSol 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
Twenty CRM
Custom Fields (People)
1:1ConSol 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
Twenty CRM
Custom Fields (Company)
1:1ConSol 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
Twenty CRM
WorkspaceMember
1:1ConSol 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
Twenty CRM
Not Migrated
1:1ConSol 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
Twenty CRM
Not Migrated
1:1ConSol'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
Twenty CRM
Not Migrated
1:1ConSol 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.
| ConSol | Twenty CRM | Compatibility | |
|---|---|---|---|
| Contact Model | People1:1 | Fully supported | |
| Organization | Company1:1 | Fully supported | |
| Case Ticket | Custom Object (Case)1:1 | Fully supported | |
| Case Ticket Activity | Note1:1 | Fully supported | |
| Document / Attachment | Note1:1 | Fully supported | |
| Contact-Organization Association | People (companyId lookup)1:1 | Fully supported | |
| Contact Custom Properties | Custom Fields (People)1:1 | Fully supported | |
| Organization Custom Properties | Custom Fields (Company)1:1 | Fully supported | |
| User / Owner | WorkspaceMember1:1 | Fully supported | |
| Workflow / Automation | Not Migrated1:1 | Fully supported | |
| Scripting / Custom Code | Not Migrated1:1 | Fully supported | |
| Report / Dashboard | Not Migrated1:1 | 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.
ConSol gotchas
REST API documentation is fragmented across multiple moved URLs
Workflow automations and SLA rules are not API-accessible
Attachment extraction requires a secondary pipeline pass
Twenty CRM gotchas
Import order is enforced and critical
Export limited to 20,000 records and visible columns only
Soft-deleted records count toward uniqueness and trigger restores
API rate limits cap at 200 req/min on Organization tier
No native email sequences — follow-up cadences require external tools
Pair-specific challenges
Migration approach
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.
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.
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.
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.
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
ConSol
Source
Strengths
Weaknesses
Twenty CRM
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 1 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 ConSol and Twenty CRM.
Object compatibility
1 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
ConSol: Not publicly documented.
Data volume sensitivity
ConSol doesn't expose a bulk API — REST + parallelization used for high-volume runs.
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 ConSol to Twenty CRM migration scoping. Not seeing yours? Book a call.
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 consultationAdjacent paths
Other ways to leave ConSol
Other ways to arrive at Twenty 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.