CRM migration
Field-level mapping, validation, and rollback between Wetroo CRM and Twenty CRM. We move data and schema; workflows are rebuilt natively in Twenty CRM.
Wetroo CRM
Source
Twenty CRM
Destination
Compatibility
8 of 11
objects map 1:1 between Wetroo CRM and Twenty CRM.
Complexity
BStandard
Timeline
2-4 weeks
Overview
Moving from Wetroo CRM to Twenty CRM is a structural migration that benefits teams outgrowing Wetroo's mobile-first feature set and API constraints. Wetroo organizes data around Leads, Contacts, Companies, Deals, and Activities tied to WhatsApp conversations, but its API exposes only two documented endpoints and provides no bulk-export path, meaning all record extraction relies on scripted paginated API access. Twenty CRM uses a People object (not separate Lead and Contact) with flexible custom object support, giving teams a more expressive data model once they leave Wetroo's WhatsApp-first constraints. We extract Wetroo Leads and Contacts as distinct People records in Twenty, preserving source attribution from Facebook Lead Forms or Google Data Extractor, map Deal stages to Twenty's Opportunities with pipeline stage configuration, and extract WhatsApp message threads as Note or Message records. Drip sequences, automation rules, and workflow logic do not migrate because Wetroo stores them in an automation layer with no portable schema. We deliver a written inventory of these for the customer's admin to rebuild in Twenty.
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 Wetroo 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.
Wetroo CRM
Lead
Twenty CRM
People
1:1Wetroo Leads (primary intake object with source attribution from Facebook Lead Forms, Google Data Extractor, or manual entry) map to Twenty People records. We preserve the lead source as a custom field or tag in Twenty. Any lead status field (qualified, unqualified, follow-up) migrates as a custom picklist field. If the Wetroo account has already converted some Leads to Contacts, we treat Contacts as the canonical People record and do not duplicate from Lead.
Wetroo CRM
Contact
Twenty CRM
People
1:1Wetroo Contacts (enriched records after lead qualification) map directly to Twenty People. Phone numbers, email addresses, lifecycle stage, and custom field values migrate. Note that Twenty's standard People fields are minimal out of the box — per GitHub issue #13953, Twenty ships without industry-standard fields like jobTitle, department, and website as standard fields; we create these as custom fields in Settings → Data Model before import.
Wetroo CRM
Company
Twenty CRM
Company
1:1Wetroo Companies (account-level objects linking Contacts and Deals) map to Twenty Companies. Company names, industry tags, address, and billing data migrate. Custom fields on Companies require pre-creation in Twenty's Data Model before import. The Company object is created in Twenty before People import so that the People-to-Company relation is satisfied at insert time.
Wetroo CRM
Deal
Twenty CRM
Opportunity
1:1Wetroo Deals tied to Companies and Contacts with a stage value map to Twenty Opportunities. We preserve deal value, expected close date, stage name, and owner assignment. Pipeline stages map to Twenty's Opportunity stage values, and we configure the pipeline view (Kanban) to match Wetroo's stage ordering.
Wetroo CRM
Pipeline and Stages
Twenty CRM
Opportunity pipeline view
lossyWetroo pipeline configuration (stages, stage order, probability values) reads from Wetroo's API and maps to Twenty's Opportunity pipeline view. We configure stage names and probabilities in Twenty before importing Opportunities. Any custom stage-level fields (stage-specific required fields) require pre-creation in Twenty Data Model.
Wetroo CRM
Activities: Call Logs (OBD)
Twenty CRM
Task (call subtype)
1:1Wetroo OBD (outbound dialer) call records are accessible via the /api/v1/?apirequest=obd_record endpoint. We extract call duration, disposition, timestamp, and linked Contact. These map to Twenty Task records with a call subtype tag. Owner assignment resolves by email match against Twenty Users.
Wetroo CRM
Activities: Notes
Twenty CRM
Note
1:1Wetroo notes attached to Leads, Contacts, Companies, or Deals map to Twenty Note records linked to the corresponding People, Company, or Opportunity via Twenty's relation system. Rich text formatting is preserved where Wetroo's export format supports it.
Wetroo CRM
WhatsApp Conversations
Twenty CRM
Message or Note
1:manyWhatsApp conversation threads are accessible via Wetroo's conversation API. We extract message content, timestamps, sender and receiver, and media attachment references. Media files download separately and are re-attached in Twenty. Message threads attach to the corresponding People record. Note that this adds an extraction step beyond the standard CSV workflow and affects timeline estimates for high-volume WhatsApp accounts.
Wetroo CRM
Tasks and Events
Twenty CRM
Task
1:1Wetroo Tasks and calendar Events (meetings, appointments) migrate to Twenty Tasks. Due dates, assignee, status, and attendee data preserve. Automated reminders tied to Wetroo's automation layer do not migrate because those are automation-layer objects. Event records from Wetroo map to Twenty Tasks with a meeting subtype and location preserved.
Wetroo CRM
Custom Fields
Twenty CRM
Custom Fields
lossyCustom fields on Leads, Contacts, Companies, and Deals are supported for migration. We map named custom fields to equivalent custom fields created in Twenty Settings → Data Model before import. Picklist and multi-select values require value-list mapping against the destination picklist options. Fields with no match in Twenty are flagged for the customer's admin to review. Per Twenty's import documentation, fields must exist in the Data Model before CSV import begins — we create these during the schema setup phase.
Wetroo CRM
Users (Team Members)
Twenty CRM
Users (Members)
1:1Wetroo User records (name, email, role, team assignment) migrate to Twenty Members. Team structures and sub-teams map to Twenty's user hierarchy. Owner assignments on Deals and Activities resolve by email match against Twenty Members. Wetroo's seat-tier limits (20 on Business) do not constrain migration but we flag user counts against Wetroo plan tier during scoping to identify if a plan upgrade is needed before extraction.
| Wetroo CRM | Twenty CRM | Compatibility | |
|---|---|---|---|
| Lead | People1:1 | Fully supported | |
| Contact | People1:1 | Fully supported | |
| Company | Company1:1 | Fully supported | |
| Deal | Opportunity1:1 | Fully supported | |
| Pipeline and Stages | Opportunity pipeline viewlossy | Fully supported | |
| Activities: Call Logs (OBD) | Task (call subtype)1:1 | Fully supported | |
| Activities: Notes | Note1:1 | Fully supported | |
| WhatsApp Conversations | Message or Note1:many | Mapping required | |
| Tasks and Events | Task1:1 | Fully supported | |
| Custom Fields | Custom Fieldslossy | Mapping required | |
| Users (Team Members) | Users (Members)1:1 | Mapping required |
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.
Wetroo CRM gotchas
No official bulk-export endpoint complicates migration extraction
Drip sequences and automation logic are not exportable
Seat-tier limits can cause billing surprises during team migration
WhatsApp message history requires separate 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 scoping
We audit the Wetroo account for record counts across Leads, Contacts, Companies, Deals, Activities, and WhatsApp conversations. We document any custom fields in use, pipeline configurations (stage names, stage count), user count against current plan tier, active drip sequences and automation rules, and any integration configurations that connect Wetroo to external systems. This produces a written migration scope, a Wetroo plan-tier check (to flag if an upgrade is needed before extraction), and a custom field inventory requiring creation in Twenty's Data Model.
Twenty workspace setup
We create the Twenty workspace and configure the data model before any data extraction begins. This includes creating all custom fields identified during discovery (matching Wetroo field names and types), configuring the Opportunities pipeline view to match Wetroo's stage order and probability values, inviting all team members to Twenty and confirming acceptance before proceeding, and setting up Company and Opportunity record types. Per Twenty's documentation, all fields must exist before import — we complete this step in full before moving to extraction.
Wetroo data extraction via paginated API
We extract records from Wetroo using paginated REST API calls with API-key authentication. Since Wetroo has no bulk-export endpoint, we pull Leads, Contacts, Companies, Deals, Tasks, and Notes in batches. WhatsApp conversations are extracted separately via the conversation API. OBD call records are pulled from the /api/v1/?apirequest=obd_record endpoint. We calibrate pagination limits during a test pass and estimate total extraction time based on record volume. Any custom fields not present in Wetroo's API response are flagged for the customer to provide as supplementary data.
Data transformation and mapping
We transform extracted records into Twenty's CSV import format. Key transformations include splitting Leads and Contacts into People records with source attribution preserved, mapping Deal stage values to Twenty Opportunity stage values, resolving Wetroo owner email addresses to Twenty Member references, mapping picklist and multi-select values to Twenty's select field options, and normalizing phone number formats and date fields. We generate a field mapping document during this step for customer review.
Staged import into Twenty
We import records into Twenty in dependency order: Companies first (to satisfy the relation on People), then People (with CompanyId resolved), then Opportunities (with CompanyId and OwnerId resolved), then Tasks and Notes (linked to People, Companies, and Opportunities). WhatsApp message threads are imported last as Note or Message records attached to People. Each phase emits a row-count reconciliation report showing records imported versus records expected. Any records that fail validation (missing required fields, unmatched lookups) are held in a reconciliation queue for resolution.
Cutover, validation, and automation inventory delivery
We freeze Wetroo writes during cutover, run a delta migration of any records modified during the migration window, then hand over Twenty as the system of record. We deliver the drip sequence and automation inventory document (listing every Wetroo sequence, its trigger, steps, and recommended replacement approach for Twenty or a third-party automation tool), the field mapping document, and the post-migration configuration checklist (views, permissions, pipeline view customization). We support a three-day hypercare window for reconciliation issues. We do not rebuild Wetroo sequences in Twenty as part of migration scope.
Platform deep dives
Wetroo CRM
Source
Strengths
Weaknesses
Twenty CRM
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 3 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 Wetroo CRM and Twenty CRM.
Object compatibility
3 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
Wetroo CRM: Not publicly documented.
Data volume sensitivity
Wetroo 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 Wetroo CRM to Twenty CRM migration scoping. Not seeing yours? Book a call.
Walk through your Wetroo 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 Wetroo 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.