CRM migration
Field-level mapping, validation, and rollback between BlinQ and Twenty CRM. We move data and schema; workflows are rebuilt natively in Twenty CRM.
BlinQ
Source
Twenty CRM
Destination
Compatibility
12 of 12
objects map 1:1 between BlinQ and Twenty CRM.
Complexity
BStandard
Timeline
48–72 hours
Overview
Blinq is a digital business card management platform with native CRM integrations — it stores card-holder contacts, tags, meeting notes, and card-sharing metadata, but does not itself offer deal pipelines, native workflows, or a full contact-activity model. Twenty CRM is an open-source platform with standard objects for People, Companies, Opportunities, Notes, and Tasks, supporting unlimited custom fields and self-hosting. The migration moves Blinq card-holder profiles into Twenty People records, preserves tags and meeting context in custom fields and Notes, and links each person to a primary company using email or domain matching. Because Blinq has no native opportunity, task, or workflow system, those areas are built fresh in Twenty. FlitStack AI uses Blinq's REST API for export, sequences the import into Twenty's CSV/Bulk API in dependency order (Companies → People → custom objects), runs field-level validation before committing, and captures a delta window for any cards created during cutover. The process includes comprehensive data audit, custom field creation in Twenty's Settings → Data Model, user provisioning, sample migration with field-level diff, and full production run with deduplication across file chunks when record counts exceed Twenty's 20,000-row ceiling.
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 BlinQ 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.
BlinQ
Card / Contact
Twenty CRM
People
1:1Blinq card-holder profiles map directly to Twenty People records with field-for-field translation. First name, last name, email, phone, job title, and address fields migrate directly. Blinq's card-sharing metadata (shares, views) and tag data are preserved in custom fields on the People record to maintain lead-scoring context and segmentation capability in Twenty's environment.
BlinQ
Company / Organization
Twenty CRM
Companies
1:1Blinq stores associated company names and domains on card profiles. These map to Twenty Companies records. The Blinq domain field maps to the Twenty Website field. Companies are migrated first so People records can reference them via companyId during import.
BlinQ
Primary Company
Twenty CRM
People → companyId (relation)
1:1Blinq allows multiple associated companies per contact (N:N model). Twenty People records support a single primary companyId relation. FlitStack resolves the primary company using the most-recently-associated company or a specified priority rule, then surfaces additional associations as a custom field for reference.
BlinQ
Tag / Qualifier
Twenty CRM
Custom field on People
1:1Blinq tags and qualifiers (e.g., 'Event Attendee', 'Warm Lead', 'VIP') have no native equivalent in Twenty. We create a custom multi-select or text field (Tags__c) on the People object and populate it with the Blinq tag list, preserving the original taxonomy for filtering and segmentation.
BlinQ
Meeting Record / Meeting Note
Twenty CRM
Notes
1:1Blinq meeting records with titles, dates, and notes map to Twenty Notes objects. Each Note is linked to the corresponding People record via the Note's relation field. Original meeting dates and titles are preserved as Note metadata fields so activity timelines remain accurate after migration.
BlinQ
Meeting Count / Interaction Count
Twenty CRM
Custom field on People
1:1Blinq tracks how many times two contacts have met or interacted. Twenty has no native meeting-count field. We migrate this as a custom integer field (Meetings_Count__c) on the People object, giving sales reps the same relationship-depth signal they had in Blinq.
BlinQ
Social Links (LinkedIn, Twitter, etc.)
Twenty CRM
Custom fields on People
1:1Blinq card profiles include social media URLs (LinkedIn, Twitter, Instagram) as card fields. Twenty's People object has a standard Links field. For additional social links beyond the standard slots, we create custom URL fields (LinkedIn_URL__c, Twitter_URL__c) on the People object.
BlinQ
Card Share Count / View Count
Twenty CRM
Custom field on People
1:1Blinq tracks how many times a card has been shared or viewed. These are engagement signals that sales teams used to prioritize warm leads. We migrate these as custom integer fields (Card_Shares__c, Card_Views__c) on the People object for reporting continuity in Twenty.
BlinQ
External CRM Sync Metadata
Twenty CRM
Custom field on People
1:1Blinq stores metadata about which external CRM a contact synced to and when. If Blinq contacts were previously synced to Salesforce or HubSpot, we preserve that sync history as a custom text field (CRM_Sync_History__c) on the People record so teams know which contacts were already enriched.
BlinQ
Workflow / Automation
Twenty CRM
None
1:1Blinq has no native workflow or automation engine. All automation lives in Zapier or similar third-party tools connecting Blinq to other CRMs. These integrations must be rebuilt as Twenty webhook triggers and Zapier/Make connections using Twenty's API. No Blinq-native automation data needs migration.
BlinQ
Credit / Billing Record
Twenty CRM
Custom field on People
1:1Blinq's credit-based billing (shares, scans, sync counts) is a platform-level billing construct with no equivalent in Twenty. We preserve remaining share credits and sync counts as a custom field (Blinq_Usage_Reference__c) for billing reconciliation purposes, but Twenty does not use this data for any platform feature.
BlinQ
Custom Card Field
Twenty CRM
Custom field on People
1:1Blinq Business and Enterprise plans allow custom card fields beyond the standard set. Each unique custom card field Blinq has configured becomes a custom field in Twenty's Settings → Data Model under the People object, with the field type matched to the data (text, URL, date, etc.).
| BlinQ | Twenty CRM | Compatibility | |
|---|---|---|---|
| Card / Contact | People1:1 | Fully supported | |
| Company / Organization | Companies1:1 | Fully supported | |
| Primary Company | People → companyId (relation)1:1 | Fully supported | |
| Tag / Qualifier | Custom field on People1:1 | Fully supported | |
| Meeting Record / Meeting Note | Notes1:1 | Fully supported | |
| Meeting Count / Interaction Count | Custom field on People1:1 | Fully supported | |
| Social Links (LinkedIn, Twitter, etc.) | Custom fields on People1:1 | Fully supported | |
| Card Share Count / View Count | Custom field on People1:1 | Fully supported | |
| External CRM Sync Metadata | Custom field on People1:1 | Fully supported | |
| Workflow / Automation | None1:1 | Fully supported | |
| Credit / Billing Record | Custom field on People1:1 | Fully supported | |
| Custom Card Field | Custom field on People1: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.
BlinQ gotchas
Credit system charges per scan and sync
Recipient solicitation emails sent automatically
No public bulk export API documented
CRM sync deduplication rules affect imported records
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 Blinq workspace via API
FlitStack AI authenticates to the Blinq API using the workspace credentials, enumerates all card records, tag taxonomies, meeting notes, and company associations, and exports the full dataset. We log the API rate limit of the account tier during this phase — if the tier is below Business and the record count exceeds 5,000, we plan multiple paginated export sessions with backoff logic to avoid hitting the rate ceiling.
Design Twenty data model and create custom fields
Based on the Blinq audit findings, we define and create all required custom fields in Twenty's Settings → Data Model before importing any data. This includes Tags__c, Qualifiers__c, Card_Shares__c, Card_Views__c, Meetings_Count__c, LinkedIn_URL__c, Twitter_URL__c, Source_System_ID__c, CRM_Sync_History__c, and additional custom fields identified during the audit scope. Since Twenty requires field definitions to exist prior to CSV import, this step runs first to ensure the import schema is fully prepared and validated when migration data begins arriving through the pipeline.
Invite and provision Twenty users
Twenty requires workspace users to exist before owner and assignee relations can resolve during import. We export the owner list from Blinq (card owners by email) and compare against the Twenty user list. Any unmatched owners are flagged — teams either invite the user to Twenty first or designate a fallback assignee. No People record imports without a resolved owner in Twenty.
Import Companies, then People, then Notes in dependency order
Twenty's CSV import resolves relations by unique field values — a People record with a companyId must have that Company record already present. We sequence the import as: (1) Companies — using domain as the unique key, (2) People — with companyId resolved by matching company name to the imported Companies, (3) Notes — linked to People by email. For workspaces over 20,000 records, we split into multiple CSV chunks under the per-file limit.
Run sample migration and field-level diff
A representative sample of 100–500 records migrates first, covering a cross-section of tag types, meeting records, contacts with multiple company associations, and contacts with social links. We generate a field-level diff comparing source Blinq values against the migrated Twenty values so you can verify tag mapping, primary company resolution, meeting linkage, and custom field population before the full run commits.
Platform deep dives
BlinQ
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 BlinQ 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
BlinQ: Not publicly documented.
Data volume sensitivity
BlinQ 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 BlinQ to Twenty CRM migration scoping. Not seeing yours? Book a call.
Walk through your BlinQ 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 BlinQ
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.