CRM migration

Migrate from Connect Field Service to Salesforce Sales Cloud

Field-level mapping, validation, and rollback between Connect Field Service and Salesforce Sales Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Sales Cloud.

Connect Field Service logo

Connect Field Service

Source

Salesforce Sales Cloud

Destination

Salesforce Sales Cloud logo

Compatibility

100%

12 of 12

objects map 1:1 between Connect Field Service and Salesforce Sales Cloud.

Complexity

BStandard

Timeline

24–48 hours

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Connect Field Service (Microsoft Dynamics 365 Connected Field Service) is a field service management platform built around Work Orders, Service Appointments, Bookings, and a resource-and-territory scheduling model. Salesforce Sales Cloud is a CRM centered on Leads, Accounts, Contacts, Opportunities, and Cases. The two platforms share a relational object model — Accounts map to Connect Field Service's customer accounts, and Work Orders map to Salesforce Cases — but the FSM-specific layer (service territories, scheduling policies, work order line items, and asset hierarchies) requires custom field creation and a value-mapping pass for status and priority pick-list values. FlitStack AI extracts Connect Field Service data via the Dynamics 365 API, transforms Work Order and Service Appointment records into Salesforce Case and Task objects, and maps asset hierarchies into the Salesforce Asset object with ParentId chains intact. We preserve original Work Order create dates as a custom datetime field because Salesforce's CreatedDate reflects migration time. Connect Field Service resources resolve to Salesforce Users by email match; unmatched resources land under a designated fallback owner and are flagged for admin review. What does not migrate: Connect Field Service scheduling policies, FSM territory management, booking optimization rules, and any Power Automate workflows built inside Dynamics 365. Those require a separate rebuild project in Salesforce — we deliver an FSM configuration checklist as part of every migration so your admin knows exactly what to set up post-migration. Automation logic does not transfer between platforms because the underlying action models are incompatible.

Field-level fidelity

Every standard and custom field arrives verified.

Schema-aware mapping

AI proposes the map; you confirm before any record moves.

Relationships preserved

Parent–child, lookups, and ownership stay linked.

Full activity history

Calls, emails, meetings — with original timestamps.

Attachments & notes

Documents, uploads, and inline notes move with the record.

Why teams make this switch

Two sides of the same decision

Leaving

Connect Field Service logo

Connect Field Service

What's pushing teams away

  • Per-seat pricing model becomes expensive as organizations scale technician headcount, especially when supervisors, dispatchers, and parts staff all require licenses.
  • Complex workflow configuration requires dedicated admin resources; smaller teams find the setup overhead disproportionate to their needs.
  • Mobile app performance degrades in low-connectivity or offline scenarios common in remote industrial sites and rural service territories.
  • Integration with third-party accounting or parts procurement systems requires middleware or custom API work that adds ongoing maintenance burden.
  • Upgrade cycles sometimes introduce breaking changes to custom fields or API behavior without sufficient migration notice.

Choosing

Salesforce Sales Cloud logo

Salesforce Sales Cloud

What's pulling them in

  • The AppExchange marketplace with 5,000+ prebuilt apps gives enterprises integrations for nearly every business workflow without custom development.
  • Native Einstein AI for lead scoring, opportunity insights, and predictive forecasting adds intelligence without a separate platform purchase.
  • Territory management, multi-currency support, and advanced forecasting satisfy the needs of complex B2B sales organizations with structured revenue teams.
  • Slack, Tableau, and CPQ are deeply integrated into the core platform, keeping the sales stack unified for teams already in the Salesforce ecosystem.
  • Organizations with a large, established Salesforce implementation choose it because switching costs — integrations, custom code, trained admins — are prohibitive.

Object mapping

How Connect Field Service objects map to Salesforce Sales Cloud

Each row shows how a Connect Field Service 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.

Connect Field Service

Account (Connect Field Service)

maps to

Salesforce Sales Cloud

Account

1:1
Fully supported

Direct map. Connect Field Service customer accounts map to Salesforce Accounts by name, using case‑insensitive matching; duplicate account names are flagged for admin review. Address, phone, and industry fields map field‑by‑field, and any missing required fields trigger a pre‑load validation report. Parent‑child account hierarchies in Connect Field Service translate to Salesforce's ParentId chain, so the top‑level account must load before its child accounts to satisfy foreign‑key constraints.

Connect Field Service

Contact (Connect Field Service)

maps to

Salesforce Sales Cloud

Contact

1:1
Fully supported

Direct map. Field technicians, dispatchers, and customer contacts migrate to Salesforce Contacts linked to their Account, using email address as the primary match key. Duplicate contacts with the same email are flagged for admin resolution, and any missing required fields (such as LastName or AccountId) generate a pre‑load validation report. Because each Contact requires an AccountId, the parent Account must be loaded first so foreign‑key references resolve correctly during the load.

Connect Field Service

Work Order

maps to

Salesforce Sales Cloud

Case

1:1
Fully supported

Work Order maps to Salesforce Case as the primary service record. CFS-specific Work Order fields (priority, status, description, address) map to Case fields. FSM-specific fields — scheduling policy reference, service territory, and assigned resource — become custom fields on Case because Salesforce's standard Case object has no native territory or resource-assignment fields.

Connect Field Service

Work Order

maps to

Salesforce Sales Cloud

Opportunity

1:1
Fully supported

Connect Field Service Work Orders with a revenue component do not map to Salesforce Opportunity without business logic — revenue-bearing work orders require your team to decide whether to create Opportunities from Work Order amounts or treat Case records as the service-of-record only.

Connect Field Service

Service Appointment

maps to

Salesforce Sales Cloud

Task

1:1
Fully supported

Connect Field Service Service Appointments map to Salesforce Tasks. Scheduled Start and End times from CFS become custom datetime fields on the Task because Salesforce Tasks store a single DueDate field. Appointment status (Scheduled, In Progress, Completed) maps via value mapping to Salesforce Task Status.

Connect Field Service

Asset

maps to

Salesforce Sales Cloud

Asset

1:1
Fully supported

Direct map. Connect Field Service assets (installed products at customer locations) map to Salesforce Asset using the asset name as a matching key. Parent‑child hierarchies translate to Salesforce Asset.ParentId links, so top‑level assets load first to generate IDs for children; missing ParentId triggers a validation error. AccountId on each Asset links to customer's Salesforce Account, and assets without a matching Account are flagged for admin review before the load.

Connect Field Service

Work Order Product (Line Item)

maps to

Salesforce Sales Cloud

OpportunityLineItem

1:1
Fully supported

Work Order Line Items map to OpportunityLineItems when the Work Order has a revenue or product component. Requires a Salesforce Pricebook2 to be active before line items can load — PricebookEntryId is mandatory on every OpportunityLineItem. Quantity and UnitPrice from CFS map directly; product lookup resolves via product name match.

Connect Field Service

Bookings (Resource Scheduling)

maps to

Salesforce Sales Cloud

Custom Field on Case

1:1
Fully supported

Connect Field Service Bookings record which technician is assigned to which work order at which time. Salesforce Sales Cloud has no native booking object — this data migrates as custom fields on the Case (Assigned_Technician__c, Booking_Start__c, Booking_End__c). Scheduling visualization requires Salesforce Field Service add-on or a third-party app.

Connect Field Service

Service Territory

maps to

Salesforce Sales Cloud

Custom Field on Case + Salesforce Territory (if enabled)

1:1
Fully supported

Connect Field Service service territories define geographic dispatch zones. Salesforce Sales Cloud standard does not include Territory management — territory names migrate as a custom pick-list on Case (Service_Territory__c). Full territory-based routing requires Salesforce Territory Management or Field Service add-on.

Connect Field Service

Resource / Technician

maps to

Salesforce Sales Cloud

User

1:1
Fully supported

Connect Field Service Resources (technicians and dispatchers) resolve to Salesforce Users by email match. CFS Resources without a matching Salesforce User email are assigned to a designated fallback User and flagged. Salesforce User records must exist before Work Orders and Bookings can link to OwnerId.

Connect Field Service

Custom Field on Work Order

maps to

Salesforce Sales Cloud

Custom Field on Case (__c)

1:1
Fully supported

Any Connect Field Service custom properties on Work Order require a corresponding custom field on Salesforce Case. We generate a custom field creation plan before the migration run so Salesforce-side schema is ready for validation. Custom pick-list fields on CFS need value-by-value mapping to Salesforce pick-list options.

Connect Field Service

Agreement / Contract

maps to

Salesforce Sales Cloud

Contract

1:1
Fully supported

Connect Field Service service agreements and SLAs map to Salesforce Contract linked to the Account, using the agreement name as the match key. Contract start and end dates, status, and description migrate directly; any missing fields (such as Contract Type or ActivationDate) are flagged before the load. CFS agreement line items translate to Salesforce Contract Line Items, each requiring a ContractId and a valid Product2 record to pass validation.

Gotchas + challenges

What specifically takes care here

Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.

Connect Field Service logo

Connect Field Service gotchas

High

Per-seat licensing applies to dispatchers, technicians, and often read-only users

High

Custom fields and non-standard objects require explicit mapping before migration

Medium

Offline sync state is not persistently exported via standard API

Medium

Scheduling optimization rules and territory logic do not transfer between platforms

Salesforce Sales Cloud logo

Salesforce Sales Cloud gotchas

High

Workflow Rules and Process Builder are retired

High

Bulk API batch quota exhaustion during large imports

Medium

Storage overage billing is non-obvious

Medium

Account-Contact many-to-many relationship mapping

Low

Territory and team member import ordering dependencies

Pair-specific challenges

  • Work Order FSM fields have no Salesforce standard equivalent

    Connect Field Service Work Orders carry fields specific to field service management — service territory, scheduling policy reference, work order type, and billing type — that have no corresponding standard field on the Salesforce Case object. Salesforce's native Case supports priority, status, and origin, but not territory-based routing or FSM work order type. We map FSM-specific fields to custom fields on Case (Service_Territory__c, Work_Order_Type__c, Scheduling_Policy__c). Your Salesforce admin must create these custom fields before the migration load validates. Failing to pre-create them results in validation errors that halt the migration run until schema is corrected.

  • Resource-to-User resolution requires existing Salesforce users

    Connect Field Service Resources (technicians and dispatchers) do not automatically become Salesforce Users — they are a different entity type in the Dynamics 365 data model. FlitStack AI resolves Resources to Salesforce Users by matching the email address on the CFS Resource record to an existing Salesforce User.email address. If a CFS Resource has no matching Salesforce User, their Work Order assignments land under a designated fallback User and the record is flagged. Your team must create Salesforce User accounts for all active technicians before the migration run or accept fallback owner assignment for unresolved Resources.

  • Asset hierarchy requires parent-before-child loading order

    Connect Field Service assets support parent-child hierarchies — a parent asset (such as an HVAC system) with child components (compressors, filters). Salesforce Asset also uses a ParentId field for hierarchy. The migration must load top-level assets before child assets so the ParentId foreign key resolves correctly on load. Circular references in the CFS asset hierarchy (an asset that is its own ancestor) will be flagged and excluded from the load with a list of affected records so your admin can resolve the data quality issue before re-running.

  • Work Order status and priority pick-list values must be pre-aligned

    Connect Field Service uses its own pick-list values for Work Order status (Open, In Progress, On Hold, Closed, Canceled) and priority (Low, Normal, High, Critical). Salesforce Case has separate pick-list values that your org's admin configures independently. If the two sets do not match, a Work Order with CFS status 'In Progress' could land as an invalid pick-list value in Salesforce and fail the record load. FlitStack AI generates a value-mapping specification before the migration and maps each CFS value to the corresponding Salesforce value — but your admin must confirm the Salesforce Case Status and Priority pick-lists are populated with the mapped values in Setup before the run.

  • Scheduling policies and territory management require a separate rebuild

    Connect Field Service includes scheduling policies, optimization recipes, and service territories that govern how work is dispatched to technicians. Salesforce Sales Cloud standard edition does not include these features — they live in the Salesforce Field Service add-on. The scheduling policy logic, optimization rules, and territory boundaries stored in Connect Field Service have no Salesforce equivalent that a migration tool can carry over. FlitStack AI migrates the territory names as a custom field on Case so the geographic context is preserved, but the scheduling automation must be rebuilt using Salesforce Flow or the Field Service add-on post-migration.

Migration approach

Six steps for a successful Connect Field Service to Salesforce Sales Cloud data migration

  1. Extract Connect Field Service data via Dynamics 365 API

    FlitStack AI connects to your Connect Field Service instance using the Dynamics 365 Web API with read-only permissions. We extract Accounts, Contacts, Work Orders, Service Appointments, Assets, Work Order Products, Resources, and any custom entities. A pre-extraction data audit profiles record counts, identifies missing required fields, and surfaces duplicate Account records before transformation begins. API extraction uses pagination and rate-limit handling to avoid throttling your Dynamics 365 environment.

  2. Build Salesforce schema: custom fields and pick-list alignment

    Before data loads, FlitStack AI generates a Salesforce custom field creation plan covering every CFS field that has no direct Salesforce equivalent — Service_Territory__c, Work_Order_Type__c, Scheduling_Policy__c, Original_Create_Date__c, and Source_System_ID__c on Case, and Appointment_Start__c and Appointment_End__c on Task. Your Salesforce admin creates these fields using the provided API names and field types. We also deliver a value-mapping spreadsheet aligning CFS Work Order status and priority pick-list values to your Salesforce Case pick-list values so the load does not hit validation errors.

  3. Resolve Connect Field Service Resources to Salesforce Users

    FlitStack AI runs an email-match pass against your Salesforce User list for every CFS Resource record. Matched Resources link Work Orders to OwnerId on the Case record. Unmatched Resources are flagged in a pre-migration report with the CFS Resource name, email, and role. Your team either creates Salesforce User accounts for those technicians or designates a fallback User owner. No Work Order loads with an unresolved owner — Salesforce requires OwnerId to be a valid User ID.

  4. Run sample migration with field-level diff

    A representative slice — typically 100–500 records spanning Accounts, Contacts, Work Orders, Service Appointments, and Assets — migrates to a Salesforce sandbox first. FlitStack AI generates a field-level diff comparing source values against destination values so your team can verify that CFS status and priority pick-list values landed in the correct Salesforce pick-list options, that Asset.ParentId chains resolved correctly, and that Resource-to-User resolution covered the active technician roster. Approval of the sample diff triggers the full migration run.

  5. Full migration run with delta-pickup window

    The full data set loads into Salesforce with records sequenced to satisfy foreign key dependencies: Accounts → Contacts → Assets (top-down for hierarchy) → Work Orders → Service Appointments. A delta-pickup window of 24–48 hours captures any Connect Field Service records modified or created during the cutover window so Salesforce reflects the final CFS state at go-live. FlitStack AI generates an audit log of every record created or updated. One-click rollback reverts all migrated records if post-migration reconciliation reveals data integrity issues.

Platform deep dives

Context on both ends of the pair

Connect Field Service logo

Connect Field Service

Source

Strengths

  • Tightly coupled with major CRM backends like Salesforce and Dynamics 365 for unified customer records.
  • Mobile-first design with offline sync capability for technicians working in low-connectivity environments.
  • IoT and remote monitoring integration for predictive maintenance alerting.
  • Dynamic scheduling with territory-based routing and real-time dispatcher reassignment.
  • Multi-currency and multi-region support for organizations operating across geographic business units.

Weaknesses

  • Per-user license costs scale linearly with technician and dispatcher count, creating budget pressure during seasonal peaks.
  • Workflow and business rule configuration requires specialized admin expertise, increasing total cost of ownership.
  • Custom field and object development requires Salesforce DX or equivalent developer tooling, limiting declarative extensibility.
  • API rate limits and bulk API availability vary by edition, constraining automated migration throughput.
  • Offline data synchronization can produce conflicts that require manual resolution when technicians work in intermittent connectivity.
Salesforce Sales Cloud logo

Salesforce Sales Cloud

Destination

Strengths

  • Largest enterprise app ecosystem in CRM with 5,000+ AppExchange integrations covering nearly every vertical workflow.
  • Native Einstein AI delivers lead scoring, opportunity insights, and predictive forecasting without a third-party layer.
  • Advanced territory management, multi-currency, and flexible forecasting satisfy complex B2B revenue structures.
  • Deep platform extensibility: Custom Objects, Apex, Flow, and the Metadata API allow full schema customization.
  • Well-documented REST API, Bulk API, and Composite API with published rate limits for programmatic migration.

Weaknesses

  • Pricing model is layered and opaque in practice: per-seat fees plus storage overages, add-on subscriptions, and annual uplifts compound to 30–40% above sticker price.
  • Workflow Rules and Process Builder are deprecated, forcing all orgs onto Salesforce Flow — a migration task that catches many teams by surprise.
  • Steep administrative complexity: meaningful configuration requires a dedicated Salesforce admin or consultant.
  • API rate limits are edition-gated (100k/day base for Enterprise) and easily exhausted by large historical imports without throttling.
  • Data export is exportable via Data Loader but preserving relationship integrity across 30+ objects requires careful ETL sequencing.

Complexity grading

How hard is this migration?

Standard CRM migration. 1 of 8 objects need a mapping; the rest are 1:1.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Connect Field Service and Salesforce Sales Cloud.

  • Object compatibility

    B

    1 of 8 objects need a mapping; the rest are 1:1.

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    8-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    B

    Connect Field Service: 100 API calls per minute per org for standard REST API; bulk API available for larger data volumes.

  • Data volume sensitivity

    A

    Connect Field Service exposes a bulk API — large-volume migrations stream efficiently.

Estimator

Estimate your Connect Field Service to Salesforce Sales Cloud migration cost

Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.

Step 1

What are you migrating?

Pick a category, then your source and destination platforms.

Category

FAQ

Frequently asked questions about Connect Field Service to Salesforce Sales Cloud data migrations

Answers to the questions buyers ask most during Connect Field Service to Salesforce Sales Cloud migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Connect Field Service to Salesforce Sales Cloud migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most Connect Field Service to Salesforce Sales Cloud migrations complete within 5–10 days of clock time. A straightforward migration of 5,000–20,000 Work Orders, related Accounts, Contacts, and Assets runs in 24–48 hours. Complex migrations involving multi-level asset hierarchies, value-mapping work for status and priority pick-lists across both platforms, or more than 20 custom Work Order fields extend to 10–14 days. The longest single step is Salesforce schema setup — creating custom fields, aligning pick-list values, and resolving Resource-to-User mappings — which takes 2–4 days before the first record loads. Timeline estimates assume your Salesforce admin can act on the custom field creation plan within 48 hours of delivery.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Connect Field Service.
Land in Salesforce Sales Cloud, intact.

Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.

Accuracy guarantee Rollback included Quote in 1 business day