CRM migration
Field-level mapping, validation, and rollback between Mobile Worker and Microsoft Dynamics 365 Sales . We move data and schema; workflows are rebuilt natively in Microsoft Dynamics 365 Sales .
Mobile Worker
Source
Microsoft Dynamics 365 Sales
Destination
Compatibility
9 of 11
objects map 1:1 between Mobile Worker and Microsoft Dynamics 365 Sales .
Complexity
BStandard
Timeline
48–72 hours
Overview
Mobile Worker is a field-service and mobile workforce management platform focused on job dispatch, location tracking, time entry, and work order completion for mobile crews. Dynamics 365 Sales is Microsoft's CRM built on Dataverse, with Accounts, Contacts, Leads, Opportunities, and custom entities as the core data model. The migration carries Mobile Worker's worker profiles, work orders, job assignments, location history, and custom fields into D365 Sales entities. Work orders typically translate to Opportunities with custom fields capturing job-specific metadata. Schedules and dispatch data require custom entities or Power Apps canvas apps post-migration. Mobile Worker lacks native CRM features—contacts and companies live inside work orders rather than as standalone records—so FlitStack AI first normalizes the source data into a contact/company/activity graph before mapping to D365 Sales. The migration runs via D365 Web API and Dataverse APIs, with scoped read access on Mobile Worker's export endpoints. Delta-pickup captures any records modified during the cutover window. Workflows, dispatch rules, and geo-fencing configurations must be rebuilt in D365 Field Service or Power Automate.
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
Mobile Worker platform overview
Scorecard, SWOT, gotchas, and pricing for Mobile Worker.
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 Mobile Worker 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.
Mobile Worker
Worker
Microsoft Dynamics 365 Sales
Contact
1:1Mobile Worker worker profiles map directly to D365 Contacts. Worker name, email, phone, and role fields translate in a one-to-one mapping to the corresponding Contact fields. If the worker is also a customer contact in the system, the record duplicates to both the Contact entity and any associated Opportunity records to preserve both worker and customer relationships in the destination CRM.
Mobile Worker
Worker
Microsoft Dynamics 365 Sales
SystemUser
1:1Workers who are D365 Sales licensed users are matched by email address to existing SystemUser records. Workers without a D365 user license become Contacts only without SystemUser linkage. OwnerId on migrated Opportunities resolves to the matched SystemUser, ensuring job ownership maps correctly in the destination system.
Mobile Worker
Job (Work Order)
Microsoft Dynamics 365 Sales
Opportunity
1:1Each Mobile Worker job translates to a D365 Opportunity with the job name serving as the Opportunity Name. Job status values (Dispatched, In Progress, Completed) map via value mapping to the corresponding Opportunity StageName picklist entries. Job address fields map to the Opportunity's Address1 composite address field.
Mobile Worker
Job
Microsoft Dynamics 365 Sales
Account
many:1If Mobile Worker stores the customer company inside the job record without maintaining a standalone company object, FlitStack extracts the embedded customer name and address to create an Account record first. The migrated Opportunity then links to this Account via AccountId, establishing the proper CRM relationship structure in D365.
Mobile Worker
Schedule / Dispatch Assignment
Microsoft Dynamics 365 Sales
Custom Table: FieldDispatch
1:1Mobile Worker dispatch assignments containing assigned worker, job reference, and time window translate to a custom FieldDispatch table in Dataverse linked to the Opportunity. This preserves scheduling context. Note that Dynamics 365 Sales Professional limits custom tables to 15—Enterprise licensing removes this constraint.
Mobile Worker
Time Entry
Microsoft Dynamics 365 Sales
Task
1:1Time entries logged against a Mobile Worker job migrate as D365 Tasks attached to the corresponding Opportunity via the Regarding lookup. Original clock-in and clock-out timestamps are preserved as custom datetime fields on the Task, maintaining the complete labor tracking history.
Mobile Worker
Location Log
Microsoft Dynamics 365 Sales
Custom Table: WorkerLocation
1:1Mobile Worker geo-positioning logs migrate to a custom WorkerLocation table in Dataverse linked to the Contact record. Dynamics 365 Sales has no native location-history entity, so these records serve as audit trails and compliance documentation for field service operations.
Mobile Worker
Attachment / Form Upload
Microsoft Dynamics 365 Sales
SharePoint / Note (annotation)
1:1Work order photos, signed forms, and file attachments export from Mobile Worker and re-upload to D365's SharePoint integration or the Notes (annotation) entity attached to the corresponding Opportunity. Standard file size limits of the destination apply during the upload process.
Mobile Worker
Custom Field on Job
Microsoft Dynamics 365 Sales
Custom Column on Opportunity
1:1Mobile Worker custom fields per job—such as job_type, crew_size, or equipment_used—map to custom columns on the Opportunity table in Dataverse. Field type mapping applies consistently: text fields become nvarchar, numeric fields become decimal, and date fields become datetimeoffset.
Mobile Worker
Worker Skill / Certification
Microsoft Dynamics 365 Sales
Custom Table: WorkerSkill
1:1Worker skill ratings and certifications stored in Mobile Worker map to a custom WorkerSkill table in Dataverse linked to Contact. These skill records can be referenced by D365 Field Service resource scheduling optimization when that module is added to the tenant post-migration.
Mobile Worker
Customer (embedded in Job)
Microsoft Dynamics 365 Sales
Account + Contact
many:1Mobile Worker stores customer name, phone, and email inside each job record rather than as standalone entities. FlitStack normalizes this by extracting all unique customer values across jobs, deduplicating by email match, creating corresponding Account and Contact records, and then linking each migrated Opportunity to the resolved Account.
| Mobile Worker | Microsoft Dynamics 365 Sales | Compatibility | |
|---|---|---|---|
| Worker | Contact1:1 | Fully supported | |
| Worker | SystemUser1:1 | Fully supported | |
| Job (Work Order) | Opportunity1:1 | Fully supported | |
| Job | Accountmany:1 | Fully supported | |
| Schedule / Dispatch Assignment | Custom Table: FieldDispatch1:1 | Fully supported | |
| Time Entry | Task1:1 | Fully supported | |
| Location Log | Custom Table: WorkerLocation1:1 | Fully supported | |
| Attachment / Form Upload | SharePoint / Note (annotation)1:1 | Fully supported | |
| Custom Field on Job | Custom Column on Opportunity1:1 | Fully supported | |
| Worker Skill / Certification | Custom Table: WorkerSkill1:1 | Fully supported | |
| Customer (embedded in Job) | Account + Contactmany: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.
Mobile Worker gotchas
Offline mobile app data is not API-accessible
Custom form schemas vary by Work Order type
Billing integration tokens may expire mid-migration
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 Mobile Worker schema and normalize embedded entities
FlitStack extracts the full Mobile Worker field export and identifies all unique customer names, worker records, and job custom fields across the entire dataset. We build a normalization layer that deduplicates embedded customer data into Contact and Account candidates, validates email uniqueness across all records, and flags workers who lack email addresses for owner-resolution planning. The output is a comprehensive source schema map ready for D365 entity mapping with all transformations documented.
Map Mobile Worker objects to D365 Sales entities and custom tables
Each Mobile Worker object—Worker, Job, TimeEntry, LocationLog, and custom fields—maps to corresponding D365 Contact, Account, Opportunity, Task, and custom Dataverse tables. We produce a detailed field-level mapping document that names every source field, its destination column, and any transformation logic required. For Sales Professional tenants, we count custom table usage to confirm the migration stays within the 15-table limit before committing to the migration plan.
Resolve worker-to-owner assignments by email
Mobile Worker worker_ids are resolved to D365 SystemUser records by matching the worker's email address to an existing D365 user account. Workers without a D365 user account are flagged as Contacts only and assigned a fallback owner typically designated as the system administrator. We surface all unmatched workers in a pre-flight report so your team can either invite them to D365 as licensed users or designate an account owner before the migration run commits to the destination environment.
Run a sample migration with field-level diff
A representative data slice—typically 100 to 500 records spanning workers, jobs, time entries, location logs, and attachments—migrates first in a controlled test run. We generate a comprehensive field-level diff between the Mobile Worker export and the D365 destination records so you can verify job-stage mapping accuracy, customer normalization quality, owner resolution correctness, and custom field population completeness before approving the full migration execution.
Execute full migration with delta-pickup and audit logging
The complete dataset migrates via D365 Web API and Dataverse endpoints using batch operations for efficiency. A delta-pickup window of 24–48 hours captures any Mobile Worker records created or modified during the cutover period. FlitStack logs every create, update, and link operation to an internal audit table with timestamps and user context. One-click rollback reverts all migrated records if reconciliation uncovers data quality issues. Final validation confirms Opportunity-to-Account links, Task attachments, and custom field completeness across the dataset.
Platform deep dives
Mobile Worker
Source
Strengths
Weaknesses
Microsoft Dynamics 365 Sales
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. All 8 core objects map 1:1 between Mobile Worker and Microsoft Dynamics 365 Sales .
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Mobile Worker and Microsoft Dynamics 365 Sales .
Object compatibility
All 8 core objects map 1:1 between Mobile Worker 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
Mobile Worker: 500 requests per minute per organization.
Data volume sensitivity
Mobile Worker exposes a bulk API — large-volume migrations stream efficiently.
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 Mobile Worker to Microsoft Dynamics 365 Sales migration scoping. Not seeing yours? Book a call.
Walk through your Mobile Worker 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 Mobile Worker
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.