CRM migration

Migrate from Sercom to Microsoft Dynamics 365 Sales

Field-level mapping, validation, and rollback between Sercom and Microsoft Dynamics 365 Sales . We move data and schema; workflows are rebuilt natively in Microsoft Dynamics 365 Sales .

Sercom logo

Sercom

Source

Microsoft Dynamics 365 Sales

Destination

Microsoft Dynamics 365 Sales  logo

Compatibility

91%

10 of 11

objects map 1:1 between Sercom and Microsoft Dynamics 365 Sales .

Complexity

BStandard

Timeline

48–96 hours

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Sercom operates a unified field-service-management object model where WorkOrders, Locations, Assets, and Activities live in a flat relationship graph. Dynamics 365 Sales uses a modular Dataverse-backed schema with strict parent–child relationships: Contacts require an AccountId lookup, WorkOrders resolve to either Opportunity, Incident (case), or a custom FSM table, and Assets require an AccountId before they can be created. The migration must reconstruct the Account hierarchy from Sercom's customer-level records, reclassify WorkOrder types, and execute value-by-value mapping for status and priority pick-lists. FlitStack AI sequences the migration so Accounts land first, Contacts second, Locations and Assets third, and WorkOrders last — with foreign-key resolution at every stage. We surface the custom-field inventory and FSM data volume before the migration runs so your admin can decide whether Dynamics 365 Sales Professional (15 custom-table ceiling) or Enterprise is the right destination tier, and whether Dynamics 365 Field Service licensing is warranted. The migration uses Sercom's API for record export and the Dynamics 365 Web API for data load, with a 24–48 hour delta-pickup window capturing any in-flight changes during cutover. Activity history, notes, and file attachments migrate; workflows, scheduling rules, and automation logic must be rebuilt in Power Automate or Dynamics 365 Field Service.

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

Sercom logo

Sercom

What's pushing teams away

  • Limited public documentation and community resources make troubleshooting and onboarding more difficult without vendor dependency.
  • Smaller market footprint compared to established FSM platforms, leading some teams to seek solutions with larger ecosystems and third-party support.
  • Sparse review activity and limited third-party app marketplace reduce confidence in long-term platform extensibility.

Choosing

Microsoft Dynamics 365 Sales  logo

Microsoft Dynamics 365 Sales

What's pulling them in

  • Deep Microsoft 365, Teams, and Outlook integration makes Microsoft Dynamics 365 Sales a natural fit for Microsoft-first organizations already invested in that ecosystem
  • Sales Enterprise and Premium tiers offer unlimited custom tables and advanced AI-driven forecasting and predictive analytics not available in lower tiers
  • Professional tier pricing at $65 per user per month offers a lower entry cost than Salesforce for SMB teams with straightforward CRM needs
  • Flexible customization options allow businesses to build bespoke apps, tailor forms and views, and integrate with other Dynamics 365 modules
  • Microsoft Copilot AI tools are embedded directly into the sales workflow on Enterprise and Premium, automating routine tasks and providing deal intelligence

Object mapping

How Sercom objects map to Microsoft Dynamics 365 Sales

Each row shows how a Sercom 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.

Sercom

Contact

maps to

Microsoft Dynamics 365 Sales

Contact

1:1
Fully supported

Sercom contact records map 1:1 to Dynamics 365 Contacts. FlitStack AI resolves the required AccountId lookup by first identifying unique customer values across all Sercom records and building the Account list before Contacts load. Unresolved contacts attach to a default placeholder Account.

Sercom

Company / Customer

maps to

Microsoft Dynamics 365 Sales

Account

1:1
Fully supported

Sercom company and customer records map to Dynamics 365 Accounts. FlitStack deduplicates by customer name and domain, then assigns a unique AccountId. Parent–child company hierarchies in Sercom map to the Account.ParentId lookup if available; otherwise they flatten to sibling accounts.

Sercom

WorkOrder

maps to

Microsoft Dynamics 365 Sales

Incident (Case) or Opportunity

1:1
Fully supported

Sercom WorkOrders are split by type: reactive service tickets map to Dynamics 365 Incidents (cases) using the Incident table with CustomerId = AccountId and Title = WorkOrder description. Scheduled or project-based WorkOrders with revenue amounts map to Opportunity. Your admin decides the split criteria before migration validates.

Sercom

WorkOrder.status

maps to

Microsoft Dynamics 365 Sales

Incident.Status or Opportunity.StateCode

1:1
Fully supported

Each Sercom WorkOrder status value — including Open, In Progress, On Hold, Closed, and Cancelled — requires explicit mapping to its corresponding Dynamics 365 option-set integer. FlitStack generates a status translation table during discovery that enumerates every unique Sercom status value and its target integer. Your admin reviews and approves the translation table before migration commits to ensure status transitions in Dynamics 365 reflect the original Sercom state correctly.

Sercom

WorkOrder.priority

maps to

Microsoft Dynamics 365 Sales

Incident.Priority or custom Priority field

1:1
Fully supported

Sercom priority levels — Low, Medium, High, and Critical — map to Dynamics 365 priority option-set values using a direct translation. Custom priority labels defined in Sercom require a custom priority field in Dynamics 365 with explicit value-by-value translation for each unique label. FlitStack surfaces the complete Sercom priority inventory during discovery so your admin can determine whether standard mapping suffices or if custom fields are needed to preserve the full priority taxonomy.

Sercom

WorkOrder.owner

maps to

Microsoft Dynamics 365 Sales

Incident.OwnerId or Opportunity.OwnerId

1:1
Fully supported

Sercom technician or assignee information on a WorkOrder resolves by matching the email address against Dynamics 365 users. FlitStack performs the email lookup during migration and flags any owners that cannot be matched to an existing Dynamics user. Your team either creates a corresponding Dynamics 365 user before migration runs or assigns those WorkOrders to a fallback queue for manual routing after cutover.

Sercom

Location

maps to

Microsoft Dynamics 365 Sales

Account (type=Location) or Address fields on Account

many:1
Fully supported

Sercom Locations can become separate Account records with Account.AccountType = 'Location', or their address fields can merge into the parent Customer Account. FlitStack surfaces both options and applies your chosen strategy during migration: if N:1 relationship is used, WorkOrder address fields cross-reference the Location AccountId.

Sercom

Asset

maps to

Microsoft Dynamics 365 Sales

Asset (Dynamics 365 Field Service) or Custom Asset Entity

1:1
Fully supported

If Dynamics 365 Field Service is licensed, Sercom Assets map to the native Asset table with AccountId = parent customer Account. Without Field Service, Assets require a custom Asset table (subject to the 15-table ceiling in Sales Professional) or a custom entity on the Account with serial number, product name, and installed date as custom columns.

Sercom

Product / Service

maps to

Microsoft Dynamics 365 Sales

Product

1:1
Fully supported

Sercom products and service types map to the Dynamics 365 Product table using product name as the primary match key. Products with inventory tracking in Sercom require the Product inventory flag to be set in Dynamics if inventory management is enabled; otherwise they function as non-inventoried items.

Sercom

Activity History

maps to

Microsoft Dynamics 365 Sales

Task / Email / Phone Call / Appointment

1:1
Fully supported

Sercom field visit logs, service notes, and technician check-ins map to Dynamics 365 Activities: site visits map to Appointments, phone call records to Phone Calls, and general notes to Tasks. Original timestamps and technician owners are preserved. Attachments on activities re-upload to Dynamics 365 Notes or SharePoint, whichever your organization configures.

Sercom

WorkOrder.custom_fields

maps to

Microsoft Dynamics 365 Sales

Custom columns on Incident, Opportunity, or Account

1:1
Fully supported

Sercom custom fields on WorkOrders migrate as custom columns on the target Dynamics 365 table (Incident for reactive tickets, Opportunity for project WorkOrders). FlitStack creates each custom column in Dataverse before the migration load. Note: if the total custom-column count across all tables exceeds 15 in a Sales Professional destination, Enterprise tier or custom-entity consolidation is required.

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.

Sercom logo

Sercom gotchas

High

No public Sercom migration documentation or API reference

Medium

Custom field schema is entirely tenant-defined

Medium

Historical Work Order records may lack referential integrity

Microsoft Dynamics 365 Sales  logo

Microsoft Dynamics 365 Sales gotchas

High

Professional tier 15-table custom table limit blocks migrations

High

October 2024 pricing increase applies at renewal for all customers

Medium

Custom fields must be created in the UI before API writes

Medium

Power Platform request limits apply to bulk migrations

Medium

Activity records orphaned to inactive owners fail silently

Pair-specific challenges

  • Dynamics 365 Sales Professional enforces a 15 custom-table ceiling that catches FSM-heavy Sercom migrations off guard

    Dynamics 365 Sales Professional limits custom tables to 15 — a hard ceiling enforced at provisioning. Sercom field-service deployments routinely exceed this because WorkOrders, Locations, Assets, Products, and custom fields each create a table. If your migration plan needs more than 15 custom tables, the destination must be Enterprise tier or the scope must be reduced before migration begins. FlitStack surfaces the custom-table count during discovery so the licensing decision is made before any data moves.

  • Dynamics 365 requires Account existence before Asset creation — orphaned Assets land in a holding account

    The Dynamics 365 Asset table requires an AccountId lookup as a mandatory field. Sercom Assets attached to customers that do not yet have a corresponding Dynamics 365 Account will fail the foreign-key constraint during migration. FlitStack resolves this by sequencing Accounts first, then Assets, and by creating a placeholder 'Orphaned Assets' Account for any Asset whose customer cannot be matched. Your admin reviews orphaned Assets before final commit and either creates the missing Accounts or approves the placeholder approach.

  • Sercom pick-list values must be translated field-by-field — no automated semantic matching

    Dynamics 365 option-set fields store integer values; Sercom stores status and priority as text labels. There is no automated mapping between them — the migration must carry an explicit translation table for each pick-list field. FlitStack generates the translation table during discovery by enumerating every unique value in each Sercom pick-list field. Your admin reviews and approves the table before migration runs; untranslated values default to a null or 'Unknown' entry in Dynamics 365.

  • Sercom Locations map to Account records or address fields — the N:1 relationship strategy must be chosen before migration

    Sercom Locations are a flat list linked directly to WorkOrders. Dynamics 365 enforces N:1 relationships — a Location must belong to an Account. If your team uses Locations both as service sites and as billing addresses, you need either separate Account records (type=Location) or address fields on the parent Customer Account. FlitStack cannot guess the right strategy; it presents both options and applies the chosen one consistently across all Location records. Changing the strategy after the migration has started requires a re-run.

  • Dynamics 365 Field Service licensing decision must be made before Asset and WorkOrder classification

    Without Dynamics 365 Field Service licensed, the native Asset entity and WorkOrder equivalent (Incident) are the only destinations for Sercom field service records. Field Service adds the Asset table, Preventative Maintenance schedule, Resource Scheduling Optimization, and IoT integration — but requires an additional $95 per user per month license on top of Sales Enterprise. FlitStack estimates the field-service data volume during discovery and presents the cost trade-off between using native Incident/Account for everything versus activating Field Service.

Migration approach

Six steps for a successful Sercom to Microsoft Dynamics 365 Sales data migration

  1. Discover Sercom schema and generate the translation map

    FlitStack AI authenticates to Sercom using read-only API credentials and exports the complete object inventory — WorkOrders, Locations, Assets, Products, Contacts, and all custom fields. It enumerates every unique pick-list value across status and priority fields, counts the total custom fields per object, and estimates the custom-table count for the Dynamics 365 destination. The discovery report is shared with your admin for the Account-vs-Location strategy decision, the Asset-vs-custom-entity decision, and the WorkOrder classification (Incident vs. Opportunity) criteria.

  2. Build and validate the Dynamics 365 destination schema

    Before any data loads, FlitStack creates the custom columns and custom tables required in Dataverse based on the discovery output: custom fields on Incident, Account, Contact, and the custom Asset entity if needed. It validates that the total custom-table count does not exceed the 15-table ceiling for Sales Professional or flags the Enterprise upgrade requirement. Owner resolution runs against your Dynamics 365 user directory — unmatched technician emails are flagged for queue assignment before the migration begins.

  3. Sequence and load data respecting foreign-key dependencies

    Accounts load first. Contacts load second with AccountId lookups resolved. Assets load third only after all Accounts are committed (required by Dynamics 365 AccountId constraint). WorkOrders load last with AssetId and AccountId lookups resolved. FlitStack handles the Account-vs-Location strategy by creating separate Location-type Accounts or merging address fields per your chosen configuration. Pick-list value translation tables are applied at load time — no raw Sercom text values land in Dynamics 365 option-set fields.

  4. Run sample migration with field-level diff before full commit

    A representative slice — typically 200–500 records spanning Contacts, Accounts, WorkOrders, Locations, and Assets — migrates first. FlitStack generates a field-level diff between the Sercom source values and the Dynamics 365 destination values for every mapped field. Your admin verifies that status and priority pick-list translations are correct, that AccountId lookups resolved correctly for Assets, and that the Location strategy applied consistently. Only after the diff is approved does the full migration proceed.

  5. Execute full migration with delta-pickup and rollback capability

    The full migration runs against Dynamics 365 using the Web API. A delta-pickup window of 24–48 hours captures any WorkOrders created or modified in Sercom during the cutover. FlitStack's audit log records every operation: records loaded, records skipped, translation decisions made. If reconciliation fails — missing AccountIds, pick-list value gaps, or foreign-key violations — one-click rollback reverts the Dynamics 365 environment to its pre-migration state. Your team continues working in Sercom throughout the window with no disruption.

Platform deep dives

Context on both ends of the pair

Sercom logo

Sercom

Source

Strengths

  • Custom workflow and field-level configuration across service objects.
  • Purpose-built field service management focus rather than a repurposed CRM.
  • Direct integration pathways for service dispatch and technician scheduling.

Weaknesses

  • Minimal public-facing technical documentation and no published API reference.
  • Very limited third-party app ecosystem and community resources.
  • No independently verifiable pricing, SLA terms, or feature documentation in public sources.
Microsoft Dynamics 365 Sales  logo

Microsoft Dynamics 365 Sales

Destination

Strengths

  • Native integration with Microsoft 365, Teams, Outlook, and SharePoint for unified productivity workflow
  • Unlimited custom tables and complex workflows on Enterprise tier enable deep customization for complex sales processes
  • AI-driven predictive analytics and deal intelligence on Enterprise and Premium tiers help sales teams prioritize pipeline
  • Dataverse unified data layer provides a consistent API and data model across all Dynamics 365 and Power Platform apps
  • Strong security model with Field-Level Security and Record Ownership rules for governance-conscious enterprises

Weaknesses

  • Sales Professional tier caps custom tables at 15, creating a migration ceiling for highly customized SMB environments
  • October 2024 pricing increases of $15 per user across all tiers apply to existing customers upon renewal
  • Implementation typically requires costly certified partners, adding 30–50% to total project cost
  • Updates and platform releases can disrupt customizations and plugins, requiring regression testing after each wave
  • Non-Microsoft integrations require additional configuration or middleware, limiting flexibility for heterogeneous tech stacks

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 Sercom and Microsoft Dynamics 365 Sales .

  • 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

    Sercom: Not publicly documented — typical SaaS limits assumed and confirmed during scoping.

  • Data volume sensitivity

    B

    Sercom doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your Sercom to Microsoft Dynamics 365 Sales 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 Sercom to Microsoft Dynamics 365 Sales data migrations

Answers to the questions buyers ask most during Sercom to Microsoft Dynamics 365 Sales migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Sercom to Microsoft Dynamics 365 Sales migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most Sercom-to-Dynamics 365 Sales migrations complete in 48–96 hours of clock time for under 25,000 total records across WorkOrders, Locations, and Assets. Larger FSM deployments with 100,000+ records or complex custom-field and Asset-to-Account lookups extend to 5–10 days. The longest planning step is the pick-list value translation table review and the Account-vs-Location strategy decision — those run in parallel with schema setup before any data moves.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Sercom.
Land in Microsoft Dynamics 365 Sales , 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