CRM migration
Field-level mapping, validation, and rollback between Propertybase and Twenty CRM. We move data and schema; workflows are rebuilt natively in Twenty CRM.
Propertybase
Source
Twenty CRM
Destination
Compatibility
10 of 12
objects map 1:1 between Propertybase and Twenty CRM.
Complexity
BStandard
Timeline
48–72 hours
Overview
Propertybase runs on a Salesforce backend, meaning its CRM data lives in standard Salesforce objects — Contacts, Accounts, Leads, Opportunities — plus Propertybase-specific custom objects for Listings, Offers, and real estate transaction tracking. When you migrate to Twenty CRM, which uses a streamlined People-Companies-Opportunities schema with full custom object support, the core challenge is mapping Propertybase's Salesforce record types and custom real-estate fields into Twenty's field model without losing transactional context. FlitStack AI extracts data via the Salesforce REST API (respecting per-user rate limits and excluding formula/roll-up summary fields that Propertybase exports always drop), then transforms and loads into Twenty using its CSV import or GraphQL API. Standard CRM objects — contacts, companies, deals, activities — migrate with direct or value-mapped field translations. Real estate-specific objects — Listings, Offers/Contracts, custom record types for individual buyers versus company contacts — require custom object creation in Twenty and careful association mapping. We preserve original create dates, owner assignments, and association links throughout. Workflows, validation rules, and report definitions do not migrate and must be rebuilt in Twenty or exported as reference documents for manual recreation.
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 Propertybase 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.
Propertybase
Contact (Individual)
Twenty CRM
People
1:1Propertybase Individual Contacts (SystemIsIndividual=TRUE) map directly to Twenty People. The ghost Account record that Salesforce requires for all contacts is discarded — Twenty People records have no mandatory AccountId requirement. Original create dates are preserved as a custom field since Twenty's CreatedAt is set at import time.
Propertybase
Contact (Company)
Twenty CRM
People + Companies
many:1Propertybase Company Contacts (SystemIsIndividual=FALSE) split into a Twenty People record (the contact person) and a Twenty Company record (the agency or brokerage they work for). The Person is linked to the Company via the companyId field. This separates the individual from the firm they represent.
Propertybase
Account
Twenty CRM
Companies
1:1Propertybase Accounts map directly to Twenty Companies. Company name, domain, industry, employee count, and annual revenue translate field-for-field. Parent-account hierarchies (if used) map to the Twenty Companies' own companyId for self-referential parent linking. Multi-company contact links are preserved as Twenty People-Company associations.
Propertybase
Opportunity (Deal)
Twenty CRM
Opportunities
1:1Propertybase deals stored as Salesforce Opportunities migrate to Twenty Opportunities. Deal name, amount, close date, stage, and probability translate with value-mapping on stage names. The Opportunity is linked to the primary Company and the primary associated People record via Twenty's companyId and peopleId fields.
Propertybase
Listing (custom object)
Twenty CRM
Custom Object: Listing
1:1Propertybase Listings are a custom Salesforce object tracking property-level data. Since Twenty has no native Listing object, FlitStack creates a Listing custom object in Twenty under Settings → Data Model before import. Property fields (address, price, bedrooms, bathrooms, sqft, listing status) are recreated as Twenty fields of the appropriate type.
Propertybase
Offer / Contract (custom object)
Twenty CRM
Custom Object: Offer
1:1Propertybase Offer/Contract records track purchase offers linked to Listings and Contact purchasers. These migrate as a second Twenty custom object (Offer) with lookup relations to the Listing and People custom objects. Offer amount, status, and terms fields map to identically named fields in Twenty. The Offer → Listing link uses Twenty's relation field type pointing to the Listing custom object.
Propertybase
Task / Event (activity)
Twenty CRM
Tasks
1:1Propertybase logged calls, emails, and meetings stored as Salesforce Tasks and Events migrate to Twenty Tasks. The Subject field carries the activity type (Call, Email, Meeting), and description fields preserve body text. Original timestamps and assigned owners are carried over. Recurring tasks and calendar Events are simplified to individual Task records in Twenty.
Propertybase
Lead
Twenty CRM
People
1:manyPropertybase Leads that have not been converted to Contacts are imported as Twenty People records tagged with a Lead_Source__c custom field to preserve origin. If a Lead has a corresponding Account or Opportunity in Propertybase, those relationships are preserved by matching on the source record's ID stored in a Source_System_ID__c field on the Twenty People record.
Propertybase
User (owner)
Twenty CRM
WorkspaceMember
1:1Propertybase owner assignments (Salesforce User IDs on Contacts, Accounts, Opportunities) are resolved by email. FlitStack matches the owner email on each Propertybase record to a Twenty workspace Member invited before migration. Unmatched owners are flagged in a pre-migration audit report; your team either invites those users to Twenty first or designates a fallback owner for assignment.
Propertybase
Attachment / File
Twenty CRM
Note (with file attachment)
1:1Propertybase file attachments on Listings, Offers, or Contacts are downloaded from Salesforce Files and re-uploaded to Twenty, attached to the corresponding record as a Note with a file link. Salesforce's 25MB per-file limit applies during extraction; files larger than this are flagged for manual handling.
Propertybase
Custom field (listing-specific)
Twenty CRM
Custom field on Listing object
1:1Propertybase custom fields added to Listings — such as property type, HOA fees, MLS number, or days-on-market — are created as Twenty fields on the Listing custom object before the data load. Field types are matched (text, number, select, date) based on Propertybase field metadata. Fields marked required in Propertybase are set required in Twenty's Data Model.
Propertybase
Workflow Rules
Twenty CRM
No equivalent
1:1Propertybase Workflow Rules govern offer-stage changes, listing-status updates, and contact assignment automation. These are platform-configured Salesforce workflows with no Twenty equivalent. FlitStack exports the workflow definitions as JSON reference documents your team uses to rebuild equivalent automations in Twenty's Settings → Workflows. This is a manual rebuild step — plan 1–3 days of configuration work.
| Propertybase | Twenty CRM | Compatibility | |
|---|---|---|---|
| Contact (Individual) | People1:1 | Fully supported | |
| Contact (Company) | People + Companiesmany:1 | Fully supported | |
| Account | Companies1:1 | Fully supported | |
| Opportunity (Deal) | Opportunities1:1 | Fully supported | |
| Listing (custom object) | Custom Object: Listing1:1 | Fully supported | |
| Offer / Contract (custom object) | Custom Object: Offer1:1 | Fully supported | |
| Task / Event (activity) | Tasks1:1 | Fully supported | |
| Lead | People1:many | Fully supported | |
| User (owner) | WorkspaceMember1:1 | Fully supported | |
| Attachment / File | Note (with file attachment)1:1 | Fully supported | |
| Custom field (listing-specific) | Custom field on Listing object1:1 | Fully supported | |
| Workflow Rules | No equivalent1: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.
Propertybase gotchas
Formula and roll-up summary fields excluded from exports
Ghost company records for Individual Contacts
Workflow rules do not export — automations must be rebuilt
Media Loader assets require separate migration path
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 Propertybase data and build the migration mapping document
FlitStack connects to your Propertybase Salesforce org via the REST API using a dedicated integration user with read-only access. We pull a full export of all objects including custom Listing and Offer fields, map every standard and custom field to its Twenty equivalent, and identify formula fields (which will be excluded per Salesforce's export rules). We also capture owner email addresses for resolution against Twenty workspace Members. The output is a field-level mapping document your team reviews before any data moves.
Create custom objects and fields in Twenty's Data Model
Before importing any records, FlitStack creates the Listing and Offer custom objects in Twenty under Settings → Data Model, along with all required fields and their types (text, number, select, relation). We also create any custom fields on the standard People and Companies objects (Lead_Source__c, Original_Create_Date__c, Source_System_ID__c) that carry Propertybase metadata across. This step requires a Twenty admin with Data Model write access. We deliver a step-by-step setup checklist based on the mapping document so your team can complete this independently or with our guidance.
Invite users to Twenty and resolve owner assignments
Twenty requires workspace Members to exist before user references (ownerId, assignee) can map during import. FlitStack generates an owner-resolution report listing every Propertybase owner email and whether it corresponds to an invited Twenty Member. Your team sends invitations to any missing users before the migration run. Owners without a matching Twenty account are assigned to a designated fallback Member — flagged in the report for later reassignment in Twenty after migration.
Run a sample migration with field-level diff
A representative slice — typically 200–500 records spanning People, Companies, Opportunities, Listings, and Offers — migrates first using the full mapping logic. FlitStack generates a field-level diff comparing source values against destination values for every mapped field, so you can verify stage name mappings, owner resolution, association links, and custom object field population before committing the full dataset. No records are deleted during this phase; the diff is a read-only validation.
Execute full migration with delta-pickup window
The full migration runs against Twenty using the validated mapping. A delta-pickup window of 24–48 hours following the initial load captures any records created or modified in Propertybase during the cutover period. Every operation is logged in FlitStack's audit log. If reconciliation fails — record counts don't match, associations are broken, or field values fall outside expected ranges — one-click rollback reverts the Twenty org to its pre-migration state so your team can investigate and re-run without data loss.
Platform deep dives
Propertybase
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 Propertybase 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
Propertybase: Salesforce API limits apply — not publicly documented per Propertybase tier.
Data volume sensitivity
Propertybase exposes a bulk API — large-volume migrations stream efficiently.
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 Propertybase to Twenty CRM migration scoping. Not seeing yours? Book a call.
Walk through your Propertybase 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 Propertybase
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.