CRM migration

Migrate from Wice CRM to Twenty CRM

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

Wice CRM logo

Wice CRM

Source

Twenty CRM

Destination

Twenty CRM logo

Compatibility

75%

9 of 12

objects map 1:1 between Wice CRM and Twenty CRM.

Complexity

BStandard

Timeline

2-4 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Wice CRM to Twenty CRM is a platform switch from a 2001-founded German-market CRM to a 2023-founded open-source alternative with GPL licensing and self-hosting at no software cost. Wice CRM has no documented public API, so all migrations run through its built-in CSV export for contacts, organizations, and deals, or through direct database queries for on-premise installations. We export in dependency order—Organizations first, then Contacts with their organization linkage resolved, then Deals with pipeline stage mapping applied—and write records into Twenty through the GraphQL API. Projects and Tasks map to custom objects that we create via the Twenty metadata API before migration begins. We do not migrate Hold files (attachments) because Wice provides no bulk export mechanism, and we do not migrate Wice Reports or dashboard charts because Twenty does not have an equivalent saved-view artifact. Workflows, sequences, and automations are documented and handed off for manual rebuild post-migration.

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

Wice CRM logo

Wice CRM

What's pushing teams away

  • Search functionality fails to return results reliably, forcing users to navigate manually through contacts and deals which becomes time-consuming at scale.
  • Document exports do not convert cleanly to Microsoft Office formats, disrupting workflows that depend on shared editable files.
  • The budget-tracking module lacks depth, pushing finance-focused teams toward ERPs or CRMs with richer reporting for revenue forecasting.
  • Dashboard display occasionally renders incorrectly, creating inconsistent visibility into pipeline stages and upcoming activities.

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

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

Wice CRM

Organization

maps to

Twenty CRM

Company

1:1
Fully supported

Wice Organizations map to Twenty Company records. Wice enforces a contact-to-organization relationship, so we export Organizations first and use the Wice organization ID as a reference key when importing Contacts. The Wice organization name maps to Company.displayName; industry maps to Company.industry; address fields map to Company.address fields. Organization is the parent in the relationship hierarchy, so it must be imported before any Contacts that reference it.

Wice CRM

Contact

maps to

Twenty CRM

Person

1:1
Fully supported

Wice Contacts map to Twenty Person records. We resolve the organization linkage by looking up the target Company ID using the Wice organization foreign key before writing each Person record. Name, email, phone, and address fields map directly. Custom fields on Wice Contacts (Gold tier) are pre-created as custom fields on the Twenty Person object via the metadata API before import begins.

Wice CRM

Deal (Pipeline)

maps to

Twenty CRM

Opportunity

1:1
Fully supported

Wice Deals map to Twenty Opportunity records. The deal value, expected close date, and owner assignment transfer directly. Pipeline stage names are captured from the customer's live Wice installation during discovery because stages are fully customizable per Wice installation. We create a matching Opportunity stage name set in Twenty via the GraphQL API before migration and generate a stage-mapping table showing each Wice stage and its Twenty equivalent before any Deal records are written.

Wice CRM

Pipeline Stage (custom)

maps to

Twenty CRM

Opportunity Stage

lossy
Fully supported

Wice allows unrestricted customization of pipeline stage names. A deal in stage 'Angebot gesendet' (Proposal Sent) in a German Wice installation maps to a Twenty stage name the customer defines during scoping. We capture the actual stage list from Wice during discovery, propose a canonical English stage name set for Twenty, and apply it via the Twenty settings API. Stage probability percentages map to Twenty's stage probability field per stage name.

Wice CRM

Project

maps to

Twenty CRM

Custom Object (Project)

1:1
Fully supported

Wice Projects do not have a direct Twenty standard object equivalent. We create a Project custom object in Twenty via the metadata API with custom fields for project name, status, start date, end date, and description. Project-task hierarchy is preserved by creating the Project record first and then linking child Task records via a lookup relationship field that we add to the Project custom object.

Wice CRM

Task (standalone and project-bound)

maps to

Twenty CRM

Task

1:1
Fully supported

Wice Tasks exist both inside Projects and as standalone records linked to Contacts or Deals. We export both contexts and reconstruct the hierarchy in Twenty. Project-bound tasks reference the target custom Project record via the lookup field. Standalone tasks link to the appropriate Person, Company, or Opportunity record. Status, priority, assignee, and due date transfer directly; completed date maps to Twenty's completedAt field if populated.

Wice CRM

Campaign (basic and advanced)

maps to

Twenty CRM

Custom Object (Campaign)

1:1
Fully supported

Wice differentiates basic and advanced campaigns with different property sets. Both tiers map to a Campaign custom object we create in Twenty. Advanced campaign targeting properties and tracking fields become custom fields on the Campaign object. Campaign history data (sent, open, click counts) may be partial because Wice stores some campaign analytics internally and not in the exportable record fields. We flag any campaign fields that are empty post-export and document them as data-gaps for the customer's review.

Wice CRM

Ticket

maps to

Twenty CRM

Custom Object (Ticket)

1:1
Fully supported

Wice Tickets map to a Ticket custom object in Twenty. We create the Ticket custom object via the metadata API with fields for ticket number (Wice generates sequential IDs), status, priority, subject, and description. Linked contacts and organizations map to Person and Company lookups. Custom ticket fields from Wice Gold tier are pre-created as custom fields on the Twenty Ticket object before migration.

Wice CRM

Note

maps to

Twenty CRM

Note

1:1
Fully supported

Wice free-text Notes attached to contacts, organizations, deals, and projects migrate to Twenty Note records linked via ContentDocumentLink to the parent Person, Company, Opportunity, or custom object record. Note body transfers as plain text; Wice formatting (bold, lists) is simplified to plain text because Twenty Note does not support rich text in the current release. We preserve the source-object linkage by recording the original Wice object type and ID in a migration reference field.

Wice CRM

Custom Properties (Fields)

maps to

Twenty CRM

Custom Fields

lossy
Mapping required

Wice Gold tier custom fields on contacts, organizations, deals, projects, and tickets are exported as additional columns in the CSV. Before migration, we create matching custom fields on the corresponding Twenty objects (Person, Company, Opportunity, Project, Ticket) via the Twenty metadata API. Picklist-style custom fields in Wice require explicit value mapping if the destination Twenty picklist options differ. Fields are created before any data import because CSV import creates records, not fields.

Wice CRM

Owner

maps to

Twenty CRM

WorkspaceMember (User)

1:1
Fully supported

Wice Owner references on contacts, organizations, deals, and tasks map to Twenty WorkspaceMember records. We extract distinct owner values during discovery and match by email against the target Twenty workspace. Any Wice owner without a matching Twenty WorkspaceMember goes to a reconciliation queue for the customer to provision before record import. Migration cannot proceed past Deal import until all Owner references are resolved because OwnerId is required on Opportunity.

Wice CRM

Category

maps to

Twenty CRM

Text (comma-separated)

lossy
Fully supported

Wice uses a category system for deduplication and classification that does not map 1:1 to any Twenty native feature. We export category assignments as a comma-separated text value stored on the migrated record. During scoping, the customer chooses whether to keep category values as plain text fields, map them to Twenty's topic feature, or treat them as a data hygiene exercise and leave categories behind.

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.

Wice CRM logo

Wice CRM gotchas

High

No publicly documented REST API

Medium

Attachment export is a manual step

Medium

Custom pipeline stages require explicit mapping

Low

On-premise installations vary by version

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

  • Wice has no public REST API; CSV export is the only automated path

    Wice CRM does not publish a public API reference or developer documentation. All automated migration paths from Wice rely on its built-in CSV export function for contacts, organizations, and deals, or on direct database queries for on-premise installations. Cloud Wice customers are limited to the CSV export which may have record limits per export run. We batch the CSV by object, parse and normalize field values, and write to Twenty via the GraphQL API. For on-premise customers with database access, we can query the underlying tables directly to get a more complete dataset including relationship IDs that are not exposed in the CSV export.

  • Custom pipeline stages require explicit mapping before migration

    Wice allows unrestricted customization of pipeline stage names per installation. A deal in stage 'Angebot gesendet' in a German-language Wice installation maps to a stage the customer must explicitly name in Twenty during scoping. We capture the actual Wice stage names during discovery, generate a stage-mapping table, and create matching stages in Twenty before any Deal records are written. Stage mapping errors are the most common cause of deal-value misrepresentations post-migration. Skipping this step results in Deals importing with mismatched stage labels or defaulting to a single stage.

  • Hold files (attachments) have no bulk export mechanism

    Wice stores attachments as Hold files linked to records but provides no bulk download endpoint or API. Each attachment must be downloaded individually through the Wice UI or via a custom script for on-premise installations. We flag every record with attachments during scoping and provide the customer with a file-level export checklist. Attachment download is a manual step outside the automated record migration and should be budgeted separately. Once downloaded, attachments can be re-uploaded to Twenty as standard file attachments linked to the migrated record.

  • Twenty requires custom fields pre-created before CSV import

    Twenty's CSV import creates records but not fields. All custom fields must exist in the workspace before the import begins. For Wice Gold tier customers with custom fields on contacts, organizations, deals, projects, and tickets, we must create matching custom fields via the Twenty metadata API before importing any records. This adds a schema setup phase to the migration timeline. If custom fields are created after records are imported, the import must be re-run for the affected records. We sequence schema setup as the first phase of every Twenty migration.

  • On-premise Wice installations vary by version and schema

    Wice customers running on-premise may be on older software releases with slightly different field names, field labels, or table structures than the current cloud version. We request the customer to share screenshots of their contact and deal edit screens before migration planning so we can account for version-specific field labels. For on-premise customers, we also request a schema export or database introspection to identify the actual table and column names. This adds a half-day to discovery but prevents field-miss errors during import.

Migration approach

Six steps for a successful Wice CRM to Twenty CRM data migration

  1. Discovery and export feasibility assessment

    We audit the source Wice installation to determine whether it is cloud or on-premise, which tiers are active (Bronze/Silver/Gold), and which object types are in use. We review the actual Wice pipeline stage names, custom field definitions, and any custom objects or categories. For cloud Wice, we confirm CSV export limits per run and estimate the number of export batches required. For on-premise Wice, we request database access or a schema export. The discovery output is a written migration scope, a stage-mapping table, a custom field inventory for Twenty pre-creation, and an attachment export checklist for the customer.

  2. Twenty workspace preparation and custom object creation

    We create all required custom objects (Project, Campaign, Ticket) and custom fields in the Twenty workspace via the metadata API before any data import. This includes custom fields on Person, Company, and Opportunity that correspond to Wice Gold tier custom fields. We configure the Opportunity stage names to match the Wice stage-mapping table agreed during discovery. We invite all team members who will be referenced as owners or assignees so that User records exist before import begins. This phase must complete before the CSV import phase starts because Twenty's import creates records, not fields.

  3. CSV export and data normalization

    We guide the customer through the Wice CSV export for contacts, organizations, and deals, or we run direct database queries for on-premise installations. We parse the exported CSVs, normalize field values (date formats, phone number formatting, picklist value translation), and apply the stage-mapping transformation for pipeline stages. We flag any records with attachments in a separate checklist and extract distinct owner email addresses for WorkspaceMember reconciliation.

  4. Owner reconciliation and WorkspaceMember provisioning

    We extract every distinct owner reference from the normalized Wice data and match by email against the Twenty workspace's WorkspaceMember table. Any owner without a matching Twenty user goes to a reconciliation queue. The customer provisions missing WorkspaceMembers (active or inactive based on whether the original Wice user is still active) before record import proceeds. Migration cannot write Deals with unresolved OwnerId references.

  5. Production import in dependency order

    We import records into Twenty in strict dependency order: Organizations (to Companies), Contacts (to Persons with CompanyId resolved), Deals (to Opportunities with CompanyId, PersonId, and stage resolved), Projects (to custom Project object), Tasks (with ProjectId lookup resolved for project-bound tasks), Campaigns (to custom Campaign object), Tickets (to custom Ticket object), and Notes (linked via ContentDocumentLink to the appropriate parent record). Each phase emits a row-count reconciliation report before the next phase begins. Attachments are linked post-import using the file checklist the customer completed.

  6. Cutover, validation, and automation rebuild handoff

    We freeze Wice 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 a written inventory of every Wice workflow, campaign automation, and sequence with its trigger, conditions, and recommended rebuild approach for the customer's admin. We support a one-week hypercare window for reconciliation issues. We do not rebuild Wice automations as Twenty workflow equivalents inside the migration scope because Twenty does not include a built-in workflow engine in its current release; the customer rebuilds automations as their product roadmap adds workflow capabilities.

Platform deep dives

Context on both ends of the pair

Wice CRM logo

Wice CRM

Source

Strengths

  • Cloud and on-premise deployment options from a single codebase — useful for data-residency requirements.
  • Mobile app ships by default, giving field sales reps full access to the CRM without additional licensing.
  • Modular tier structure lets teams pay only for the features they actively use as they scale.
  • Strong German-language support and localization for teams operating in DACH markets.
  • Consistent customer support response times cited across multiple review sources.

Weaknesses

  • Search bar reliability issues mean teams cannot trust basic record lookup, increasing training friction.
  • Document export to Microsoft Office formats fails in some cases, blocking standard file workflows.
  • Budget and forecasting tools are underdeveloped, limiting use for teams needing deep revenue analytics.
  • On-premise installations introduce version-parity risk — different customers run different Wice releases with varying schema.
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 Wice CRM 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

    Wice CRM: Not publicly documented.

  • Data volume sensitivity

    B

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

Estimator

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

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

Can't find your answer?

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

Book a free 30 minute consultation

Most migrations land between two and four weeks for accounts under 5,000 contacts, 1,000 deals, and no Gold-tier custom fields. Migrations from on-premise Wice installations with direct database access, projects with deep task hierarchies, or Gold-tier custom fields requiring pre-creation in Twenty move to five to eight weeks because of schema setup time, custom object metadata API work, and relationship resolution across all object types.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Wice CRM.
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