CRM migration
Field-level mapping, validation, and rollback between Teleos and Microsoft Dynamics 365 Sales . We move data and schema; workflows are rebuilt natively in Microsoft Dynamics 365 Sales .
Teleos
Source
Microsoft Dynamics 365 Sales
Destination
Compatibility
11 of 11
objects map 1:1 between Teleos and Microsoft Dynamics 365 Sales .
Complexity
BStandard
Timeline
48–72 hours
Overview
Teleos is a veterinary practice management system centered on the patient-care workflow: pet owners, animal patients, appointments, prescriptions, and treatment records. Microsoft Dynamics 365 Sales is an enterprise CRM built around the account-contact-opportunity model with a Dataverse backend and Power Platform extensibility. These are fundamentally different data architectures — the Teleos patient-centric model does not have a native equivalent in Dynamics 365 Sales, so we handle the translation by creating a custom Patient table in Dataverse, mapping each Teleos animal record to a row linked to its owner Contact. Prescriptions, treatment plans, and clinical notes migrate as related custom tables or as structured notes with original dates and veterinarian attribution. Activities (calls, appointments, emails) map to Dynamics 365 Tasks and Appointments. Teleos invoices require a custom Invoice table because Dynamics 365 Sales does not include a native billing entity — line items, tax, and payment status all transfer, and partial-payment history is preserved in custom fields. We run the migration via the Dataverse Web API and Bulk API, sequencing parent-to-child records so foreign keys resolve correctly. A 24–48 hour delta window captures any Teleos records modified during the cutover. Workflows, appointment reminders, prescription alerts, and owner-notification sequences are not migrated — those must be rebuilt in Power Automate or Dynamics 365 workflows, and we export the Teleos configuration as a rebuild reference.
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
Teleos platform overview
Scorecard, SWOT, gotchas, and pricing for Teleos.
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 Teleos 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.
Teleos
Pet Owner / Client
Microsoft Dynamics 365 Sales
Contact + Account
1:1Teleos owner records map to Dynamics 365 Contacts linked to an Account. Individual pet owners become Contacts; multi-owner practices or corporate clients become Account records with Contact rows for each primary contact. Owner type (individual, corporate, rescue) is preserved as a custom field on the Contact.
Teleos
Animal / Patient
Microsoft Dynamics 365 Sales
Custom Patient__c table
1:1Dynamics 365 Sales has no native patient or animal entity. We create a Patient__c custom table in Dataverse with fields for Species, Breed, DateOfBirth, Gender, Color, MicrochipNumber, and NeuteredStatus. The Patient__c record links to the owner Contact via a Customer lookup field. Vaccination history, allergies, and medical alerts are stored as custom multi-select or note fields on the Patient record.
Teleos
Appointment / Visit
Microsoft Dynamics 365 Sales
Appointment + Task
1:1Teleos appointments map to Dynamics 365 Appointments with original scheduled start/end times, duration, status, and veterinarian (mapped to the Dynamics 365 owner/ownerid by email match). Post-visit notes and clinical observations map to Tasks attached to the Patient__c record, preserving the original visit date as the Task created date.
Teleos
Prescription Record
Microsoft Dynamics 365 Sales
Custom Prescription__c table
1:1Each Teleos prescription becomes a Prescription__c record linked to the Patient__c and the prescribing veterinarian (Contact/owner). Fields map: MedicationName, Dosage, Frequency, StartDate, EndDate, RefillsAllowed, and PrescribingNotes. Prescription status (active, completed, cancelled) is preserved as a custom picklist field. Historical prescriptions transfer with original prescription dates.
Teleos
Treatment Plan / Procedure
Microsoft Dynamics 365 Sales
Custom TreatmentPlan__c + TreatmentRecord__c tables
1:1Teleos treatment plans map to a TreatmentPlan__c header record (linked to Patient__c) containing plan dates, estimated cost, and status. Individual treatment line items become TreatmentRecord__c child records with procedure code, description, actual cost, and outcome notes. This two-table structure mirrors Teleos's one-to-many treatment history and preserves procedure-level detail in Dynamics 365.
Teleos
Invoice
Microsoft Dynamics 365 Sales
Custom Invoice__c table
1:1Dynamics 365 Sales does not include a native billing or invoice entity. We create an Invoice__c custom table linked to the Contact/Account. Line items (service, product, medication) map to InvoiceLineItem__c child records. Tax amounts, discounts, and total transfer directly. Payment status (paid, partial, overdue) is a custom picklist. Partial-payment history (amount, date, method) is stored in a custom PaymentHistory__c field as a structured text blob for reference.
Teleos
Clinical Note / Medical Record
Microsoft Dynamics 365 Sales
Note + Custom Note Fields
1:1Teleos clinical notes and SOAP notes migrate as Dynamics 365 Notes attached to the Patient__c record. Original note date and veterinarian attribution are preserved in Note.Title and Note.CreatedOn. Embedded images or lab results download and re-upload as Files attached to the Patient record. We flag which notes contain sensitive medical history so your team can review them post-migration.
Teleos
Vaccination Record
Microsoft Dynamics 365 Sales
Custom Vaccination__c table
1:1Vaccinations transfer as a dedicated Vaccination__c table linked to Patient__c. Fields include VaccineType, DateAdministered, ExpirationDate, BatchNumber, AdministeredBy (vet name), and Location. This keeps vaccination data independent from general clinical notes and enables expiry-date reporting in Dynamics 365 without querying free-text notes.
Teleos
Document / Attachment
Microsoft Dynamics 365 Sales
Dynamics 365 Files
1:1Teleos attachments (lab results, intake forms, consent documents, imaging files) download and re-upload to Dynamics 365 Files, attached to the corresponding Patient__c, Prescription__c, or Invoice__c record. Original file names and upload dates are preserved. File size limits per Dynamics 365 apply (default 25MB per file; larger files split or linked).
Teleos
Owner Communication Log
Microsoft Dynamics 365 Sales
Activity (Task / Email)
1:1Teleos owner communication logs (call notes, email threads, SMS history) map to Dynamics 365 Tasks with Type = 'Call' or 'Email', linked to the Contact record. Original communication date and staff attribution are preserved. Two-way SMS threads may need review post-migration if the Teleos SMS integration used a third-party provider not supported in Dynamics 365.
Teleos
Staff / Veterinarian
Microsoft Dynamics 365 Sales
Dynamics 365 User
1:1Teleos staff records (veterinarians, technicians, front desk) map to Dynamics 365 Users by email match. Staff role (DVM, Vet Tech, Admin) is stored as a custom picklist field on the User record. If a Teleos staff member does not have a corresponding Dynamics 365 license, their records are assigned to a fallback admin user and flagged for license provisioning before go-live.
| Teleos | Microsoft Dynamics 365 Sales | Compatibility | |
|---|---|---|---|
| Pet Owner / Client | Contact + Account1:1 | Fully supported | |
| Animal / Patient | Custom Patient__c table1:1 | Fully supported | |
| Appointment / Visit | Appointment + Task1:1 | Fully supported | |
| Prescription Record | Custom Prescription__c table1:1 | Fully supported | |
| Treatment Plan / Procedure | Custom TreatmentPlan__c + TreatmentRecord__c tables1:1 | Fully supported | |
| Invoice | Custom Invoice__c table1:1 | Fully supported | |
| Clinical Note / Medical Record | Note + Custom Note Fields1:1 | Fully supported | |
| Vaccination Record | Custom Vaccination__c table1:1 | Fully supported | |
| Document / Attachment | Dynamics 365 Files1:1 | Fully supported | |
| Owner Communication Log | Activity (Task / Email)1:1 | Fully supported | |
| Staff / Veterinarian | Dynamics 365 User1: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.
Teleos gotchas
Catalog website pointed at the wrong company
No public API forces export-driven extraction
Channel-based UI configuration is per-workstation
Vet-XML records require special handling
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
Audit Teleos schema and recommend Dynamics 365 licensing tier
FlitStack AI reviews your Teleos custom record types, fields, and data volumes. We produce a schema inventory listing every Teleos entity and field, then map each to a Dynamics 365 object. If your migration requires more than 15 custom tables, we recommend Dynamics 365 Sales Enterprise or Premium licensing before migration begins — because table creation in Professional cannot be undone without losing data. This step produces the Dataverse schema design document your admin uses to pre-create tables, fields, and relationships before data loads.
Resolve Teleos owners and staff to Dynamics 365 users by email
FlitStack AI matches Teleos pet owners and staff records to Dynamics 365 Contacts and Users by email address. Owners without a matching Contact get created during migration. Staff members without a corresponding Dynamics 365 User are assigned to a fallback admin user and flagged in the migration report for license provisioning. No clinical record (prescription, treatment, appointment) lands in Dynamics 365 without a resolved parent Contact or Patient record.
Migrate Contacts and create Dataverse custom tables before patient data
FlitStack AI sequences the migration so parent records load before dependent children. Owner Contacts and Account records migrate first, establishing the ContactId values that Patient__c, Invoice__c, and Prescription__c records depend on via lookup fields. We create the Dataverse custom tables (Patient__c, Prescription__c, TreatmentPlan__c, TreatmentRecord__c, Invoice__c, InvoiceLineItem__c, Vaccination__c) with all required fields and relationships before any patient data moves. Custom table creation is validated in a test environment before the production migration run.
Run sample migration with field-level diff on 100–500 representative records
FlitStack AI runs a test migration using a representative slice of Teleos data — typically 100–500 records spanning patients, prescriptions, appointments, and invoices. We generate a field-level diff showing source value versus destination value for every mapped field so you can verify Patient__c field names, Prescription__c dates, Invoice__c totals, and Contact lookup resolution before the full run commits. This is the last checkpoint before data moves in volume.
Execute full migration with delta-pickup window and one-click rollback
FlitStack AI runs the full migration against your Dynamics 365 environment via the Dataverse Web API and Bulk API. A delta-pickup window of 24–48 hours captures any Teleos records created or modified during the cutover — your team keeps working in Teleos throughout. An audit log records every insert, update, and skip operation with source record ID and destination record URL. If reconciliation fails, one-click rollback reverts the Dynamics 365 environment to its pre-migration state. We deliver a migration summary report with record counts, skipped records, and post-migration validation queries for your team to run in Dynamics 365.
Platform deep dives
Teleos
Source
Strengths
Weaknesses
Microsoft Dynamics 365 Sales
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 Teleos and Microsoft Dynamics 365 Sales .
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
Teleos: Not applicable — no documented public API endpoints exist..
Data volume sensitivity
Teleos 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 Teleos to Microsoft Dynamics 365 Sales migration scoping. Not seeing yours? Book a call.
Walk through your Teleos 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 Teleos
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.