CRM migration
Field-level mapping, validation, and rollback between MiniCRM and Twenty CRM. We move data and schema; workflows are rebuilt natively in Twenty CRM.
MiniCRM
Source
Twenty CRM
Destination
Compatibility
10 of 12
objects map 1:1 between MiniCRM and Twenty CRM.
Complexity
BStandard
Timeline
2-4 weeks
Overview
Moving from MiniCRM to Twenty CRM is a regional-to-global migration that requires careful handling of MiniCRM's Card-centric record model, opaque per-user pricing tiers, and undocumented automation rules. MiniCRM organizes data around Cards (Karty) that can contain contact details, deal associations, custom fields, and tasks; Twenty CRM uses a Company-People-Opportunity model with separate objects for each. We resolve the Card-to-People and Card-to-Opportunity split during scoping by analyzing how each Card's fields and associations map to Twenty's typed schema. Automation rules in MiniCRM (Automatyzacje) are server-side only and cannot be exported; we document every active rule during discovery and deliver a written inventory for rebuild in Twenty's Workflow builder. The recent acquisition of MiniCRM by group.one introduces product continuity risk that we monitor throughout the engagement. We do not migrate automation rules, and we flag where MiniCRM's pricing tier boundaries may have constrained data volume before the move.
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 MiniCRM 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.
MiniCRM
Card (Karta)
Twenty CRM
People or Company (split by role)
1:manyMiniCRM Cards are the primary record container and can hold contact details, company associations, deal associations, notes, tasks, and custom fields simultaneously. We analyze each Card's field composition during scoping to determine whether it is primarily a contact record (maps to Twenty People), a company record (maps to Twenty Company), or a hybrid that requires a Card-to-People plus Card-to-Company approach. We create both records and link them in Twenty. Polish-language card labels and custom field names are scoped with the customer's team before mapping.
MiniCRM
Contact (Kontakt)
Twenty CRM
People
1:1MiniCRM Contact-level fields (name, email, phone, address) map directly to Twenty People. We preserve the full name split into firstName and lastName where available, or combine into the name field. Email maps to Twenty's email field; phone maps to phone. If MiniCRM stores multiple phone types (mobile, work, home), we map the primary to phone and secondary to a custom field.
MiniCRM
Company (Firma)
Twenty CRM
Company
1:1MiniCRM Company records (Firmy) map to Twenty Company. The company name maps to Twenty's name field. Industry, address, and website fields map directly where present. Company records in MiniCRM may have fewer normalized fields than Twenty's Company schema; we map available fields and flag gaps during scoping. Custom company properties require field-level mapping to Twenty custom fields on the Company object.
MiniCRM
Deal / Interest (Interes)
Twenty CRM
Opportunity
1:1MiniCRM Deals (Interesy) are associated with Cards and represent pipeline values. They map to Twenty Opportunity records. HubSpot-style dealstage and pipeline names from MiniCRM require mapping to Twenty's Opportunity stage values, which are configured in the destination workspace before import. Deal amount, close date, and probability map to Twenty's amount, closeDate, and probability fields.
MiniCRM
Task (Zadanie)
Twenty CRM
Task
1:1MiniCRM Tasks are assignable to users and linked to Cards. Due date, status, assignee (via worker/Pracownik lookup), and description migrate to Twenty Task. Task recurrence patterns and reminder settings require explicit mapping since these may not have a direct Twenty equivalent; we document the original values and flag them for manual configuration in Twenty's task settings.
MiniCRM
Note (Notatka)
Twenty CRM
Note
1:1Free-text Notes attached to Cards migrate as long-text Note records in Twenty, linked via the parent record reference to the corresponding People, Company, or Opportunity record. We preserve the original timestamp and author where available. Polish-language note content migrates as-is without translation; the customer's team reviews during validation.
MiniCRM
Custom Field (Pole dodatkowe)
Twenty CRM
Custom Field (Settings → Data Model)
lossyMiniCRM supports custom fields on Cards added via Settings. Field types include text, number, date, and choice. We detect and map each custom field to Twenty's custom field schema. Choice fields in MiniCRM require value mapping to match Twenty's select option values. Fields must exist in Twenty Settings → Data Model before import; we create the schema first and validate before data migration begins. Twenty's free self-hosted tier includes full custom field support without tier gating.
MiniCRM
Automation Rule (Automatyzacja)
Twenty CRM
Workflow (not migratable)
1:1MiniCRM's trigger/action automation rules (e.g., 'when card enters status X, send email and assign task') do not export via any documented endpoint. We do not migrate automation rules. We document every active automation rule during discovery — capturing the trigger type, conditions, actions, and affected Card types — and deliver a written inventory with recommended Twenty Workflow equivalents. The customer's admin rebuilds these in Twenty's Workflow builder post-migration. This is explicitly a rebuild step, not a transfer.
MiniCRM
User / Worker (Pracownik)
Twenty CRM
Member (Settings → Members)
1:1MiniCRM User records include name, email, and role. We map these to Twenty Members in Settings → Members. Role distinctions in MiniCRM may not map directly to Twenty's permission model; we document the role mapping and flag any gaps. Members must be invited and active in Twenty before any OwnerId references can be resolved during record import. We coordinate user provisioning timing with the record migration sequence.
MiniCRM
Calendar / Event
Twenty CRM
Task or Event
1:1Calendar events and meeting records associated with Cards or Contacts migrate as Twenty Task records (with type meeting) or Event records depending on the customer's chosen configuration. We migrate event title, date, location, and linked Contact; full attendee lists require supplementary mapping and may need manual addition in Twenty if MiniCRM's attendee export is incomplete.
MiniCRM
Attachment
Twenty CRM
File (Twenty workspace)
1:1File attachments stored against Cards can migrate where MiniCRM exposes them via export. We flag any attachment size limits during scoping and map file references to Twenty's attachment handling. If MiniCRM's export does not include file binary content (only references), we document the attachment list for the customer to re-upload manually post-migration.
MiniCRM
Tag / Label
Twenty CRM
Tag
1:1Tags applied to Cards for segmentation migrate as Twenty Tags. We deduplicate tags during import to avoid recreating a messy taxonomy in the new system. The customer chooses between a flat tag structure and a hierarchical label approach during scoping based on how they currently use tags in MiniCRM.
| MiniCRM | Twenty CRM | Compatibility | |
|---|---|---|---|
| Card (Karta) | People or Company (split by role)1:many | Fully supported | |
| Contact (Kontakt) | People1:1 | Fully supported | |
| Company (Firma) | Company1:1 | Fully supported | |
| Deal / Interest (Interes) | Opportunity1:1 | Fully supported | |
| Task (Zadanie) | Task1:1 | Fully supported | |
| Note (Notatka) | Note1:1 | Fully supported | |
| Custom Field (Pole dodatkowe) | Custom Field (Settings → Data Model)lossy | Fully supported | |
| Automation Rule (Automatyzacja) | Workflow (not migratable)1:1 | Fully supported | |
| User / Worker (Pracownik) | Member (Settings → Members)1:1 | Fully supported | |
| Calendar / Event | Task or Event1:1 | Fully supported | |
| Attachment | File (Twenty workspace)1:1 | Fully supported | |
| Tag / Label | Tag1: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.
MiniCRM gotchas
Automation rules do not export via API
Pricing tier boundaries are opaque
API export tooling is limited and undocumented
Acquisition by group.one may affect product continuity
Polish-language interface and documentation
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 data audit
We audit the source MiniCRM workspace across objects (Cards, Contacts, Companies, Deals, Tasks, Notes, Custom Fields), active automation rules, user count, and any available export format. We request a bulk data export from MiniCRM (CSV or the available manual export format) and analyze the export structure. We confirm the customer's current MiniCRM tier and any usage limits during this phase. The discovery output is a written migration scope including the card-to-record split logic, custom field inventory, automation rule list, and a risk register covering the acquisition-related product continuity concern.
Twenty workspace preparation
We set up the Twenty CRM workspace before any data import. This includes creating custom fields in Settings → Data Model (matching MiniCRM's custom field types: text, number, date, choice), creating any required custom objects, inviting Members to match the MiniCRM worker list, and configuring Opportunity stages to reflect the MiniCRM pipeline structure. We create Twenty's custom fields before importing data because CSV import creates records, not fields — fields must exist first.
Card-to-record split analysis
We analyze a representative sample of MiniCRM Cards to determine the split logic for migrating to Twenty's Company-People-Opportunity model. Cards containing primarily contact information map to Twenty People; Cards containing company registration data (NIP, VAT number, business address) map to Twenty Company; Cards with both contact and company data may generate both records with a link between them. We document the split rules in the mapping document and validate with the customer's admin before running the full migration. Polish-language card labels and custom field names are confirmed during this step.
User and owner reconciliation
We extract every distinct MiniCRM worker (Pracownik) referenced on Cards, Tasks, and Deals and match by email against the Twenty Members list. Any MiniCRM worker without a matching Twenty Member goes to a reconciliation queue for the customer's admin to provision. Owner and assignee resolution must be complete before record import because MiniCRM task assignments and deal ownership reference workers by ID.
Migration execution in dependency order
We run production migration in record-dependency order: Members (validated), Companies (from MiniCRM Company records), People (with Card-based contacts mapped and Account resolved), Opportunities (with CompanyId and MemberId resolved), Tasks (with assignee resolved via Member mapping), Notes (linked to parent People, Company, or Opportunity), Custom field data (populated per record), and Tags (applied post-import). Each phase emits a row-count reconciliation report before the next phase begins. We do not migrate automation rules; these are documented and handed off.
Cutover, validation, and automation rebuild handoff
We freeze MiniCRM writes during cutover, run a final delta migration of any records modified during the migration window, then enable Twenty CRM as the system of record. We deliver the automation rule inventory document to the customer's admin team with recommended Twenty Workflow equivalents for each rule. We support a brief validation window where the customer's team spot-checks migrated records against the MiniCRM source. We do not rebuild MiniCRM automation rules as Twenty Workflows inside the migration scope; that is a separate configuration task for the customer's admin or a Twenty implementation partner.
Platform deep dives
MiniCRM
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 MiniCRM 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
MiniCRM: Not publicly documented.
Data volume sensitivity
MiniCRM 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 MiniCRM to Twenty CRM migration scoping. Not seeing yours? Book a call.
Walk through your MiniCRM 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 MiniCRM
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.