CRM migration
Field-level mapping, validation, and rollback between Field Harmony and Microsoft Dynamics 365 Sales . We move data and schema; workflows are rebuilt natively in Microsoft Dynamics 365 Sales .
Field Harmony
Source
Microsoft Dynamics 365 Sales
Destination
Compatibility
12 of 12
objects map 1:1 between Field Harmony and Microsoft Dynamics 365 Sales .
Complexity
BStandard
Timeline
48–72 hours
Overview
Field Harmony organizes field service operations around work orders, customer sites, and technician scheduling — a fundamentally different data model from Microsoft Dynamics 365 Sales, which tracks accounts, contacts, leads, and opportunities through a pipeline lifecycle. We map Field Harmony customers to Dynamics 365 Accounts, site-level contacts to Contacts, and work orders to Opportunities with FSM-specific context preserved as custom fields. Field Harmony technicians resolve to Dynamics 365 System Users by email match, and site-level service addresses populate Account address fields. We carry timestamps from Field Harmony into Dynamics custom datetime fields since the CRM's native CreatedDate reflects the migration run, not the original record. The migration runs against both platforms' REST APIs, handling relationship foreign keys (customer to site, site to contact) in the correct sequence. FlitStack's sample-first approach surfaces field-level gaps before the full run commits. We do not migrate Field Harmony automation rules, scheduling logic, or GPS routing configuration — these are destination-side process design decisions that belong in your Dynamics 365 Sales implementation.
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
Field Harmony platform overview
Scorecard, SWOT, gotchas, and pricing for Field Harmony.
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 Field Harmony 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.
Field Harmony
Customer
Microsoft Dynamics 365 Sales
Account
1:1Field Harmony customers map to Dynamics 365 Accounts. The customer name populates Account.Name, and the primary site address populates Account.Address fields. Multiple sites per customer collapse to one primary Account record, with additional sites preserved as address variations or custom location records.
Field Harmony
CustomerSite
Microsoft Dynamics 365 Sales
Account (location context)
1:1CustomerSite stores service location details including address, latitude, longitude, and site-specific notes. In Dynamics 365, these map as address fields on the Account. Site-specific service types and location identifiers are preserved as custom fields on the Account record for reference.
Field Harmony
SiteContact
Microsoft Dynamics 365 Sales
Contact
1:1Site-level contacts in Field Harmony map to Dynamics 365 Contacts. Each contact's name, phone, and email map directly. Contacts link to their parent Account via AccountId lookup. Multiple contacts per site are preserved with primary contact designated by Field Harmony's primary contact flag.
Field Harmony
WorkOrder
Microsoft Dynamics 365 Sales
Opportunity
1:1Work orders translate to Opportunities in Dynamics 365 Sales. The work order title and description populate Opportunity.Name and Opportunity.Description. Work order status values map to Opportunity.StatusCode via explicit value mapping rules, converting Field Harmony states to Dynamics opportunity statuses. Original work order number is preserved in SourceSystemID__c for traceability, and the customer and site identifiers link to the parent Account record to maintain referential integrity across the migrated dataset.
Field Harmony
WorkOrderLineItem
Microsoft Dynamics 365 Sales
OpportunityProduct Detail
1:1Parts and materials on a Field Harmony work order map to Opportunity Product Detail records in Dynamics 365. Each line item becomes a separate product detail entry with quantity and rate mapped to UnitPrice. Product catalog integration determines whether to create new Product records or use miscellaneous items.
Field Harmony
Technician
Microsoft Dynamics 365 Sales
SystemUser
1:1Field Harmony technicians resolve to Dynamics 365 System Users by email address matching. Unmatched technicians are flagged before migration for your admin to either create as Dynamics users or assign to a fallback owner. Primary technician assignments on work orders populate Opportunity.OwnerId.
Field Harmony
WorkOrderStatus
Microsoft Dynamics 365 Sales
Opportunity StatusCode
1:1Field Harmony work order status values (Scheduled, In Progress, Completed, Cancelled, On Hold) require explicit value-by-value mapping to Dynamics 365 StatusCode options. Completed work orders set the Opportunity to Closed Won or Closed Lost based on Field Harmony outcome. Pending statuses map to open Opportunity stages.
Field Harmony
WorkOrderType
Microsoft Dynamics 365 Sales
Custom Field on Opportunity
1:1Field Harmony work order types (Installation, Repair, Maintenance, Inspection) have no native equivalent in Dynamics 365 Sales. These map to a custom pick-list field ServiceType__c created on the Opportunity table. Your admin configures the pick-list values before migration data lands.
Field Harmony
Attachment / File
Microsoft Dynamics 365 Sales
Note (Attachment)
1:1File attachments on Field Harmony work orders and customer records migrate as Dynamics 365 Notes with file attachments. Files are re-uploaded to the target environment. Size limits from the Dynamics API apply; files exceeding 25MB are flagged for chunked upload handling.
Field Harmony
Custom Fields on WorkOrder
Microsoft Dynamics 365 Sales
Custom Fields on Opportunity
1:1Field Harmony custom fields on work orders map to custom fields on the Opportunity table in Dynamics 365 Sales Enterprise. Fields typed as text, number, date, or pick-list in Field Harmony map to equivalent field types. Pick-list custom fields in Field Harmony require value-mapping or custom pick-list creation in Dynamics.
Field Harmony
Custom Fields on Customer
Microsoft Dynamics 365 Sales
Custom Fields on Account
1:1Customer-level custom properties in Field Harmony (client classification, billing tier, service agreement type) map to custom fields on the Account table. Field type conversion happens during mapping: Field Harmony multi-select pick-lists become string fields in Dynamics unless your implementation creates multi-select option sets.
Field Harmony
Schedule / Dispatch Data
Microsoft Dynamics 365 Sales
Custom Date Fields on Opportunity
1:1Field Harmony's scheduling data (scheduled date, dispatch time, technician assignment timestamp) does not map to any native Dynamics 365 Sales field. These are preserved as custom datetime fields on the Opportunity — OriginalScheduledDate__c, DispatchedAt__c — for reporting continuity even though Dynamics does not replicate Field Harmony's dispatch board functionality.
| Field Harmony | Microsoft Dynamics 365 Sales | Compatibility | |
|---|---|---|---|
| Customer | Account1:1 | Fully supported | |
| CustomerSite | Account (location context)1:1 | Fully supported | |
| SiteContact | Contact1:1 | Fully supported | |
| WorkOrder | Opportunity1:1 | Fully supported | |
| WorkOrderLineItem | OpportunityProduct Detail1:1 | Fully supported | |
| Technician | SystemUser1:1 | Fully supported | |
| WorkOrderStatus | Opportunity StatusCode1:1 | Fully supported | |
| WorkOrderType | Custom Field on Opportunity1:1 | Fully supported | |
| Attachment / File | Note (Attachment)1:1 | Fully supported | |
| Custom Fields on WorkOrder | Custom Fields on Opportunity1:1 | Fully supported | |
| Custom Fields on Customer | Custom Fields on Account1:1 | Fully supported | |
| Schedule / Dispatch Data | Custom Date Fields on Opportunity1: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.
Field Harmony gotchas
No publicly documented API for direct data extraction
Custom field schema invisible without live access
Attachment volume can balloon migration windows
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
Inventory Field Harmony schema and target Dynamics 365 Sales environment
FlitStack AI begins by exporting your Field Harmony object schema — customers, sites, contacts, work orders, line items, custom fields, and attachment metadata. In parallel, we inventory your Dynamics 365 Sales environment for existing custom fields on Account, Contact, and Opportunity tables, existing Product records, and current user accounts. This determines the custom field creation queue for your Dynamics admin and identifies whether your parts catalog requires pre-migration product record setup.
Build field mapping and value mapping configuration
With both schemas in hand, FlitStack configures the field-level mapping for each object pair. Work order statuses map via explicit value_mapping rules. Work order types map to the custom ServiceType__c pick-list field your admin creates. Technician emails resolve to Dynamics SystemUser IDs. Any Field Harmony pick-list values that have no Dynamics equivalent are flagged for pick-list creation or mapped to an Other category. The mapping configuration is documented in a field-level diff document for your review before any data moves.
Migrate accounts and contacts before work orders
Dynamics 365 Sales requires AccountId on Opportunity records. We sequence the migration so Account records load first, then Contact records link to their parent Accounts. Work orders load last as Opportunities, with customer_id resolving to the newly created AccountId and site_id preserved in custom Opportunity fields. This dependency chain prevents orphaned Opportunity records and ensures relationship integrity across the CRM.
Run sample migration with field-level validation
A representative slice of records — typically 100–300 covering multiple customers, sites, contacts, and work order types — migrates to a Dynamics 365 Sales sandbox environment first. FlitStack generates a field-level diff comparing source values against destination field values, flagging any mapping gaps, truncation, or missing value mappings. Your team reviews the diff and approves the mapping configuration before the full migration run commits.
Execute full migration with delta-pickup window
Once mapping is approved, the full migration runs against Dynamics 365 Sales production. A delta-pickup window (24–48 hours) runs in parallel, capturing any Field Harmony records modified during the cutover window. All operations are logged in an audit trail. If reconciliation reveals unexpected gaps, one-click rollback reverts the target environment to its pre-migration state so the issue can be diagnosed and the migration re-run.
Platform deep dives
Field Harmony
Source
Strengths
Weaknesses
Microsoft Dynamics 365 Sales
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. All 8 core objects map 1:1 between Field Harmony and Microsoft Dynamics 365 Sales .
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Field Harmony and Microsoft Dynamics 365 Sales .
Object compatibility
All 8 core objects map 1:1 between Field Harmony 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
Field Harmony: Not publicly documented..
Data volume sensitivity
Field Harmony 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 Field Harmony to Microsoft Dynamics 365 Sales migration scoping. Not seeing yours? Book a call.
Walk through your Field Harmony 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 Field Harmony
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.