CRM migration
Field-level mapping, validation, and rollback between AeronaClinic and Salesforce Sales Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Sales Cloud.
AeronaClinic
Source
Salesforce Sales Cloud
Destination
Compatibility
12 of 12
objects map 1:1 between AeronaClinic and Salesforce Sales Cloud.
Complexity
BStandard
Timeline
24–48 hours
Overview
AeronaClinic stores clinical data as a flat patient record with embedded appointment arrays, treatment histories, clinical notes, and billing lines. Salesforce Sales Cloud uses a normalised relational model: Contacts (patient demographics), custom objects for clinical entities (Treatment__c, Appointment__c, Clinical_Note__c), and lookups linking practitioners to User records. There is no native dental or clinical data model in Salesforce — every clinical object must be designed and deployed before data lands. We map AeronaClinic patient demographics to Contact fields and custom fields (NHS_Number__c, Medical_Record_Number__c, Blood_Type__c, Allergies__c). Appointments and treatments become custom Salesforce objects with a ContactId lookup so each record links back to the patient. Clinical notes and documents migrate to custom objects preserving practitioner assignments and original create dates. GoCardless and Stripe payment integrations cannot migrate — those must be rebuilt with Salesforce payment apps post-migration. The migration runs via Salesforce Bulk API with scoped AeronaClinic API read access, a sample diff before full commit, and a 24–48h delta window capturing in-flight appointment changes 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 AeronaClinic object lands in Salesforce Sales Cloud, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
AeronaClinic
Patient
Salesforce Sales Cloud
Contact
1:1AeronaClinic patient demographics (name, DOB, address, phone, email) map directly to Salesforce Contact fields. Medical record number and NHS number migrate as custom fields on Contact since Salesforce has no native equivalents. The primary practitioner assignment resolves to a Contact.Practitioner__c User lookup.
AeronaClinic
Patient → Practice Record
Salesforce Sales Cloud
Account
1:1AeronaClinic does not have a native clinic/practice entity, but multi-location setups store a clinic name per patient. We create an Account record per location and link all patients at that location via AccountId on Contact. This enables Salesforce location-based reporting.
AeronaClinic
Appointment
Salesforce Sales Cloud
Appointment__c (Custom Object)
1:1Salesforce Event object lacks Status__c, Practitioner__c, Appointment_Type__c, and Cost__c fields needed for clinical context. We create a custom Appointment__c object with these fields, linked to Contact via ContactId lookup. The Appointment_Date_Time__c field stores the original booking timestamp for continuity, preserving the exact scheduling date across the migration.
AeronaClinic
Appointment Status
Salesforce Sales Cloud
Appointment__c.Status__c
1:1AeronaClinic appointment statuses (Confirmed, Cancelled, DNA, Rescheduled, Complete) map to Salesforce pick-list values on Appointment__c.Status__c. DNA (Did Not Attend) has no Salesforce equivalent and requires a value-mapping entry to 'No Show' or a custom value. Each mapping is documented in the migration plan before the run.
AeronaClinic
Practitioner / Clinician
Salesforce Sales Cloud
User
1:1AeronaClinic practitioners are stored as a practitioner name or ID per appointment and treatment. We resolve each practitioner by email match against Salesforce User records. Unmatched practitioners are flagged before migration — the clinic either creates Salesforce User records or assigns their records to a fallback practitioner owner.
AeronaClinic
Treatment Record
Salesforce Sales Cloud
Treatment__c (Custom Object)
1:1AeronaClinic stores treatment name, tooth number/surface, procedure code (UDDA), cost, and status per treatment. We create a custom Treatment__c object with a ContactId lookup linking back to the patient, an AppointmentId__c lookup linking to the appointment, and fields for Tooth_Number__c, Procedure_Code__c, and Cost__c.
AeronaClinic
Clinical Note
Salesforce Sales Cloud
Clinical_Note__c (Custom Object)
1:1Free-text clinical notes (clinical findings, medical history updates, prescriptions, clinical photographs references) have no Salesforce equivalent. We create Clinical_Note__c with Note_Type__c pick-list, Note_Text__c long-text area (32768 chars), Practitioner__c User lookup, and Original_Create_Date__c preserving the source timestamp. Linked to Contact by ContactId.
AeronaClinic
Document / Attachment
Salesforce Sales Cloud
Document__c (Custom Object)
1:1AeronaClinic stores patient documents (ID scans, consent forms, treatment plans, radiograph references) as file records. Salesforce Files attach differently to Contacts. We migrate document metadata to a custom Document__c object with File_URL__c (text), File_Type__c, Upload_Date__c, and Source_System_ID__c for traceability. Files are re-uploaded to Salesforce Files or stored with Document__c.File_URL__c pointing to a document store.
AeronaClinic
Invoice
Salesforce Sales Cloud
Invoice__c (Custom Object)
1:1AeronaClinic invoices contain invoice number, date, line items, total amount, status, and payment reference. Salesforce has no native invoice object at the Contact level. We create Invoice__c with fields for Invoice_Number__c, Invoice_Date__c, Amount__c, Amount_Due__c, Payment_Status__c, and a ContactId lookup. This preserves full billing history for finance reporting in Salesforce.
AeronaClinic
Allergies / Medical Conditions
Salesforce Sales Cloud
Contact.Allergies__c / Medical_Conditions__c
1:1AeronaClinic stores patient allergies and medical conditions as structured fields on the patient record. These have no Salesforce Contact equivalents. We create Allergies__c (long-text area) and Medical_Conditions__c (long-text area) on Contact, preserving the full history in the patient record rather than in a separate object.
AeronaClinic
Insurance / NHS Details
Salesforce Sales Cloud
Contact.NHS_Number__c / Contact.Insurance_Policy_Number__c
1:1AeronaClinic captures NHS numbers (UK) and insurance policy details. Salesforce has no native NHS or insurance number field on Contact. We create NHS_Number__c (text, 10 chars) and Insurance_Policy_Number__c (text) as custom fields on Contact. Insurance_Provider__c (text) is added as a companion field.
AeronaClinic
Referral Source
Salesforce Sales Cloud
Contact.LeadSource
1:1AeronaClinic records how a patient was acquired (referral, advertising, organic). This maps directly to the native Salesforce Contact.LeadSource pick-list. If AeronaClinic uses custom referral source values not in the Salesforce default pick-list, we add them as new LeadSource values before migration.
| AeronaClinic | Salesforce Sales Cloud | Compatibility | |
|---|---|---|---|
| Patient | Contact1:1 | Fully supported | |
| Patient → Practice Record | Account1:1 | Fully supported | |
| Appointment | Appointment__c (Custom Object)1:1 | Fully supported | |
| Appointment Status | Appointment__c.Status__c1:1 | Fully supported | |
| Practitioner / Clinician | User1:1 | Fully supported | |
| Treatment Record | Treatment__c (Custom Object)1:1 | Fully supported | |
| Clinical Note | Clinical_Note__c (Custom Object)1:1 | Fully supported | |
| Document / Attachment | Document__c (Custom Object)1:1 | Fully supported | |
| Invoice | Invoice__c (Custom Object)1:1 | Fully supported | |
| Allergies / Medical Conditions | Contact.Allergies__c / Medical_Conditions__c1:1 | Fully supported | |
| Insurance / NHS Details | Contact.NHS_Number__c / Contact.Insurance_Policy_Number__c1:1 | Fully supported | |
| Referral Source | Contact.LeadSource1: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.
AeronaClinic gotchas
Password-protected API limits export options
Large historical record volumes in dental practices
Payment plan instalment schedules require manual sign-off
Salesforce Sales Cloud gotchas
Workflow Rules and Process Builder are retired
Bulk API batch quota exhaustion during large imports
Storage overage billing is non-obvious
Account-Contact many-to-many relationship mapping
Territory and team member import ordering dependencies
Pair-specific challenges
Migration approach
Extract AeronaClinic data and design Salesforce custom object schema
FlitStack AI connects via scoped AeronaClinic API read access and extracts the complete data set: patient records, appointments, treatment histories, clinical notes, invoices, and documents. We profile the data for duplicates, null fields, and relationship integrity. Simultaneously, we design the Salesforce custom object schema for Appointment__c, Treatment__c, Clinical_Note__c, Invoice__c, and Document__c — including all custom fields, pick-list values, and data types. We deliver a schema deployment checklist to your Salesforce admin for deployment via Setup or SFDX before any data loads.
Resolve practitioners and validate owner assignments
Each AeronaClinic practitioner is matched by email against Salesforce User records. Practitioner assignments on appointments, treatments, and clinical notes resolve to a Practitioner__c User lookup in Salesforce. Unmatched practitioners are flagged in a pre-migration report — your admin either creates Salesforce User records for each unmatched practitioner or assigns their records to a fallback owner before the migration run. No clinical record lands in Salesforce without a valid owner.
Run sample migration with field-level diff
A representative slice of patient records (typically 100–300 patients with associated appointments, treatments, and clinical notes) migrates first. We generate a field-level diff report comparing source values against destination field values for every mapped field. You verify that NHS numbers, appointment statuses, treatment dates, and clinical note types appear correctly in Salesforce. Sample migration catches incorrect pick-list mappings, missing custom fields, and practitioner resolution failures before the full run commits.
Execute full migration with delta-pickup cutover window
Full data migration runs via Salesforce Bulk API. A 24–48 hour delta-pickup window captures any appointments created or modified in AeronaClinic during the cutover period. FlitStack AI maintains a complete audit log of every record created, updated, or skipped during migration. One-click rollback reverts all Salesforce records to pre-migration state if reconciliation fails. After rollback is confirmed, the delta-pickup phase re-applies all in-flight changes.
Platform deep dives
AeronaClinic
Source
Strengths
Weaknesses
Salesforce Sales Cloud
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 1 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 AeronaClinic and Salesforce Sales Cloud.
Object compatibility
1 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
AeronaClinic: Not publicly documented.
Data volume sensitivity
AeronaClinic 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 AeronaClinic to Salesforce Sales Cloud migration scoping. Not seeing yours? Book a call.
Walk through your AeronaClinic to Salesforce Sales Cloud migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave AeronaClinic
Other ways to arrive at Salesforce Sales Cloud
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.