CRM migration
Field-level mapping, validation, and rollback between Insight Legal Case Management and Twenty CRM. We move data and schema; workflows are rebuilt natively in Twenty CRM.
Insight Legal Case Management
Source
Twenty CRM
Destination
Compatibility
7 of 10
objects map 1:1 between Insight Legal Case Management and Twenty CRM.
Complexity
BStandard
Timeline
48–72 hours
Overview
Insight Legal Case Management stores a law-firm data model: Clients, Matters, Parties, Documents, Bills, Time Entries, and Fee Earners as interconnected structures. Twenty CRM's data model centers on People, Companies, Opportunities, Notes, and Tasks, with support for custom objects. These models diverge significantly — mapping matters (cases) to Opportunities, legal parties to People, and legal billing to custom objects is the core challenge. FlitStack AI migrates People, Companies, Opportunities, and standard activity records directly. Custom legal objects (matters, parties, documents, time entries, bills) map to Twenty custom objects with type-aware field translation. Workflows, automations, and billing logic do not transfer — Twenty's workflow builder is basic and its custom object model does not natively support legal trust accounting. We surface these for manual rebuild and export Insight Legal's workflow definitions as a reference document. The migration runs via scoped read access and CSV-based import into Twenty's API, with a 24–48 hour delta-pickup window capturing any records modified during cutover.
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 Insight Legal Case Management 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.
Insight Legal Case Management
Client
Twenty CRM
People
1:1Insight Legal Clients map directly to Twenty People. Client names, addresses, contact details, and email fields translate field-for-field. For clients who are organizations rather than individuals, map to Twenty Companies instead. Multi-contact clients (multiple fee earners per client) import as separate People records sharing the same client-level data, with FeeEarner links preserved as custom relation fields.
Insight Legal Case Management
Matter
Twenty CRM
Opportunity (custom object variant)
1:1Matters map to Twenty Opportunities but require a custom object in most firm configurations because Twenty's standard Opportunity lacks matter-specific fields (matter_number, practice_area, jurisdiction, opposing_counsel). We create a custom 'Matter' object in Twenty, then map Opportunity to link to it via a relation field. Matter status (Active, Closed, Pending) translates to Opportunity stage values, with probability and forecast category reapplied based on Twenty's stage model.
Insight Legal Case Management
Party
Twenty CRM
People + Custom junction object
1:manyParties split into two migration passes. First, unique party contacts (name, email, phone, role) load as Twenty People records. Second, party-to-matter associations (party_id, matter_id, role_type) load as a custom 'MatterParty' junction object with relation fields pointing to People and the Matter custom object. Party attributes like billing_contact_flag and attorney_role map to custom fields on the junction object.
Insight Legal Case Management
Document
Twenty CRM
Files + custom Document object
1:1Document metadata (filename, document_type, upload_date, related_matter_id, related_party_id) loads as records in a custom 'Document' object. The actual files export from Insight Legal, re-upload to Twenty's file storage via the API, and link back to Document records via file URLs. Document version history loads as a custom version_number field on the Document record. Inline images in document descriptions download and rehost.
Insight Legal Case Management
Bill
Twenty CRM
Custom Bill object
1:1Bills have no native equivalent in Twenty CRM. We create a custom 'Bill' object with fields for invoice_number, bill_date, total_amount, outstanding_balance, payment_status, and matter_id relation. Bill line items (service description, hours, rate, amount) load as a separate custom 'BillLineItem' object linked to Bill. The firm's billing workflow (approval, delivery, payment tracking) must be rebuilt as a manual process or via Twenty's workflow builder.
Insight Legal Case Management
TimeEntry
Twenty CRM
Custom TimeEntry object
1:1Time entries (date, hours, rate, description, billing_status, matter_id) load into a custom 'TimeEntry' object linked to the Matter custom object and to the FeeEarner (as a People record). Billable_vs_non_billable flags map to a custom select field. Hourly rate and total amount calculated fields can be stored directly or computed from hours × rate. Disbursement entries (out-of-pocket costs) load as a custom 'Disbursement' object with the same matter relation.
Insight Legal Case Management
FeeEarner
Twenty CRM
People + Workspace Member
many:1Fee earner records (name, email, role, department) merge into Twenty People records for contact purposes and simultaneously map to Twenty Workspace Members for system access. Fee earner email addresses are the matching key — if a fee earner email already exists as a Twenty user, records link automatically. Unmatched fee earners are flagged for admin review before migration so owner resolution works on the first pass.
Insight Legal Case Management
Note
Twenty CRM
Note
1:1Insight Legal notes with free-text content, create date, create user, and parent record links (matter_id or party_id) map to Twenty Notes. Rich-text formatting in note bodies is preserved as-is. Notes linked to both matters and parties create multiple Note records in Twenty, each with its own relation field pointing to the relevant People or Matter record.
Insight Legal Case Management
Trust Account
Twenty CRM
Custom TrustAccount + LedgerEntry objects
1:1Trust account balances, client ledger entries, and transaction history have no Twenty equivalent. We create a custom 'TrustAccount' object (linked to People as the client) and a custom 'LedgerEntry' object (linked to TrustAccount, with fields for transaction_date, entry_type, amount, description). The firm's trust accounting workflow must be rebuilt manually, as Twenty does not enforce legal compliance rules for client money handling.
Insight Legal Case Management
Calendar / Court Date
Twenty CRM
Task + custom CourtDate object
many:1Court dates and scheduled events map to Twenty Tasks with a custom 'CourtDate' checkbox field and a deadline (due_date) field set to the hearing date. Event start/end times, location, and hearing type load as custom fields on the Task record. Recurring court dates (monthly appearances, deadlines) require the firm to configure recurring tasks in Twenty manually post-migration.
| Insight Legal Case Management | Twenty CRM | Compatibility | |
|---|---|---|---|
| Client | People1:1 | Fully supported | |
| Matter | Opportunity (custom object variant)1:1 | Fully supported | |
| Party | People + Custom junction object1:many | Fully supported | |
| Document | Files + custom Document object1:1 | Fully supported | |
| Bill | Custom Bill object1:1 | Fully supported | |
| TimeEntry | Custom TimeEntry object1:1 | Fully supported | |
| FeeEarner | People + Workspace Membermany:1 | Fully supported | |
| Note | Note1:1 | Fully supported | |
| Trust Account | Custom TrustAccount + LedgerEntry objects1:1 | Fully supported | |
| Calendar / Court Date | Task + custom CourtDate objectmany: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.
Insight Legal Case Management gotchas
No public API forces all migrations through vendor services
Hybrid hosting creates two distinct extraction paths
Thousands of fields per matter require explicit scoping
Trust account compliance data has regulatory retention requirements
Out-of-the-box workflows may not transfer to non-Insight systems
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 Insight Legal export capabilities and data volume
FlitStack AI begins every Insight Legal engagement by confirming what export mechanisms are available — CSV exports for standard objects, vendor-assisted extraction, or direct database access for on-premise deployments. We audit record counts per object (Clients, Matters, Parties, Documents, Bills, Time Entries, Fee Earners), identify any data that requires special handling (binary document files, N:N relationship tables, trust account ledger entries), and flag export gaps before committing to a timeline. This discovery step produces a data inventory document that becomes the baseline for the migration plan and the custom object schema in Twenty.
Design Twenty custom object schema and field pre-creation plan
We produce a detailed Twenty schema plan: custom objects to create (Matter, TimeEntry, Bill, MatterParty, Document, TrustAccount, LedgerEntry), fields to add to standard objects (People, Company, Opportunity), field types, select options, and relation definitions. The plan is formatted as a step-by-step configuration guide for the Twenty admin. All custom fields and objects must be created in Settings → Data Model before any import runs — FlitStack AI validates that the schema is in place before triggering the migration. Fee earner-to-Twenty Member matching by email is documented in this step so owner resolution works correctly during import.
Sequence and execute multi-pass import in Twenty's required order
Twenty enforces import order: Companies first, then People (with companyId links), then Opportunities (with company and people relations), then custom objects last. We follow this sequence strictly. Matter records load before Party associations so matter_number externalIds are available for junction record lookups. Fee earner records import as People and simultaneously as Twenty Workspace Members. Each pass is validated independently — record counts, required field completeness, and relation resolution are checked before the next pass starts. Document files are extracted, re-uploaded to Twenty's file storage, and linked back to Document records via URLs in a separate post-import step.
Run sample migration with field-level verification
A representative sample (typically 200–500 records spanning all object types) migrates first. We generate a field-level diff between the Insight Legal source record and the corresponding Twenty destination record for every field in the mapping. This verifies matter_number mapping, party junction resolution, fee earner owner assignment, custom select option coverage, and timestamp preservation. Sample results are reviewed with the firm's migration lead before the full run commits. Any mapping adjustments are applied before the next pass runs.
Cut over with delta-pickup window and audit log
The full migration executes against Twenty. Insight Legal remains fully operational — FlitStack AI uses scoped read access only, so the team keeps working throughout. A delta-pickup window (typically 24–48 hours) captures any records created or modified in Insight Legal during the cutover window. An audit log records every import operation including record counts, error rows, and skipped records. One-click rollback is available if reconciliation identifies missing or mis-mapped data. Post-migration, we deliver a reconciliation report comparing source record counts to destination record counts per object and a field completeness score.
Platform deep dives
Insight Legal Case Management
Source
Strengths
Weaknesses
Twenty CRM
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 2 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 Insight Legal Case Management and Twenty CRM.
Object compatibility
2 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
Insight Legal Case Management: Not publicly documented.
Data volume sensitivity
Insight Legal Case Management 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 Insight Legal Case Management to Twenty CRM migration scoping. Not seeing yours? Book a call.
Walk through your Insight Legal Case Management 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 Insight Legal Case Management
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.