CRM migration

Migrate from Sensei Cloud to Microsoft Dynamics 365 Sales

Field-level mapping, validation, and rollback between Sensei Cloud and Microsoft Dynamics 365 Sales . We move data and schema; workflows are rebuilt natively in Microsoft Dynamics 365 Sales .

Sensei Cloud logo

Sensei Cloud

Source

Microsoft Dynamics 365 Sales

Destination

Microsoft Dynamics 365 Sales  logo

Compatibility

91%

10 of 11

objects map 1:1 between Sensei Cloud and Microsoft Dynamics 365 Sales .

Complexity

BStandard

Timeline

2–4 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Sensei Cloud is a dental-practice-management platform built around patients, providers, appointments, treatment plans, insurance carriers, and billing claims. Microsoft Dynamics 365 Sales is a general-purpose sales CRM built around accounts, contacts, leads, opportunities, and activities. The two platforms share almost no native object equivalence, which makes this one of the more complex CRM-adjacent migrations in our catalog. We extract records from Sensei Cloud via the platform's REST API and structured exports, then load them into Dynamics 365 Sales through the Dataverse Web API. Patient demographics, contact information, and insurance records land in Contact and custom fields. Provider information maps to Contact records with a custom Role field. Appointment history, treatment plans, and clinical notes migrate as Activity records or custom Treatment Plan entities. Billing ledger entries migrate as custom Invoice or Payment records. The migration does not move Sensei Cloud workflows, fee schedules, clinical imaging files (those re-upload to SharePoint or Dynamics 365's native file storage), or insurance eligibility rules — those are configuration artifacts that must be rebuilt in Dynamics 365 or referenced from exported documentation. FlitStack AI sequences the load so parent records (practices as Accounts, providers as Contacts) exist before child records (patients, appointments) to preserve referential integrity through the Dataverse API.

Field-level fidelity

Every standard and custom field arrives verified.

Schema-aware mapping

AI proposes the map; you confirm before any record moves.

Relationships preserved

Parent–child, lookups, and ownership stay linked.

Full activity history

Calls, emails, meetings — with original timestamps.

Attachments & notes

Documents, uploads, and inline notes move with the record.

Why teams make this switch

Two sides of the same decision

Leaving

Sensei Cloud logo

Sensei Cloud

What's pushing teams away

  • Conversion from SoftDent and other legacy systems is messy, generating duplicate charts, inconsistent ledger entries, and billing records that do not reconcile cleanly in the new environment.
  • Cloud performance issues including slowness, login problems, and unreliable data syncing frustrate high-volume practices that depend on constant uptime throughout the clinical day.
  • Surgical workflows for oral surgeons feel adapted rather than native, with gaps in medical billing, cross-coding, and referral management that require persistent workarounds.
  • Radiograph visualization is not natively built into the core software, forcing practices to purchase and integrate the separate Sensei Imaging addon to view digital images within the platform.
  • Billing ledger bugs cause completed and paid accounts to show outstanding balances, making collections tracking unreliable and creating reconciliation headaches for front-office staff.

Choosing

Microsoft Dynamics 365 Sales  logo

Microsoft Dynamics 365 Sales

What's pulling them in

  • Deep Microsoft 365, Teams, and Outlook integration makes Microsoft Dynamics 365 Sales a natural fit for Microsoft-first organizations already invested in that ecosystem
  • Sales Enterprise and Premium tiers offer unlimited custom tables and advanced AI-driven forecasting and predictive analytics not available in lower tiers
  • Professional tier pricing at $65 per user per month offers a lower entry cost than Salesforce for SMB teams with straightforward CRM needs
  • Flexible customization options allow businesses to build bespoke apps, tailor forms and views, and integrate with other Dynamics 365 modules
  • Microsoft Copilot AI tools are embedded directly into the sales workflow on Enterprise and Premium, automating routine tasks and providing deal intelligence

Object mapping

How Sensei Cloud objects map to Microsoft Dynamics 365 Sales

Each row shows how a Sensei Cloud 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.

Sensei Cloud

Patient

maps to

Microsoft Dynamics 365 Sales

Contact

1:1
Fully supported

Patient first name, last name, date of birth, address, phone, and email map directly to Dynamics 365 Contact fields. The patient's primary dental practice is stored as AccountId lookup. Insurance subscriber relationship is preserved as a custom field or through the Contact's Related Contacts mechanism.

Sensei Cloud

Patient

maps to

Microsoft Dynamics 365 Sales

Account

many:1
Fully supported

Sensei Cloud does not have a separate Account entity — the practice or DSO name lives on the Patient record. We split this into Dynamics 365 Account (the practice/DSO name) and Contact (the individual patient), linking them via AccountId. Multi-location practices create a parent Account hierarchy in Dynamics.

Sensei Cloud

Provider / Dentist

maps to

Microsoft Dynamics 365 Sales

Contact

1:1
Fully supported

Provider records (dentist, hygienist, specialist) from Sensei Cloud map to Dynamics 365 Contact records tagged with a custom Provider_Role__c pick-list field (e.g., General Dentist, Oral Surgeon, Orthodontist). Provider NPI numbers map to a custom NPI__c field. Active/inactive status maps to a custom Provider_Status__c field.

Sensei Cloud

Appointment

maps to

Microsoft Dynamics 365 Sales

Custom Appointment Table (Appointment__c) or Bookable Resource Booking

1:1
Fully supported

Sensei Cloud appointment records (date, time, provider, procedure codes, treatment room, status) have no native Dynamics 365 equivalent. We create a custom Appointment__c table in Dataverse keyed to the Contact (patient) and the Provider Contact. CDT procedure codes map to a custom Procedure_Code__c pick-list. Appointment status (Confirmed, Completed, No-Show, Cancelled) maps to a custom Status__c field.

Sensei Cloud

Treatment Plan

maps to

Microsoft Dynamics 365 Sales

Custom Treatment_Plan__c Table

1:1
Fully supported

Treatment plans in Sensei Cloud include proposed procedures, tooth numbers, surface annotations, fees, and insurance estimates. We create a custom Treatment_Plan__c table linked to Contact (patient), storing procedure descriptions, CDT codes, estimated fees, and the planning provider as a Contact lookup. Historical plans migrate as completed records with a Completed_Date__c timestamp.

Sensei Cloud

Clinical Note / Per-Tooth Charting

maps to

Microsoft Dynamics 365 Sales

Custom Clinical_Note__c Table

1:1
Fully supported

Clinical notes and per-tooth charting data (surfaces treated, materials used, periodontal readings) have no Dynamics 365 equivalent. We create a custom Clinical_Note__c table linked to Contact and Appointment__c, storing note content as a long-text field, tooth numbers as a text field, and periodontal data as structured custom fields. Original clinical timestamps are preserved.

Sensei Cloud

Insurance Carrier

maps to

Microsoft Dynamics 365 Sales

Account

1:1
Fully supported

Sensei Cloud insurance carrier records (payer name, payer ID, address) map to Dynamics 365 Account records with a custom Insurance_Carrier__c = true flag. Subscriber ID, group number, and subscriber relationship (Self, Spouse, Dependent) are custom fields on the patient Contact record. Insurance-eligible procedure lists are preserved as custom pick-list values on the Treatment_Plan__c procedure field.

Sensei Cloud

Billing Ledger / Claim

maps to

Microsoft Dynamics 365 Sales

Custom Billing_Ledger__c Table

1:1
Fully supported

Sensei Cloud ledger entries (charge, payment, adjustment, insurance payment, write-off, claim status) map to a custom Billing_Ledger__c table linked to Contact and Treatment_Plan__c. Entry type maps to a pick-list (Charge, Payment, Adjustment, Insurance Payment, Write-off). Claim submission status maps to a custom Claim_Status__c field. Original posting dates are preserved as custom datetime fields.

Sensei Cloud

Referral Source / Marketing Source

maps to

Microsoft Dynamics 365 Sales

Custom Referral_Source__c Field on Contact

1:1
Fully supported

How the patient found the practice (referral, advertising, organic search, etc.) is stored in Sensei Cloud as a patient property. We migrate this as a custom pick-list field (Referral_Source__c) on Contact. If the referral is a specific dentist or physician, that provider record exists in Dynamics as a Contact with Provider_Role__c = Referral.

Sensei Cloud

Document / Attachment (clinical images, signed forms)

maps to

Microsoft Dynamics 365 Sales

SharePoint (via Dynamics 365 integrated document management) or Note / Attachment on Contact

1:1
Fully supported

Sensei Cloud file attachments (PDF treatment plans, signed consent forms, imaging exports) are downloaded and re-uploaded to the SharePoint document library integrated with the Dynamics 365 Contact record. Smaller attachments (signed forms as PDFs) can attach directly to the Contact record via Dynamics Notes and Attachments. File size limits from the Dynamics/SharePoint integration apply.

Sensei Cloud

Insurance Eligibility Response

maps to

Microsoft Dynamics 365 Sales

Custom Insurance_Eligibility__c Table

1:1
Fully supported

Eligibility check results—including coverage percentage, annual maximum remaining, deductible met, and applicable waiting periods—are stored as custom Insurance_Eligibility__c table records in Dataverse, linked to the patient Contact and to the Insurance Carrier Account. The eligibility check date, response timestamp, and payer response code are preserved as custom datetime and text fields for audit continuity and downstream reconciliation.

Gotchas + challenges

What specifically takes care here

Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.

Sensei Cloud logo

Sensei Cloud gotchas

High

Legacy conversion leaves messy patient and chart duplicates

Medium

Chrome-only browser support affects migration workstation compatibility

Medium

Imaging data requires separate Carestream-format conversion pipeline

Low

Billing ledger errors cannot be corrected post-creation

Low

Provider assignments sometimes stored as text rather than foreign key

Microsoft Dynamics 365 Sales  logo

Microsoft Dynamics 365 Sales gotchas

High

Professional tier 15-table custom table limit blocks migrations

High

October 2024 pricing increase applies at renewal for all customers

Medium

Custom fields must be created in the UI before API writes

Medium

Power Platform request limits apply to bulk migrations

Medium

Activity records orphaned to inactive owners fail silently

Pair-specific challenges

  • Sensei Cloud has no native Account entity — data must be split into Contact + Account

    Sensei Cloud stores the practice or DSO name directly on the Patient record rather than maintaining a separate practice/company object. Dynamics 365 Sales requires Contacts to be associated with an Account via the AccountId lookup. We extract the practice name from each Patient record, deduplicate it across all patients at the same location, and create one Dynamics Account per physical practice before any Contact records are loaded. If your Sensei Cloud instance has multi-location patients with no location field, the deduplication logic requires a customer decision rule — we surface this before the migration runs.

  • Appointment and treatment plan objects require custom Dataverse tables that must exist before data loads

    Dynamics 365 Sales ships with no appointment or treatment-plan entities. We create custom tables (Appointment__c and Treatment_Plan__c) in the Dataverse environment during the schema-setup phase before any records are migrated. If you are on Dynamics 365 Sales Professional, note that this tier caps custom tables at 15 — a migration with appointment history, treatment plans, clinical notes, and billing ledger may exceed that ceiling, which would require a Sales Enterprise license upgrade. We validate table count against the destination license tier before committing to the migration plan.

  • Insurance subscriber relationships in Sensei Cloud use a flat model with no separate subscriber record

    In Sensei Cloud, the insurance subscriber relationship (Self, Spouse, Dependent) is a property on the patient record. Dynamics 365 does not have a native subscriber-dependency model — insurance coverage must be represented through a combination of Account (carrier), Contact (patient), and custom fields (subscriber ID, group number, relationship). For patients who are themselves subscribers, the Contact and the subscriber are the same record. For dependents, the primary subscriber must be a separate Contact record linked to the same Account, and the dependent's Contact links to the primary subscriber Contact. We map this with a custom Insurance_Primary_Subscriber__c lookup on Contact.

  • Clinical imaging exports from Sensei Cloud cannot be embedded in Dynamics — re-hosting required

    Sensei Cloud stores CBCT images, intraoral photos, and radiographs in its own imaging storage. These files are accessible via the Sensei Cloud Imaging export interface (download as DICOM, JPEG, or PNG) but have no migration path into Dynamics 365 Sales. We export the imaging files and re-host them in the SharePoint document library that Dynamics 365 connects to natively. Links from the Contact record to the SharePoint folders are created via the Dynamics 365 SharePoint integration. The original imaging metadata (study date, modality, provider who captured it) is preserved in a custom Clinical_Imaging__c table.

  • Sensei Cloud fee schedules and insurance fee-table logic do not migrate

    Sensei Cloud stores procedure fee schedules tied to specific insurance carrier contracts — the fee charged for CDT code D0150 varies by insurance plan. Dynamics 365 Sales has no native fee-schedule engine. We migrate the last-known fee and insurance-allowed amounts as custom currency fields on the Treatment_Plan__c record. Fee-schedule management for ongoing operations must be rebuilt in Dynamics 365 using a combination of Product records with per-account price lists or a Power Apps canvas app — we provide a fee-schedule export from Sensei Cloud as a rebuild reference.

Migration approach

Six steps for a successful Sensei Cloud to Microsoft Dynamics 365 Sales data migration

  1. Extract Sensei Cloud data via REST API and structured exports

    FlitStack AI connects to Sensei Cloud using the API credentials provided during onboarding. We extract patient demographics, provider records, appointment history, treatment plans, insurance carrier data, and billing ledger entries in sequence. For clinical notes and imaging metadata, we use Sensei Cloud's export tools and the imaging download interface. We generate a pre-migration data inventory showing record counts per object so both teams can confirm scope before schema setup begins.

  2. Stand up Dynamics 365 custom tables and field-level security

    Before any records move, we create the custom Dataverse tables required for this migration: Appointment__c, Treatment_Plan__c, Clinical_Note__c, Billing_Ledger__c, Insurance_Eligibility__c, and associated custom fields on Contact and Account. We configure Field-Level Security on sensitive fields (SSN_Last_Four__c) so only authorized roles can read them. If the destination is Sales Professional, we validate that total custom-table count stays within the 15-table limit and flag any overage to the customer before the migration plan is finalized.

  3. Load Accounts and Contacts first, then providers, then patients

    Dynamics 365 requires Accounts to exist before Contacts can reference them via AccountId. We load insurance carrier Accounts first (flagged Insurance_Carrier__c = true), then provider Contacts with their Provider_Role__c and NPI__c values, then patient Contacts linked to the appropriate Account. Owner resolution maps the Sensei Cloud provider or admin user email to a Dynamics 365 user by email match — unmatched owners are flagged before migration commits so the customer can assign a fallback owner or provision the user in Dynamics 365 first.

  4. Migrate appointments, treatment plans, and clinical notes with parent-record integrity

    With Accounts and Contacts in place, we load Appointment__c records linking each appointment to the patient Contact and the provider Contact by their Source_System_ID__c lookups. Treatment plans follow, linked to Contact and Appointment__c. Clinical notes and per-tooth charting records complete the clinical picture. All records carry their original creation and modification timestamps as custom datetime fields so reporting continuity is preserved from day one in Dynamics 365.

  5. Migrate billing ledger and insurance eligibility data

    Billing ledger entries and insurance eligibility responses are loaded last, once all patient Contacts are confirmed in Dynamics 365. Claim status transitions are preserved as a time-ordered audit trail on each Billing_Ledger__c record. We run a field-level reconciliation comparing total ledger charges, payments, and adjustments in Sensei Cloud against the sum of migrated Billing_Ledger__c amounts — any discrepancy above 0.01% triggers a re-run of the billing migration before go-live.

  6. Run delta pickup, re-host imaging in SharePoint, and deliver final audit log

    After the full migration commits, we open a delta window (24–48 hours) capturing any records created or modified in Sensei Cloud during the cutover. Imaging files are exported from Sensei Cloud Imaging and uploaded to the SharePoint document library, with folder links mapped back to each patient Contact record. FlitStack AI delivers a complete audit log of all insert, update, and link operations. One-click rollback reverts the Dynamics 365 environment to its pre-migration state if reconciliation uncovers data integrity issues.

Platform deep dives

Context on both ends of the pair

Sensei Cloud logo

Sensei Cloud

Source

Strengths

  • Cloud-native access means teams schedule, chart, and collect payments from any location or device with a browser login.
  • Carestream imaging integration brings digital radiography, CBCT, and intraoral scans directly into the patient record within the same platform.
  • Centralized multi-location management gives group practices and DSOs a single dashboard for operations and performance across every office.
  • Practice management data including scheduling, treatment planning, billing, and EHR lives in one platform rather than across disconnected legacy systems.

Weaknesses

  • Conversion from legacy Carestream products like SoftDent and Windent consistently generates messy data with duplicate records and reconciliation gaps.
  • Radiograph visualization requires the separate Sensei Imaging addon; the core platform does not display digital images natively.
  • Duplicate charts cannot be merged or deleted within the software, forcing staff to work around or ignore redundant patient records.
  • Ledger entries are difficult to delete or alter after creation, making it hard to correct billing errors post-commitment.
Microsoft Dynamics 365 Sales  logo

Microsoft Dynamics 365 Sales

Destination

Strengths

  • Native integration with Microsoft 365, Teams, Outlook, and SharePoint for unified productivity workflow
  • Unlimited custom tables and complex workflows on Enterprise tier enable deep customization for complex sales processes
  • AI-driven predictive analytics and deal intelligence on Enterprise and Premium tiers help sales teams prioritize pipeline
  • Dataverse unified data layer provides a consistent API and data model across all Dynamics 365 and Power Platform apps
  • Strong security model with Field-Level Security and Record Ownership rules for governance-conscious enterprises

Weaknesses

  • Sales Professional tier caps custom tables at 15, creating a migration ceiling for highly customized SMB environments
  • October 2024 pricing increases of $15 per user across all tiers apply to existing customers upon renewal
  • Implementation typically requires costly certified partners, adding 30–50% to total project cost
  • Updates and platform releases can disrupt customizations and plugins, requiring regression testing after each wave
  • Non-Microsoft integrations require additional configuration or middleware, limiting flexibility for heterogeneous tech stacks

Complexity grading

How hard is this migration?

Standard CRM migration. All 8 core objects map 1:1 between Sensei Cloud and Microsoft Dynamics 365 Sales .

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Sensei Cloud and Microsoft Dynamics 365 Sales .

  • Object compatibility

    A

    All 8 core objects map 1:1 between Sensei Cloud and Microsoft Dynamics 365 Sales .

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    8-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    B

    Sensei Cloud: Not publicly documented.

  • Data volume sensitivity

    B

    Sensei Cloud doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your Sensei Cloud to Microsoft Dynamics 365 Sales migration cost

Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.

Step 1

What are you migrating?

Pick a category, then your source and destination platforms.

Category

FAQ

Frequently asked questions about Sensei Cloud to Microsoft Dynamics 365 Sales data migrations

Answers to the questions buyers ask most during Sensei Cloud to Microsoft Dynamics 365 Sales migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Sensei Cloud to Microsoft Dynamics 365 Sales migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Small-to-mid dental practices with under 25,000 patient records and no complex custom objects typically complete in 2–4 weeks. Multi-location DSOs with over 100,000 records, insurance ledger history, and imaging re-hosting extend to 6–10 weeks. The longest single step is often the insurance subscriber relationship mapping (determining who is the primary subscriber for each dependent), which requires a data-quality decision from the practice administrator before bulk loading begins.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Sensei Cloud.
Land in Microsoft Dynamics 365 Sales , intact.

Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.

Accuracy guarantee Rollback included Quote in 1 business day