CRM migration
Field-level mapping, validation, and rollback between Phreesia and Microsoft Dynamics 365 Sales . We move data and schema; workflows are rebuilt natively in Microsoft Dynamics 365 Sales .
Phreesia
Source
Microsoft Dynamics 365 Sales
Destination
Compatibility
14 of 14
objects map 1:1 between Phreesia and Microsoft Dynamics 365 Sales .
Complexity
BStandard
Timeline
48–72 hours
Overview
Phreesia is a patient intake and engagement platform designed for healthcare organizations—it stores patient demographics, insurance verification records, appointment data, clinical screening results, consent forms, and payment information. Dynamics 365 Sales is Microsoft's CRM built for sales pipeline management, lead tracking, and account relationships. These platforms serve fundamentally different business functions, which means the migration requires deliberate choices about what healthcare data becomes CRM data. FlitStack AI migrates patient demographic records to Dynamics 365 Contact entities, with organization-level data routing to Account records when a healthcare organization relationship exists in Phreesia. Insurance carrier, plan name, member ID, and group number migrate to custom fields since Dynamics 365 Sales has no native insurance data structure. Visit history, appointment timestamps, and clinical screening responses transfer to custom entities that your team configures before data lands. Patient intake workflows, appointment reminder sequences, and clinical screening automations do not migrate—Dynamics 365 Sales lacks a patient-engagement framework. Phreesia's automations must be rebuilt using Power Automate or Dynamics workflow tools. We provide an export of your Phreesia workflow definitions as a rebuild reference. The migration uses Phreesia's API to extract patient records, transforms healthcare-specific fields into CRM-compatible formats, and loads into Dynamics 365 via the Dataverse API. A sample migration validates field-level accuracy before the full run. A 24–48 hour delta pickup window captures any new patient registrations 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.
Source platform
Phreesia platform overview
Scorecard, SWOT, gotchas, and pricing for Phreesia.
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 Phreesia 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.
Phreesia
Patient
Microsoft Dynamics 365 Sales
Contact
1:1Phreesia patient records map directly to Dynamics 365 Contact entities. First name, last name, email, phone, address, and date of birth transfer as standard Contact fields. If a patient record includes an employer or organization link in Phreesia, that relationship routes to an Account record with the Contact linked via AccountId.
Phreesia
Patient Organization / Employer
Microsoft Dynamics 365 Sales
Account
1:1Phreesia patient records may include an employer or affiliated healthcare organization. When present, this organization maps to a Dynamics 365 Account record. The Account stores organization name, address, and domain. If no employer is stored, patients without organizations attach to a default 'Individual Patients' Account record.
Phreesia
Insurance Record
Microsoft Dynamics 365 Sales
Custom Fields on Contact + Account
1:1Phreesia stores insurance carrier name, plan name, member ID, group number, subscriber name, and eligibility status. Dynamics 365 Sales has no native insurance structure. We create custom text fields on both Contact (Insurance_Member_ID__c, Insurance_Group__c) and Account (Insurance_Carrier__c, Insurance_Plan__c) to preserve the full insurance record.
Phreesia
Visit / Appointment
Microsoft Dynamics 365 Sales
Custom Visit Entity (Dataverse table)
1:1Phreesia visit records include appointment timestamp, provider name, visit reason, and clinical notes. Dynamics 365 Sales has no native appointment entity for patient visits. We create a custom Dataverse table (Patient_Visit__c) with fields for visit date, provider, reason, and notes, linked to the Contact record via a lookup relationship.
Phreesia
Clinical Screening Response
Microsoft Dynamics 365 Sales
Custom Screening Entity + Custom Fields on Contact
1:1Phreesia captures structured clinical screening responses (social determinants of health, risk assessments, patient-reported outcomes). These map to custom fields on Contact and a linked custom Screening entity in Dataverse. If the screening uses a pick-list or multi-select format in Phreesia, we apply value mapping to the Dynamics custom pick-list.
Phreesia
Consent Form
Microsoft Dynamics 365 Sales
Note (Attachment) + Custom Fields on Contact
1:1Phreesia digital consent records include consent type, signature timestamp, and the signed form document. We preserve the signed form as a Note attachment on the Contact record and create custom fields (Consent_Type__c, Consent_Completed_Date__c, Consent_Valid_Until__c) for structured tracking. The Note stores the actual PDF or image of the signed form.
Phreesia
Payment Method / Card on File
Microsoft Dynamics 365 Sales
Custom Fields on Contact
1:1Phreesia stores payment card type, last four digits, and billing address for card-on-file records. These map to custom encrypted text fields on Contact (Payment_Method_Type__c, Payment_Last_Four__c, Billing_Postal_Code__c). Full card numbers do not migrate due to PCI compliance—the last-four and type are sufficient for payment reconciliation in Dynamics.
Phreesia
Appointment Reminder Workflow
Microsoft Dynamics 365 Sales
No Equivalent
1:1Phreesia appointment reminder sequences (SMS, email, IVR reminders before a visit) have no direct equivalent in Dynamics 365 Sales. These automations must be rebuilt in Power Automate or Dynamics workflows using appointment date triggers from the Patient_Visit__c custom entity. We export the Phreesia workflow definitions as a configuration reference.
Phreesia
Recall / Re-engagement Campaign
Microsoft Dynamics 365 Sales
Dynamics 365 Sales Playbooks or Power Automate
1:1Phreesia's recall campaigns (follow-up reminders for preventive care, annual wellness visits, specialist referrals) do not migrate. Dynamics 365 Sales Playbooks or Power Automate flows can replicate this behavior using the Patient_Visit__c custom entity and Contact records as triggers. We provide a workflow export for your Power Platform team to rebuild.
Phreesia
Patient Relationship to Provider
Microsoft Dynamics 365 Sales
Contact-to-Contact Relationship or Custom Junction Entity
1:1Phreesia associates patients with their care team members (primary care provider, specialists, referring physicians). Dynamics 365 Sales stores person-to-person relationships using the native Contact relationships feature or a custom Patient_Provider_Junction__c entity. We map provider names to related Contact records and establish the relationship in Dynamics.
Phreesia
Patient Balance / Outstanding Balance
Microsoft Dynamics 365 Sales
Custom Field on Contact
1:1Phreesia tracks patient outstanding balances from time-of-service payments. This value migrates to a custom currency field (Outstanding_Balance__c) on the Contact record. Dynamics 365 Sales does not have a native patient billing object—your billing team reconciles this field against your PM or billing system post-migration.
Phreesia
Referral Source
Microsoft Dynamics 365 Sales
Custom Field on Contact + Opportunity (if applicable)
1:1Phreesia records how a patient was referred (self-referred, physician referral, insurance network, marketing campaign). We map this to a custom pick-list field (Referral_Source__c) on Contact. If the referral originates from a referring physician in your network, that physician becomes an Account or Contact record with a referral relationship established.
Phreesia
Eligibility Verification Result
Microsoft Dynamics 365 Sales
Custom Fields on Contact
1:1Phreesia runs real-time insurance eligibility verification and stores the result (active, inactive, coverage details). This migrates to custom fields on Contact (Eligibility_Status__c, Eligibility_Check_Date__c, Eligibility_Coverage_Details__c). The verification result is preserved for historical reference but does not affect Dynamics workflows. If your organization uses the eligibility data for reporting or segmentation, the fields can be included in Dynamics views and Power BI dashboards without additional configuration.
Phreesia
Patient Communication Preferences
Microsoft Dynamics 365 Sales
Custom Fields on Contact
1:1Phreesia tracks whether patients prefer SMS, email, or phone contact, and whether they've opted out of marketing communications. We map these preferences to custom fields on Contact (Preferred_Contact_Method__c, SMS_Opt_In__c, Marketing_Email_Opt_In__c) for compliance tracking in Dynamics. These fields enable your team to respect patient preferences during outreach and ensure that Dynamics marketing emails comply with opt‑out requests.
| Phreesia | Microsoft Dynamics 365 Sales | Compatibility | |
|---|---|---|---|
| Patient | Contact1:1 | Fully supported | |
| Patient Organization / Employer | Account1:1 | Fully supported | |
| Insurance Record | Custom Fields on Contact + Account1:1 | Fully supported | |
| Visit / Appointment | Custom Visit Entity (Dataverse table)1:1 | Fully supported | |
| Clinical Screening Response | Custom Screening Entity + Custom Fields on Contact1:1 | Fully supported | |
| Consent Form | Note (Attachment) + Custom Fields on Contact1:1 | Fully supported | |
| Payment Method / Card on File | Custom Fields on Contact1:1 | Fully supported | |
| Appointment Reminder Workflow | No Equivalent1:1 | Fully supported | |
| Recall / Re-engagement Campaign | Dynamics 365 Sales Playbooks or Power Automate1:1 | Fully supported | |
| Patient Relationship to Provider | Contact-to-Contact Relationship or Custom Junction Entity1:1 | Fully supported | |
| Patient Balance / Outstanding Balance | Custom Field on Contact1:1 | Fully supported | |
| Referral Source | Custom Field on Contact + Opportunity (if applicable)1:1 | Fully supported | |
| Eligibility Verification Result | Custom Fields on Contact1:1 | Fully supported | |
| Patient Communication Preferences | Custom Fields on Contact1: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.
Phreesia gotchas
PM/EHR integration configuration must be validated before patient data import
Custom intake forms lack a standard schema export
Phreesia is an intake platform, not a longitudinal patient database
Patient secure authentication links are time-limited and non-migratable
Payment plan configurations require manual reconciliation
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
Stand up Dynamics 365 Sales schema before data extraction
FlitStack AI delivers a schema setup plan that specifies every custom field, custom entity, and pick-list value set required in your Dynamics 365 Sales Dataverse environment before extraction begins. This includes the Patient_Visit__c entity, Patient_Screening__c entity, and all insurance, consent, and payment custom fields on Contact and Account. Your Dynamics admin creates these fields in the destination environment. Migration cannot begin until the schema is in place.
Extract patient data from Phreesia via API
We use Phreesia's API to extract patient records, insurance data, visit history, clinical screening responses, and consent forms. The extraction pulls all records modified since the last sync timestamp. If Phreesia's API returns paginated results, we batch the extraction to handle large datasets without exceeding Phreesia's rate limits. Unmapped fields are flagged and surfaced in the field-level diff before the destination load.
Transform healthcare data into Dynamics 365 Sales format and load to Dataverse
Patient demographics transform to Contact records. Organization data transforms to Account records with Contact linked via AccountId lookup. Insurance data maps to custom fields on both Contact and Account. Visit history loads to the Patient_Visit__c custom entity linked to Contact. Clinical screening data loads to Patient_Screening__c. Consent form PDFs re-upload as Note attachments. We resolve Phreesia provider names to related Contact records for patient-provider relationship mapping.
Run sample migration with field-level diff
A representative slice of 50–100 patient records migrates first, spanning multiple visit records, insurance scenarios, and consent types. We generate a field-level diff report showing source Phreesia values against destination Dynamics 365 values for every field. You verify insurance data mapping, visit history linking, consent attachment preservation, and referral source placement before the full migration commits. The sample includes both recent patients and those with extensive historical visit data to test performance under load. Your team reviews the diff, flags any mismatched option-set values, and approves the sample before proceeding.
Execute full migration with delta-pickup window
The full patient dataset migrates to Dynamics 365 Sales. A delta-pickup window of 24–48 hours captures any new patient registrations, visit updates, or consent completions that occur in Phreesia during the cutover period. Audit logs document every record created or updated. If reconciliation reveals missing records, one-click rollback reverts the Dynamics environment to its pre-migration state for reprocessing. We schedule the main load during off-peak hours to minimize impact on Phreesia API usage. After the delta window closes, a final reconciliation report is generated, highlighting any records that require manual review before the system goes live.
Platform deep dives
Phreesia
Source
Strengths
Weaknesses
Microsoft Dynamics 365 Sales
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. All 8 core objects map 1:1 between Phreesia and Microsoft Dynamics 365 Sales .
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Phreesia and Microsoft Dynamics 365 Sales .
Object compatibility
All 8 core objects map 1:1 between Phreesia 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
Phreesia: Not publicly documented.
Data volume sensitivity
Phreesia 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 Phreesia to Microsoft Dynamics 365 Sales migration scoping. Not seeing yours? Book a call.
Walk through your Phreesia 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 Phreesia
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.