CRM migration
Field-level mapping, validation, and rollback between DGL Practice Manager and Twenty CRM. We move data and schema; workflows are rebuilt natively in Twenty CRM.
DGL Practice Manager
Source
Twenty CRM
Destination
Compatibility
12 of 12
objects map 1:1 between DGL Practice Manager and Twenty CRM.
Complexity
BStandard
Timeline
48–72 hours
Overview
DGL Practice Manager organizes clinical data around a patient-centric model: contacts, companies, appointments, invoicing, and EDI functions for insurer billing. Its SQL-based architecture stores patient records with referral sources, clinical notes, and financial transactions in tightly coupled tables. Twenty CRM organizes data around People (contacts), Companies (organizations), and Opportunities (deals) using a PostgreSQL-backed relational model with custom object support. The migration carries DGL contacts, companies, appointment histories, and invoicing records into Twenty's standard objects, while custom fields are recreated in Twenty's Settings → Data Model section. DGL's workflows, EDI configurations, and insurer-specific billing rules cannot migrate directly and must be rebuilt in Twenty or handled through integrations. FlitStack AI uses CSV exports from DGL mapped to Twenty's import API, respecting the required sequence: Companies first, then People with companyId links, then Opportunities with personId links. A delta-pickup window captures any records modified during cutover, and audit logs track every operation throughout the migration process.
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 DGL Practice Manager 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.
DGL Practice Manager
Patient / Contact
Twenty CRM
People
1:1DGL's patient records map directly to Twenty's People object. Each patient record carries name, email, phone, address, and demographic data that Twenty's standard People fields accept. DGL patients without email receive a placeholder email during migration for Twenty's uniqueness constraint compliance.
DGL Practice Manager
Practice / Clinic
Twenty CRM
Company
1:1DGL's practice or clinic entity — the organization the consultant works within — maps directly to Twenty's Companies object. The clinic name, address, phone, and industry classification transfer as standard Company fields. Multi-clinic setups that operate across several locations generate multiple Company records in Twenty, each linked to the appropriate consultant People records to preserve the organizational hierarchy from DGL.
DGL Practice Manager
Referring Physician
Twenty CRM
People (secondary)
1:1DGL tracks referring physicians as separate contact records. These map to Twenty People records with a custom 'Referrer' tag or a dedicated People view filtered by source field. Referrer attribution on patient records carries over as a People relation or custom field.
DGL Practice Manager
Appointment / Consultation
Twenty CRM
Task
1:1DGL appointment data (date, time, type, duration) migrates as Twenty Tasks linked to the patient People record. The Task 'body' field captures appointment type and notes; due date maps from appointment date. Recurring appointment series generate individual Task records per occurrence.
DGL Practice Manager
Invoice / Bill
Twenty CRM
Opportunity
1:1DGL invoicing records (amount, status, insurer, date) map to Twenty Opportunities. Invoice amount becomes Opportunity amount, invoice date becomes Close Date, and payment status (paid/pending/overdue) maps to a custom Opportunity stage. Unpaid invoices become open Opportunities with the original billing date preserved.
DGL Practice Manager
EDI / Insurer Submission
Twenty CRM
Custom Field on Opportunity
1:1DGL's EDI submission tracking — including insurer name, submission ID, and acknowledgement status — has no direct equivalent in Twenty's native data model. These fields are recreated as custom fields on the Opportunity object: Insurer_Name__c, EDI_Submission_ID__c, and EDI_Status__c. Your admin configures the pick-list options in Twenty's field settings to match the insurer codes used in DGL, ensuring submission tracking continues without interruption after migration.
DGL Practice Manager
Clinical Note
Twenty CRM
Note
1:1DGL clinical notes attached to patient records migrate as Twenty Notes linked to the corresponding People record. The original author, creation date, and note content transfer completely. Rich-text formatting simplifies to plain text for compatibility with Twenty's Note field structure, ensuring all clinical documentation is preserved in readable format.
DGL Practice Manager
Document / Attachment
Twenty CRM
Note Attachments
1:1DGL document attachments — including referral letters, clinical reports, and supporting files — are re-uploaded to Twenty as Note attachments. File size limits per Twenty's storage configuration apply and should be verified before migration. Inline images embedded within documents are extracted and hosted separately, with the original links preserved in the Note body to maintain document context.
DGL Practice Manager
User / Owner
Twenty CRM
Workspace Member
1:1DGL user accounts (consultants, secretaries, admin staff) map to Twenty Workspace Members. Resolution happens by email match — each DGL user email must have a corresponding Twenty account invitation sent before migration so owner assignments on records resolve correctly. Unmatched users are flagged for fallback assignment.
DGL Practice Manager
Custom Property (patient)
Twenty CRM
Custom Field on People
1:1DGL custom properties on patient records (e.g., referral source, insurance provider, clinical classification) migrate as custom fields on Twenty's People object. Each custom property requires a corresponding field created in Settings → Data Model before import; field type (text, select, multi-select) matches DGL's data type where determinable.
DGL Practice Manager
Workflow / Automation
Twenty CRM
Workflow (manual rebuild)
1:1DGL workflows and automated sequences (appointment reminders, invoice follow-ups, insurer escalation rules) do not migrate to Twenty. These must be rebuilt using Twenty's workflow builder (Settings → Workflows) or via integrations. FlitStack exports your DGL workflow definitions as a configuration reference document for your Twenty admin.
DGL Practice Manager
Report / Dashboard
Twenty CRM
View (manual rebuild)
1:1DGL reports and dashboards built on its SQL schema cannot migrate directly to Twenty. Twenty's Views (table, kanban, pipeline) serve a similar purpose — your admin recreates key reports by configuring Twenty Views with the migrated data. The underlying report data (contacts, invoices, appointments) is available in Twenty for rebuilding.
| DGL Practice Manager | Twenty CRM | Compatibility | |
|---|---|---|---|
| Patient / Contact | People1:1 | Fully supported | |
| Practice / Clinic | Company1:1 | Fully supported | |
| Referring Physician | People (secondary)1:1 | Fully supported | |
| Appointment / Consultation | Task1:1 | Fully supported | |
| Invoice / Bill | Opportunity1:1 | Fully supported | |
| EDI / Insurer Submission | Custom Field on Opportunity1:1 | Fully supported | |
| Clinical Note | Note1:1 | Fully supported | |
| Document / Attachment | Note Attachments1:1 | Fully supported | |
| User / Owner | Workspace Member1:1 | Fully supported | |
| Custom Property (patient) | Custom Field on People1:1 | Fully supported | |
| Workflow / Automation | Workflow (manual rebuild)1:1 | Fully supported | |
| Report / Dashboard | View (manual rebuild)1: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.
DGL Practice Manager gotchas
Per-invoice insurer submission charges inflate costs silently
Extortionate data extraction fee creates lock-in barrier
No public API means migration relies on DGL's goodwill
SQL infrastructure update in progress may alter the schema
Document generation depends on Microsoft Word on the local machine
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 DGL data model and export configuration
FlitStack AI begins every migration with a structured data audit of your DGL Practice Manager instance. We identify all record types (patients, practices, referrers, appointments, invoices, clinical notes), quantify record counts per type, and document any custom properties or EDI configurations. This audit produces a DGL export specification: which objects to export, which fields to include, and export order to support the required import sequencing. We also flag records with missing required fields (e.g., patients without email) that need placeholder values before Twenty import.
Prepare Twenty workspace schema
Before data moves, your Twenty admin creates the custom fields identified during the DGL audit in Settings → Data Model. FlitStack delivers a field creation checklist mapping each DGL custom property to a Twenty field name, type, and (for select fields) option list values. We also configure Opportunity stages to match your DGL invoice payment statuses, and invite all DGL users to Twenty so owner resolution by email succeeds during import. The Twenty workspace must be schema-ready before migration validation begins.
Run test migration with sample data
A representative slice of DGL records — typically 200–500 covering patients, practices, appointments, invoices, and clinical notes — migrates first into your Twenty workspace. FlitStack generates a field-level diff report comparing source values against destination fields, flagging any mapping gaps, transform errors, or duplicate email conflicts. You review the diff with your admin, confirm Opportunity stage mapping, and approve the field mapping before the full migration commits. This step catches schema mismatches before thousands of records land in Twenty.
Execute full migration with delta-pickup window
Once the test migration is approved, FlitStack runs the full export from DGL Practice Manager and import into Twenty following the required sequence: Companies first (referrer organizations), then People (patients and referrers with companyId links), then Opportunities (invoices with personId links), then Tasks (appointments) and Notes (clinical records). A delta-pickup window of 24–48 hours captures any DGL records modified or created during the cutover period. Every operation is logged in an audit trail, and one-click rollback reverts all changes if reconciliation fails.
Deliver reconciliation report and rebuild reference
Post-migration, FlitStack delivers a reconciliation report comparing DGL record counts and key field totals against Twenty record counts and sums. Mismatches are investigated and corrected. We also deliver a DGL workflow export — a structured document listing your DGL automation rules (appointment reminders, invoice follow-ups, insurer escalations) as a reference for rebuilding in Twenty's workflow builder. The document includes trigger conditions, action sequences, and any third-party integrations DGL used so your admin can reconstruct operational workflows in Twenty.
Platform deep dives
DGL Practice Manager
Source
Strengths
Weaknesses
Twenty CRM
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 1 of 8 objects need a manual workaround.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across DGL Practice Manager and Twenty CRM.
Object compatibility
1 of 8 objects need a manual workaround.
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
DGL Practice Manager: Not publicly documented.
Data volume sensitivity
DGL Practice Manager 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 DGL Practice Manager to Twenty CRM migration scoping. Not seeing yours? Book a call.
Walk through your DGL Practice Manager 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 DGL Practice Manager
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.