CRM migration
Field-level mapping, validation, and rollback between Combit CRM and Twenty CRM. We move data and schema; workflows are rebuilt natively in Twenty CRM.
Combit CRM
Source
Twenty CRM
Destination
Compatibility
7 of 10
objects map 1:1 between Combit CRM and Twenty CRM.
Complexity
BStandard
Timeline
2-4 weeks
Overview
Moving from Combit CRM to Twenty CRM is a migration from a German-language, on-premise-oriented platform with no REST API to a modern open-source CRM with a GraphQL API and a Notion-like interface. Combit CRM has no publicly documented API, which means we extract data either via direct database access for on-premise deployments or through structured CSV exports from the application's built-in export functionality. The extraction phase requires a bilingual contact or German-speaking analyst to navigate the admin panel and confirm custom field definitions. We resolve the address-to-contact relationship during the load phase, preserving the parent Address record linkage that Combit CRM uses as a separate entity. Custom fields map to Twenty's custom field model, but Twenty requires all custom fields and custom objects to be created in the workspace before CSV import, which we handle as a pre-import configuration step. Projects map to Opportunities with a custom field carrying the original Combit project identifier. Workflows, automations, and custom reports do not migrate; we deliver a written inventory of Combit workflows requiring rebuild in Twenty's workflow engine.
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 Combit CRM 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.
Combit CRM
Address (Anschriften)
Twenty CRM
Address / Location
lossyCombit CRM stores contact locations as separate Address records that can link to multiple contacts. We map these to Twenty's standard address fields on the People record or create a linked Address/Location custom object if the customer requires multiple addresses per contact. Address is loaded before any Contact import so that the lookup relationship is satisfied at the moment of Contact insert.
Combit CRM
Contact (Kontakte)
Twenty CRM
People
1:1Combit CRM Contacts map directly to Twenty People records. Standard fields (name, company association, phone, email) migrate with type preservation. We preserve the link to the parent Address record by resolving the Combit Address ID to the corresponding Twenty Location record during import. Any German-language field labels are translated during the mapping phase using the bilingual discovery output.
Combit CRM
Company (Firmen)
Twenty CRM
Company
1:1Combit CRM Company records map directly to Twenty Company records. Company name becomes the primary field, and industry, website, and phone fields map from equivalent Combit properties. Company is created before any People import so that the People-Company relationship is established at insert time.
Combit CRM
Deal (Verkäufe/Geschäfte)
Twenty CRM
Opportunity
1:1Combit CRM Deals map to Twenty Opportunities. The deal stage property maps to Twenty's Opportunity stage, pipeline assignment maps to a Twenty pipeline, and deal value maps to the Opportunity amount. Combit's configurable pipeline stages are recreated as Twenty Opportunity statuses before migration. The original Combit deal identifier is preserved in a custom field for audit.
Combit CRM
Project (Projekte)
Twenty CRM
Opportunity (custom project mapping)
lossyCombit CRM Projects can span multiple contacts and activities and are not a standard CRM object in Twenty. We map Project records to Twenty Opportunities with a custom field carrying the original project identifier, and preserve associated line items, budgets, and dates as Opportunity fields or a linked custom object if the customer's project structure is complex. The customer chooses the mapping strategy during scoping based on how they use Projects in Combit.
Combit CRM
Activity (Aktivitäten)
Twenty CRM
Task / Note
1:1Combit CRM Activities include calls, meetings, tasks, and notes attached to contacts or projects. Activity type, date, duration, and description map to Twenty Task records. Meeting activities map to Events with StartDateTime, EndDateTime, and Location preserved. We set the activity date to the original Combit timestamp to preserve the timeline ordering. Activity-to-contact linkage resolves via People ID lookup at migration time.
Combit CRM
Custom Field (Benutzerdefinierte Felder)
Twenty CRM
Custom Field / Custom Object
lossyCombit CRM allows extensive user-defined fields across objects. We identify all custom field definitions during discovery (requiring a bilingual contact or German-speaking analyst), map their data types to equivalent Twenty field types, and flag any that require a custom object rather than a standard custom field. All custom fields and custom objects are created in Twenty before any data import begins per Twenty's CSV import requirement.
Combit CRM
User / Owner (Benutzer/Vertriebspartner)
Twenty CRM
Workspace Member
1:1Combit CRM User and Owner records define who is responsible for contacts, deals, and activities. We map user email addresses and names to Twenty workspace members. Users must be invited to the Twenty workspace and accept their invitations before any records with owner references are imported, per Twenty's import documentation. Owner assignment history is preserved as a custom field if audit trail is required.
Combit CRM
Attachment / Document
Twenty CRM
Attachment / File
1:1Combit CRM can store file attachments on records. We extract attachments to a file store, preserve original filenames, and create attachment links at the destination using Twenty's file attachment mechanism. Binary file content migrates directly; linkage to the parent People, Company, or Opportunity record is resolved at import time.
Combit CRM
Tag / Category (Kategorien)
Twenty CRM
Tag / Label
1:1Combit CRM supports categorical tagging of records. We extract tag values and map them to Twenty's tag or label model, consolidating multi-value tags into a compatible field format. If Twenty's tag model differs structurally from Combit's category model, we use a multi-select text field as the migration target with tag values as pipe-delimited entries.
| Combit CRM | Twenty CRM | Compatibility | |
|---|---|---|---|
| Address (Anschriften) | Address / Locationlossy | Fully supported | |
| Contact (Kontakte) | People1:1 | Fully supported | |
| Company (Firmen) | Company1:1 | Fully supported | |
| Deal (Verkäufe/Geschäfte) | Opportunity1:1 | Fully supported | |
| Project (Projekte) | Opportunity (custom project mapping)lossy | Fully supported | |
| Activity (Aktivitäten) | Task / Note1:1 | Fully supported | |
| Custom Field (Benutzerdefinierte Felder) | Custom Field / Custom Objectlossy | Fully supported | |
| User / Owner (Benutzer/Vertriebspartner) | Workspace Member1:1 | Fully supported | |
| Attachment / Document | Attachment / File1:1 | Fully supported | |
| Tag / Category (Kategorien) | Tag / Label1: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.
Combit CRM gotchas
No documented REST API for automated migration
German-language interface complicates discovery
On-premise deployments require database-level extraction
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
Discovery and extraction method selection
We audit the Combit CRM deployment (on-premise or cloud), confirm database access availability for on-premise instances, and identify a bilingual contact or engage a German-speaking analyst for the discovery phase. We catalog all standard and custom field definitions, pipeline stages, address-contact relationships, activity types, and any existing workflow definitions. The discovery output is a written migration scope that specifies extraction method (database query or CSV export), record counts per object, and any German-to-English field label translations required. We also confirm the target Twenty deployment method (cloud-hosted or self-hosted) and provision the Twenty workspace.
Schema design and Twenty workspace preparation
We design the destination schema in Twenty. This includes creating custom objects and custom fields to match the Combit data model, configuring Opportunity pipelines and statuses that mirror Combit deal stages, and setting up the Twenty workspace structure (Members, roles, data model). All custom fields and custom objects are created in Twenty before any data import begins, per Twenty's import requirements. We map Combit Address records to Twenty address fields or a linked Address/Location object based on the customer's address multiplicity requirements.
Data extraction and transformation
For on-premise deployments we run extraction queries against the Combit database, documenting the table structure, primary keys, and foreign key relationships. For cloud deployments we generate CSV exports from Combit's built-in export functionality, exporting each object type separately. We transform Combit field values to match Twenty's data types, translate German-language picklist values to their English equivalents using the discovery mapping, and resolve address-to-contact linkages using the Combit Address ID as a foreign key. We apply deduplication rules during transformation if the customer has identified duplicate Combit records to clean.
Sandbox or staging migration and reconciliation
We run a test migration into the Twenty workspace using production-like data volume. The customer's team spot-checks 25-50 records per object against the Combit source, verifying field mapping accuracy, relationship integrity (People-Company, Opportunity-Company), and activity timeline completeness. We reconcile row counts from the extraction output against records loaded in Twenty and resolve any mapping corrections before proceeding to production migration. This step catches German field label translation errors and custom field creation gaps before any data lands in the production workspace.
Owner reconciliation and Twenty member provisioning
We extract every distinct Combit User and Owner referenced on People, Company, Opportunity, and Activity records and match by email against the Twenty workspace Members. Users must exist in Twenty before any records with owner references are imported. The customer's admin provisions any missing Members and waits for acceptance. Owner assignment history is preserved as a custom field on migrated records if the customer requires an audit trail of original assignments.
Production migration in dependency order
We run production migration in record-dependency order: Address records (if separate entity), Companies, People (with Address and Company lookups resolved), Opportunities (with Company and Member lookups resolved), and Activity history (Tasks and Events). Each phase emits a row-count reconciliation report before the next phase begins. We use bulk import with chunking and backoff handling to manage volume. We flag any records with unresolved owner references for the customer's admin to address before resuming.
Cutover, validation, and workflow rebuild handoff
We freeze Combit CRM writes during cutover, run a final delta migration of any records modified during the migration window, then enable Twenty as the system of record. We deliver the Combit workflow and automation inventory document with each workflow's trigger, conditions, and actions mapped to a recommended Twenty workflow configuration. We support a one-week post-cutover window where we resolve any reconciliation issues raised by the customer's team. We do not rebuild Combit workflows in Twenty as part of the migration scope; that work is handled by the customer's admin or a Twenty implementation partner.
Platform deep dives
Combit CRM
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 Combit CRM 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
Combit CRM: Not publicly documented.
Data volume sensitivity
Combit CRM 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 Combit CRM to Twenty CRM migration scoping. Not seeing yours? Book a call.
Walk through your Combit CRM 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 Combit CRM
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.