CRM migration
Field-level mapping, validation, and rollback between LeadSimple and Microsoft Dynamics 365 Sales . We move data and schema; workflows are rebuilt natively in Microsoft Dynamics 365 Sales .
LeadSimple
Source
Microsoft Dynamics 365 Sales
Destination
Compatibility
11 of 12
objects map 1:1 between LeadSimple and Microsoft Dynamics 365 Sales .
Complexity
BStandard
Timeline
48–72 hours
Overview
LeadSimple structures its CRM around Leads, Properties, Units, and Processes — a model designed for property managers tracking lease applications and occupancy. Dynamics 365 Sales uses the standard Microsoft Dataverse schema: Account, Contact, Lead, Opportunity, and Task entities with a Lead-to-Opportunity qualification flow. We map LeadSimple Leads directly to Dynamics 365 Leads, LeadSimple Properties to Account records, and LeadSimple Units to a custom Units entity linked to Account. Pipeline stages migrate as Opportunity Stage values with original entered-dates preserved in custom datetime fields. Process records (workflows, sequences, auto-triggers) do not transfer — they must be rebuilt in Power Automate or Dynamics Business Process Flows. Custom fields added to contacts, properties, units, and processes in LeadSimple migrate as Dynamics 365 custom fields (new_ prefix or display-name custom fields). We use LeadSimple's API export endpoint and CSV bulk export to extract records, then push into Dynamics 365 via the Dataverse Web API with batch operations for efficiency. A delta-pickup window captures any records modified during cutover so Dynamics reflects LeadSimple's final state at go-live.
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
LeadSimple platform overview
Scorecard, SWOT, gotchas, and pricing for LeadSimple.
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 LeadSimple 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.
LeadSimple
Lead
Microsoft Dynamics 365 Sales
Lead
1:1LeadSimple Leads map directly to Dynamics 365 Leads. The Lead Name, email, phone, address, source, and referrer fields map to corresponding Lead entity attributes. Stage Name maps to the Lead Status field; original stage-enter timestamps are preserved in custom datetime fields on the Lead record for historical continuity.
LeadSimple
Lead
Microsoft Dynamics 365 Sales
Contact
1:manyLeadSimple leads that have progressed past a defined qualification threshold (e.g., stage = 'Lease Signed') split into Dynamics 365 Contacts. Contacts are created with a link to the corresponding Account (Property) record. This split logic is configurable per your LeadSimple stage configuration — we surface the split criteria before the migration runs.
LeadSimple
Property
Microsoft Dynamics 365 Sales
Account
1:1LeadSimple Properties map directly to Dynamics 365 Accounts — the property name becomes Account Name, address fields map to Address1 composite fields, Property Type maps to a custom Industry-type pick-list, and Annual Contract Value (ACV) maps to a custom Number field (Annual_Contract_Value__c). Occupancy status migrates as a custom Occupancy_Status__c pick-list field.
LeadSimple
Unit
Microsoft Dynamics 365 Sales
new_Unit (custom table)
1:1LeadSimple Units require a custom entity in Dynamics 365 since Dataverse has no native child-of-account rental-unit entity. We create a new_Unit table with lookup to Account, and fields for Unit_Number, Number_of_Units, Rent_Amount, Occupancy, and Lease_End_Date. If your LeadSimple Units contain custom fields, those become additional custom fields on new_Unit.
LeadSimple
Process
Microsoft Dynamics 365 Sales
N/A (no equivalent)
1:1LeadSimple Processes own all workflow automation, auto-triggers, and conditional stage-change logic. These records do not migrate — the logic must be rebuilt in Power Automate or Dynamics 365 Business Process Flows. We export Process definitions as a reference document (JSON export of trigger/action rules) to give your Dynamics admin a rebuild blueprint.
LeadSimple
Task
Microsoft Dynamics 365 Sales
Task
1:1LeadSimple tasks (Next Task Kind, Next Task Due At) map to Dynamics 365 Task records. Subject, Due Date, Priority, and Status map directly. Owner is resolved by email match against Dynamics 365 SystemUser records. Unmatched owners are flagged for admin resolution before final migration.
LeadSimple
Comment
Microsoft Dynamics 365 Sales
Annotation (Note)
1:1LeadSimple comments on Leads and Processes migrate to Dynamics 365 Annotation records (Notes). Each comment becomes a separate Note record linked to the corresponding Lead or Account entity. Comment author and timestamp are preserved in the Note's CreatedBy and CreatedOn fields. Since LeadSimple's bulk export does not include comments, we retrieve them via API in a secondary pass.
LeadSimple
Tag List
Microsoft Dynamics 365 Sales
new_Tag (custom table) + Lead_Tag junction
1:1LeadSimple tag lists are many-to-many — a Lead can have multiple tags, and a tag applies to multiple Leads. Dynamics 365 has no native tag/label entity, so we create a custom new_Tag table and a Lead_Tag junction table (new_lead_tag) to preserve the full tag structure. Each tag value becomes a new_Tag record; junction records link Lead to Tag.
LeadSimple
Custom field (Contact-level)
Microsoft Dynamics 365 Sales
Contact (custom field)
1:1LeadSimple contact custom fields (which differ per owner/tenant per property) map to Dynamics 365 Contact custom fields. Note that Dynamics 365 does not support per-relationship custom field variation — all contacts receive the same set of custom fields. If a LeadSimple contact-level field was conditionally visible, we flag it for admin review post-migration.
LeadSimple
Pipeline
Microsoft Dynamics 365 Sales
Opportunity
1:1LeadSimple Pipelines map to Dynamics 365 Opportunities with a one-pipeline-per-Opportunity mapping. Stage Name in LeadSimple maps to Opportunity StageName via value-by-value mapping. For multi-pipeline LeadSimple setups, each pipeline maps to a separate Opportunity record type or a custom Pipeline_Name__c field to maintain segregation.
LeadSimple
Annual Contract Value
Microsoft Dynamics 365 Sales
Opportunity EstimatedRevenue
1:1LeadSimple's Annual Contract Value (ACV) is a numeric property-level field. When a LeadSimple Lead is associated with a Property, the ACV migrates as Opportunity Estimated Revenue. If the Lead has no Property association, ACV is stored as a custom custom_ACV__c field on the Opportunity for reference.
LeadSimple
Lead Created At
Microsoft Dynamics 365 Sales
Lead Original_Create_Date__c (custom)
1:1Dynamics 365 sets CreatedOn at the time of record creation in the destination. To preserve the original LeadSimple create date for reporting continuity, we store it as a custom Original_Create_Date__c datetime field on the Lead entity. This is essential for teams that track time-in-stage based on the original entry date.
| LeadSimple | Microsoft Dynamics 365 Sales | Compatibility | |
|---|---|---|---|
| Lead | Lead1:1 | Fully supported | |
| Lead | Contact1:many | Fully supported | |
| Property | Account1:1 | Fully supported | |
| Unit | new_Unit (custom table)1:1 | Fully supported | |
| Process | N/A (no equivalent)1:1 | Fully supported | |
| Task | Task1:1 | Fully supported | |
| Comment | Annotation (Note)1:1 | Fully supported | |
| Tag List | new_Tag (custom table) + Lead_Tag junction1:1 | Fully supported | |
| Custom field (Contact-level) | Contact (custom field)1:1 | Fully supported | |
| Pipeline | Opportunity1:1 | Fully supported | |
| Annual Contract Value | Opportunity EstimatedRevenue1:1 | Fully supported | |
| Lead Created At | Lead Original_Create_Date__c (custom)1: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.
LeadSimple gotchas
Notes and Activities excluded from bulk CSV export
No public API — migration requires workaround
Contact-level custom fields can vary per owner on the same property
Per-door pricing on Operations layer is a billing artifact not migratable
Workflow automation must be manually rebuilt on the destination
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
Extract LeadSimple data via bulk CSV and API
FlitStack AI downloads LeadSimple's bulk CSV export (Leads, Properties, Units) and retrieves Comments and Process definitions via the LeadSimple API in parallel. We validate the export completeness against record counts reported in LeadSimple's admin dashboard. Any discrepancies in field counts trigger a data-quality review with your LeadSimple admin before mapping begins. The process definitions (triggers, conditions, actions) are exported as a JSON reference document for the Power Automate rebuild.
Create Dynamics 365 custom schema (Units table, custom fields)
Before any data loads, we create the custom new_Unit Dataverse table with lookup to Account, plus all custom fields on Lead, Contact, Account, and new_Unit entities identified during mapping. We also create the new_Tag and new_lead_tag junction tables for the tag-list many-to-many relationship. Custom field creation follows Dynamics 365 naming conventions and publishes to the target environment (sandbox first, then production). Your Dynamics admin grants FlitStack AI the required Dataverse connector permissions during this step.
Resolve owners and map pipeline stages
LeadSimple Assigned To users are matched to Dynamics 365 SystemUser records by email address. Unmatched owners (e.g., deactivated LeadSimple users) are flagged with a resolution report — either invite them to Dynamics or assign their records to a fallback owner before migration commits. LeadSimple Pipeline stage names are mapped to Opportunity StageName values via the value-mapping table. For multi-pipeline LeadSimple setups, we apply record-type assignment logic per pipeline identifier.
Run sample migration with field-level diff
A representative slice (typically 100–500 records spanning Leads, Properties, Units, and Comments) migrates first. We generate a field-level diff comparing source values against destination field values so you can verify stage mapping, owner resolution, and custom field population before the full run commits. You review the diff and approve the mapping configuration. Any required adjustments are made before we proceed to the full migration.
Execute full migration with delta-pickup window
The full record set loads into Dynamics 365 via Dataverse Web API batch operations (up to 1,000 records per request). A delta-pickup window (24–48 hours) runs concurrently — any LeadSimple records created or modified during the cutover are captured in a second pass and upserted into Dynamics. An audit log records every operation (create, update, skip, error). One-click rollback reverts the Dynamics environment to its pre-migration state if reconciliation reveals critical issues. After rollback verification, we deliver a reconciliation report showing record counts, error rates, and owner-resolution status.
Platform deep dives
LeadSimple
Source
Strengths
Weaknesses
Microsoft Dynamics 365 Sales
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 1 of 8 objects need a manual workaround.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across LeadSimple and Microsoft Dynamics 365 Sales .
Object compatibility
1 of 8 objects need a manual workaround.
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
LeadSimple: Not publicly documented.
Data volume sensitivity
LeadSimple 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 LeadSimple to Microsoft Dynamics 365 Sales migration scoping. Not seeing yours? Book a call.
Walk through your LeadSimple 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 LeadSimple
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.