CRM migration
Field-level mapping, validation, and rollback between Dentrix and Microsoft Dynamics 365 Sales . We move data and schema; workflows are rebuilt natively in Microsoft Dynamics 365 Sales .
Dentrix
Source
Microsoft Dynamics 365 Sales
Destination
Compatibility
13 of 13
objects map 1:1 between Dentrix and Microsoft Dynamics 365 Sales .
Complexity
BStandard
Timeline
2–4 weeks
Overview
Dentrix stores patient demographics, clinical charts, insurance breakdowns, appointment schedules, and provider records in a purpose-built dental schema. Microsoft Dynamics 365 Sales operates on the Dataverse CRM model with standard tables for Account, Contact, Lead, and Opportunity — plus custom tables for domain-specific data. There is no native dental equivalent in Dynamics 365 Sales, so every clinical object requires a custom entity or custom field build. FlitStack AI extracts Dentrix data via its API Exchange Program and database file export, maps patients to Contact records, insurance carriers to custom fields, appointments to Dynamics 365 Activities, and clinical notes to a custom DentalRecord entity. We preserve original create dates and provider assignments throughout. Treatment plan workflows, insurance verification automations, and recall sequences do not migrate — those must be rebuilt using Dynamics 365 Sales processes or Power Automate. The migration runs as a scoped read from Dentrix so your practice continues operations during the cutover window, with a delta pickup capturing any records created or modified during the final 24–48 hours before switchover.
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.
Source platform
Dentrix platform overview
Scorecard, SWOT, gotchas, and pricing for Dentrix.
Destination platform
Microsoft Dynamics 365 Sales platform overview
Scorecard, SWOT, gotchas, and pricing for Microsoft Dynamics 365 Sales .
Data migration guide
The complete Microsoft Dynamics 365 Sales migration guide
Data model, import mechanisms, field mapping strategy, pitfalls, and cutover — by the engineers running it.
Destination checklist
Microsoft Dynamics 365 Sales migration checklist
Pre- and post-cutover tasks for moving onto Microsoft Dynamics 365 Sales .
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a Dentrix object lands in Microsoft Dynamics 365 Sales , including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Dentrix
Patient
Microsoft Dynamics 365 Sales
Contact
1:1Dentrix Patient maps to Dynamics 365 Contact. The primary name, date of birth, address, phone, and email fields transfer directly. Insurance sub-tables attached to a Patient record are extracted separately and mapped to custom fields on the Contact. The original Dentrix patient identifier is stored in SourcePatientID__c for reconciliation and delta deduplication, and any guarantor information is linked via the Parent Contact field.
Dentrix
Patient Guardian / Responsible Party
Microsoft Dynamics 365 Sales
Contact
1:1Guardians and responsible parties are contacts in Dentrix but may not have their own patient record. We create a separate Contact record and link it to the patient via the Parent Contact field or a custom Relationship custom field in Dataverse.
Dentrix
Provider / Dentist
Microsoft Dynamics 365 Sales
SystemUser / Contact
1:1Treating dentists and hygienists in Dentrix map to Dynamics 365 SystemUser records if they need CRM login access, or to Contact records if they are referral sources only. Provider specialty (DDS, DMD, RDH) is preserved as a custom pick-list field on the SystemUser.
Dentrix
Insurance Carrier
Microsoft Dynamics 365 Sales
Custom Entity: InsuranceCarrier
1:1Dentrix stores insurance carrier name, address, and EDI payer ID. Since Dynamics has no native insurance carrier object, we create a custom InsuranceCarrier table in Dataverse. Each Carrier record is then linked to the Contact via a custom lookup field on the Contact record.
Dentrix
Patient Insurance
Microsoft Dynamics 365 Sales
Custom Fields on Contact
1:1Group number, subscriber ID, subscriber relationship (self/spouse/child/other), effective date, and remaining annual benefits transfer as custom fields on the Contact. Fee schedule tables from Dentrix are stored as a related custom entity linked to the InsuranceCarrier. Dual-coverage patients receive two InsuranceCarrier lookups, one for primary and one for secondary, preserving the complete coverage hierarchy.
Dentrix
Appointment
Microsoft Dynamics 365 Sales
Appointment (Activity)
1:1Dentrix appointments contain operatory, provider, CDT procedure codes, appointment type, and status. We map to the Dynamics Appointment entity and add custom fields for Operatory, CDTCode, ProcedureType, and AppointmentStatus so the clinical scheduling context is preserved in the CRM. The provider field resolves to a SystemUser owner by email match, with unresolved providers flagged for manual assignment before the migration run.
Dentrix
Treatment Plan
Microsoft Dynamics 365 Sales
Custom Entity: TreatmentPlan
1:1Treatment plans with procedure codes, surfaces, quadrants, fees, and provider notes have no Dynamics equivalent. We create a TreatmentPlan custom table on Dataverse linked to the Contact record, storing each planned procedure as a line item with CDT code, tooth surface, fee, and status.
Dentrix
Clinical Note / Progress Note
Microsoft Dynamics 365 Sales
Annotation (Notes) / Custom Entity: ClinicalNote
1:1Per-visit clinical notes, periodontal charting, and oral health observations are stored as free-text notes in Dentrix. We migrate these as Dataverse Annotations linked to the Contact, with a custom ClinicalNoteType pick-list to distinguish between perio charts, exam notes, and narrative notes.
Dentrix
Prescription
Microsoft Dynamics 365 Sales
Custom Entity: Prescription
1:1Prescription records (medication, dosage, frequency, prescriber, date) require a custom Prescription table in Dataverse linked to the Contact. This preserves the clinical medication history separately from general note activity. Each prescription record includes MedicationName__c, Dosage__c, Frequency__c, Prescriber__c, and PrescriptionDate__c fields, allowing the care team to view medication history directly within the patient Contact timeline.
Dentrix
Ledger / Payment Record
Microsoft Dynamics 365 Sales
Custom Entity: PatientLedger
1:1Dentrix ledger entries (charges, payments, adjustments, insurance payments, write-offs) are financial records without a direct CRM equivalent. We create a PatientLedger custom table with Amount, Type (Charge/Payment/Adjustment/InsurancePayment/WrittenOff), Date, and Provider fields linked to Contact. The Type field uses a custom pick-list matching Dentrix ledger categories, ensuring accurate financial categorization in Dynamics 365 Sales.
Dentrix
Document / Attachment (X-rays, forms)
Microsoft Dynamics 365 Sales
SharePoint / Dynamics 365 AI Builder
1:1Dentrix attachments (digital X-rays, intake forms, signed consent documents) are downloaded and re-uploaded to the Dynamics 365 SharePoint integration or Dataverse file attachments on the Contact record. File size limits of the destination storage apply, and any attachments exceeding the limit are flagged for manual transfer or compression before the migration run.
Dentrix
Recall / Re-care
Microsoft Dynamics 365 Sales
Custom Entity: RecallTask
1:1Dentrix recall entries (cleaning due, perio maintenance due, annual exam due) map to a custom RecallTask table on Dataverse with RecallType, DueDate, and CompletedDate fields linked to the Contact. These tasks can trigger Power Automate flows to send patient reminders, update the Contact timeline, or create follow-up appointments in Dynamics 365 Sales.
Dentrix
Lab Case
Microsoft Dynamics 365 Sales
Custom Entity: LabCase
1:1Lab cases (crowns, dentures, night guards) with lab name, Rx date, due date, shade, and status have no CRM equivalent. We create a LabCase custom table linked to Contact and to the associated TreatmentPlan for traceability. Each LabCase record stores LabName__c, RxDate__c, DueDate__c, Shade__c, and Status__c, enabling the dental team to view lab progress directly in Dynamics 365 Sales.
| Dentrix | Microsoft Dynamics 365 Sales | Compatibility | |
|---|---|---|---|
| Patient | Contact1:1 | Fully supported | |
| Patient Guardian / Responsible Party | Contact1:1 | Fully supported | |
| Provider / Dentist | SystemUser / Contact1:1 | Fully supported | |
| Insurance Carrier | Custom Entity: InsuranceCarrier1:1 | Fully supported | |
| Patient Insurance | Custom Fields on Contact1:1 | Fully supported | |
| Appointment | Appointment (Activity)1:1 | Fully supported | |
| Treatment Plan | Custom Entity: TreatmentPlan1:1 | Fully supported | |
| Clinical Note / Progress Note | Annotation (Notes) / Custom Entity: ClinicalNote1:1 | Fully supported | |
| Prescription | Custom Entity: Prescription1:1 | Fully supported | |
| Ledger / Payment Record | Custom Entity: PatientLedger1:1 | Fully supported | |
| Document / Attachment (X-rays, forms) | SharePoint / Dynamics 365 AI Builder1:1 | Fully supported | |
| Recall / Re-care | Custom Entity: RecallTask1:1 | Fully supported | |
| Lab Case | Custom Entity: LabCase1: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.
Dentrix gotchas
No public API for Dentrix G data extraction
Imaging files stored separately from patient records
Balance-forward billing ledger requires explicit handling
In-flight insurance claims must clear before cutover
Custom fields vary per practice with no standard schema
Microsoft Dynamics 365 Sales gotchas
Professional tier 15-table custom table limit blocks migrations
October 2024 pricing increase applies at renewal for all customers
Custom fields must be created in the UI before API writes
Power Platform request limits apply to bulk migrations
Activity records orphaned to inactive owners fail silently
Pair-specific challenges
Migration approach
Schema discovery and custom entity build in Dynamics 365 Dataverse
FlitStack AI runs a schema discovery pass against your Dentrix database (via Migration and Installation Tool export or API) to enumerate all patient fields, insurance sub-tables, appointment attributes, and custom columns your office has added. We then build the required custom tables in your Dynamics 365 Sales Dataverse environment — InsuranceCarrier, TreatmentPlan, PatientLedger, RecallTask, LabCase, ClinicalNote — before any data loads. You review and approve the schema plan before the first record is written.
Owner and provider resolution by email match
Dentrix providers and referring dentists are resolved against Dynamics 365 SystemUser and Contact records by email address. Providers with active CRM logins become SystemUser owners on their appointments and clinical notes. Referral sources with no Dynamics account become Contact records. Providers not matched by email are flagged before migration so your team either creates their user account or designates a fallback owner — no clinical record lands without a valid owner.
Patient and insurance data migration first, then clinical records
Dynamics 365 requires Account or Contact to exist before related records can link via lookup fields. We sequence the migration so Contact records (patients) load first, then the InsuranceCarrier custom table, then Patient Insurance custom fields on each Contact. Once all patient and insurance records are committed, appointment, treatment plan, ledger, recall, and clinical note records load with their Contact lookups resolving correctly. Any broken foreign-key references are surfaced in the field-level diff before the full run commits.
Sample migration with field-level diff and insurance mapping validation
A representative slice of 100–300 patient records — spanning different insurance types, appointment histories, and treatment plan statuses — migrates first. We generate a field-level diff comparing source Dentrix values against the destination Dynamics records so you can verify CDT code mapping, insurance field completeness, operatory field population, and owner resolution. Insurance mapping validation is particularly important for practices with dual coverage (primary and secondary insurance), which generates two InsuranceCarrier lookups per Contact.
Delta pickup and go-live cutover with audit log
Full migration runs against your Dynamics 365 Sales environment. A delta-pickup window of 24–48 hours captures any new patients, appointments, or insurance changes made in Dentrix during the cutover. FlitStack AI generates a migration audit log listing every record created, updated, or skipped, with source Dentrix IDs and destination Dynamics IDs for reconciliation. One-click rollback is available if post-migration validation finds discrepancies beyond your agreed tolerance threshold.
Platform deep dives
Dentrix
Source
Strengths
Weaknesses
Microsoft Dynamics 365 Sales
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. All 8 core objects map 1:1 between Dentrix and Microsoft Dynamics 365 Sales .
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Dentrix and Microsoft Dynamics 365 Sales .
Object compatibility
All 8 core objects map 1:1 between Dentrix and Microsoft Dynamics 365 Sales .
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
Dentrix: Not publicly documented for Dentrix Ascend API Exchange.
Data volume sensitivity
Dentrix 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 Dentrix to Microsoft Dynamics 365 Sales migration scoping. Not seeing yours? Book a call.
Walk through your Dentrix to Microsoft Dynamics 365 Sales migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Dentrix
Other ways to arrive at Microsoft Dynamics 365 Sales
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.