CRM migration

Migrate from Aidoo Mobile to Microsoft Dynamics 365 Sales

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

Aidoo Mobile logo

Aidoo Mobile

Source

Microsoft Dynamics 365 Sales

Destination

Microsoft Dynamics 365 Sales  logo

Compatibility

100%

12 of 12

objects map 1:1 between Aidoo Mobile and Microsoft Dynamics 365 Sales .

Complexity

BStandard

Timeline

48–72 hours

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Organizations running Aidoo Mobile as their field service management (FSM) system move to Dynamics 365 Sales when they need the depth, integrations, and reporting depth of Microsoft's CRM ecosystem. Aidoo Mobile stores FSM-first data: customers, sites or locations, work orders with cost figures, asset records tied to locations, and technician assignments with appointment scheduling. Dynamics 365 Sales runs on Microsoft Dataverse — the Account and Contact tables form the foundation, and all FSM-specific data must land in custom tables. FlitStack AI extracts Aidoo Mobile records via its API, maps each object to the appropriate Dataverse entity, creates custom tables for work orders and assets before data lands, and resolves owner records by email match against Dynamics 365 users. Workflows and scheduling automations built inside Aidoo Mobile have no equivalent in Dynamics 365 Sales — we export the rule definitions as reference documentation for your team to rebuild inside Power Automate. The migration mechanism uses Dataverse batched API calls with rate-limit management, handles delta-pickup during cutover, and produces a field-level diff before the full run commits.

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

Aidoo Mobile logo

Aidoo Mobile

What's pushing teams away

  • Low overall review volume and 3.5/5 average rating signal a thinner support community than Jobber, Housecall Pro, or ServiceTitan.
  • Ranks 295th of 351 field service systems on ITQlick — suggesting the product has fallen behind on feature pace versus market leaders.
  • No published API documentation visible on the vendor site; custom integrations require sales engagement.
  • Pricing is quote-based — actual rates are not transparent and require contacting sales.
  • Smaller integration ecosystem than ServiceTitan or Salesforce Field Service, limiting fit for businesses with complex back-office stacks.

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 Aidoo Mobile objects map to Microsoft Dynamics 365 Sales

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

Aidoo Mobile

Customer

maps to

Microsoft Dynamics 365 Sales

Account

1:1
Fully supported

Aidoo Mobile customer records map to Dataverse Account. Account name, address, and industry fields map directly. Multi-site customers in Aidoo Mobile require a parent-account link in Dynamics 365 — we preserve the site hierarchy by linking each site as a child Account record.

Aidoo Mobile

Contact

maps to

Microsoft Dynamics 365 Sales

Contact

1:1
Fully supported

Named contacts within an Aidoo Mobile customer map to Dataverse Contact records linked via the AccountId lookup. Primary site contact becomes the primary Contact on the Account; additional contacts are created as related Contact records with appropriate roles. Role metadata such as JobTitle, Department, and IsPrimary flag from Aidoo Mobile carries over into corresponding Dataverse fields. Relationship types between contacts and the parent customer are preserved in the Contact's ParentCustomerId field so that account managers see the correct hierarchy in Dynamics 365 after migration.

Aidoo Mobile

Site / Location

maps to

Microsoft Dynamics 365 Sales

Account (child) or Custom Site Table

1:1
Fully supported

Aidoo Mobile site records are represented as either child Account records (when the site functions as a separate service location) or as a custom Site custom table with a lookup to the parent Account. We create the custom Dataverse table before migration and configure the relationship.

Aidoo Mobile

Work Order

maps to

Microsoft Dynamics 365 Sales

Custom WorkOrder Table (Dataverse)

1:1
Fully supported

Aidoo Mobile work orders have no native Dataverse equivalent in Dynamics 365 Sales. We create a custom WorkOrder table with fields mirroring Aidoo Mobile's schema: WorkOrderNumber, Status, Priority, Type, ScheduledDate, CompletedDate, EstimatedCost, ActualCost, Description, and a lookup to the Account and Contact. Organizations with Dynamics 365 Field Service installed use the built-in msdyn_workorder table instead.

Aidoo Mobile

Work Order Line Item

maps to

Microsoft Dynamics 365 Sales

Custom WorkOrderProduct Table (Dataverse)

1:1
Fully supported

Work order line items in Aidoo Mobile map to a custom WorkOrderProduct table with a lookup to the parent WorkOrder, a text description of the service or part, quantity, unit cost, and total line cost. This preserves the billing breakdown from Aidoo Mobile inside Dynamics 365.

Aidoo Mobile

Asset

maps to

Microsoft Dynamics 365 Sales

Custom Asset Table (Dataverse) or msdyn_customerasset

1:1
Fully supported

Aidoo Mobile asset records (equipment under service contracts) migrate to a custom Asset custom table linked to the Account or Site that owns the asset. If Dynamics 365 Field Service is active, we use msdyn_customerasset instead, preserving asset serial number, model, installed date, and status.

Aidoo Mobile

Technician

maps to

Microsoft Dynamics 365 Sales

User (Dynamics 365) + Custom Technician Table

1:1
Fully supported

Aidoo Mobile technicians are resolved by email match against Dynamics 365 users. Matched records link to the User. Unmatched technicians are stored in a custom Technician custom table with name, phone, email, and Team lookup so scheduling data references the right person.

Aidoo Mobile

Work Order Status

maps to

Microsoft Dynamics 365 Sales

Custom Option Set on WorkOrder Table

1:1
Fully supported

Aidoo Mobile status values (Open, In Progress, On Hold, Completed, Cancelled) map to a Dataverse option set on the custom WorkOrder table. We map each Aidoo Mobile status label to the corresponding integer value in the destination option set, preserving the current state of every work order.

Aidoo Mobile

Work Order Priority

maps to

Microsoft Dynamics 365 Sales

Custom Option Set on WorkOrder Table

1:1
Fully supported

Priority levels from Aidoo Mobile (Low, Medium, High, Critical) migrate as a custom option set field on the WorkOrder table. Each priority label is mapped to a corresponding integer value in Dataverse's option set schema, maintaining the relative urgency classification from the source system. When Dynamics 365 Field Service is installed, the built-in msdyn_priority option set on msdyn_workorder provides a pre-configured priority field that accepts the same four-tier priority model from Aidoo Mobile.

Aidoo Mobile

Appointment / Scheduling

maps to

Microsoft Dynamics 365 Sales

Custom Scheduling Fields on WorkOrder

1:1
Fully supported

Aidoo Mobile technician appointments and scheduling windows map to custom datetime fields (ScheduledStart__c, ScheduledEnd__c, AssignedTechnician__c) on the WorkOrder table. Dynamics 365 Sales does not have a native scheduling engine — these fields give the scheduling team a reference start point for Power Automate-driven scheduling.

Aidoo Mobile

Attachment / File

maps to

Microsoft Dynamics 365 Sales

Dataverse Note (annotation) or SharePoint Integration

1:1
Fully supported

Files attached to work orders or assets in Aidoo Mobile are downloaded and re-hosted as Dataverse Note attachments (annotations) linked to the corresponding WorkOrder or Asset record. If the destination uses SharePoint integration, files upload to SharePoint document libraries with the record reference preserved.

Aidoo Mobile

Custom Aidoo Entity

maps to

Microsoft Dynamics 365 Sales

Custom Dataverse Table

1:1
Fully supported

Any custom entities defined in Aidoo Mobile (beyond the standard work order, asset, and site objects) are created as custom Dataverse tables in Dynamics 365. We inspect the custom entity schema during discovery, create the tables in the destination environment, and then populate them with the migrated records.

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.

Aidoo Mobile logo

Aidoo Mobile gotchas

High

Aidoo Mobile has no publicly documented API

Medium

Pricing is not publicly published

Low

Limited review corpus for data quality signals

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 caps custom tables at 15 — exceeding this requires Enterprise licensing

    Aidoo Mobile migrations typically bring at minimum WorkOrder, WorkOrderProduct, Asset, Site, and Technician as custom Dataverse tables. Dynamics 365 Sales Professional limits custom tables to 15 per environment. Organizations with more than 10 custom Aidoo Mobile entities will exceed this ceiling and must license Sales Enterprise or Dynamics 365 Field Service to accommodate the FSM data model. FlitStack audits custom entity count during discovery and flags the licensing implication before migration planning begins.

  • Aidoo Mobile work orders require custom Dataverse table creation before any data can land

    There is no native work order entity in Dynamics 365 Sales out of the box. FlitStack must create the WorkOrder custom table in Dataverse with the correct schema (field types, option sets, lookups to Account and Contact) and configure security roles for field technicians before a single record is written. If the organization has Dynamics 365 Field Service licensed, we use the built-in msdyn_workorder table instead, which changes the field mapping. This decision point must be resolved during the pre-migration schema setup step.

  • Dataverse Web API rate limits of 60,000 requests per user per 5-minute window constrain large Aidoo Mobile exports

    Aidoo Mobile API pagination and Dynamics 365 Dataverse Web API rate limits must both be managed during extraction. The Dataverse platform enforces 60,000 requests per user within a 300-second window — a large Aidoo Mobile instance with thousands of work orders and line items will exceed this if FlitStack does not batch requests and introduce deliberate pacing. We implement exponential backoff and request chunking to stay within the limit. Any throttling responses from Dataverse are caught, logged, and retried.

  • Aidoo Mobile scheduling data lacks a native Dynamics 365 Sales equivalent and requires custom fields for preservation

    Aidoo Mobile stores technician appointment windows with start and end times and availability flags. Dynamics 365 Sales has no built-in scheduling engine — the base CRM ships with a basic calendar on User records but no resource scheduling optimization. We preserve Aidoo Mobile scheduling data as custom datetime fields (ScheduledStart__c, ScheduledEnd__c, AssignedTechnician__c) on the WorkOrder table. If the organization later adopts Dynamics 365 Field Service, the scheduling data in these custom fields serves as the reference point for the Resource Scheduling Optimization engine.

  • Aidoo Mobile custom entities need explicit schema mapping — mismatched field types fail at migration time

    Aidoo Mobile allows administrators to add custom fields to work orders and assets with data types that do not map cleanly to Dataverse field types. A text field storing a date value, a multi-select pick-list, or a decimal stored as a string in Aidoo Mobile will cause Dataverse create operations to reject records if the type is not explicitly declared. FlitStack runs a schema validation pass against the Aidoo Mobile export during the sample migration phase, surfaces any type mismatches, and applies a transformation rule before the full run executes.

Migration approach

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

  1. Scope Aidoo Mobile data model and configure Dataverse schema

    FlitStack connects to Aidoo Mobile via read-only API access to enumerate all customers, work orders, assets, technicians, and custom entities — capturing field names, data types, and record counts. We then create the custom Dataverse tables in the target Dynamics 365 Sales environment: WorkOrder, WorkOrderProduct, Asset, Technician, and any additional custom entities discovered in Aidoo Mobile. We configure option sets for status and priority fields, set up lookups to Account and Contact, and assign security roles so field technicians can view their assigned work orders after migration.

  2. Resolve technician owners and validate pick-list value mapping

    Aidoo Mobile technician records are matched to Dynamics 365 users by email address. Any technician without a corresponding Dynamics 365 user account is flagged before migration so the team can create the user or assign a fallback owner. Simultaneously, we map Aidoo Mobile pick-list values for work order status and priority to their Dataverse option set integer counterparts — mapping rules are documented in the migration plan for customer sign-off before data moves.

  3. Run a sample migration with field-level diff

    A representative slice of records — typically 50–200 spanning customers, work orders, line items, assets, and technicians — migrates into Dataverse using the configured schema. FlitStack generates a field-level diff report comparing source values to destination values for every mapped field. The customer reviews the diff to confirm status mapping, cost figures, scheduling timestamps, and technician assignment are correct before the full run is authorized.

  4. Execute full migration with delta-pickup and audit log

    The full dataset is migrated using Dataverse batched API calls with request pacing to stay within rate limits. A delta-pickup window of 24–48 hours runs after the bulk migration, capturing any work orders updated or created in Aidoo Mobile during the cutover. Every operation is logged to the migration audit log with source record ID, destination record ID, timestamp, and operator. If reconciliation fails, one-click rollback reverts the Dataverse environment to its pre-migration state.

Platform deep dives

Context on both ends of the pair

Aidoo Mobile logo

Aidoo Mobile

Source

Strengths

  • Mobile-first technician experience with voice calling and clean UI.
  • Lower price point than enterprise FSM platforms.
  • Three-tier plan structure provides a defined upgrade path.
  • Core FSM features (dispatch, GPS, work orders, e-signature, inventory) are covered.
  • Implementation timelines (2–6 weeks per ITQlick) are shorter than enterprise FSM rollouts.

Weaknesses

  • Thin review base (3.5/5 average) compared to mainstream FSM platforms.
  • Ranked 295 of 351 FSM products by ITQlick — suggests feature pace lag.
  • No publicly documented API or integration directory.
  • Quote-only pricing for all tiers, no transparent rate card.
  • Limited integration ecosystem versus ServiceTitan, Salesforce Field Service, or Jobber.
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 manual workaround.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Aidoo Mobile and Microsoft Dynamics 365 Sales .

  • Object compatibility

    B

    1 of 8 objects need a manual workaround.

  • 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

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

  • Data volume sensitivity

    B

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

Estimator

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

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

Can't find your answer?

Walk through your Aidoo Mobile 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 Aidoo Mobile to Dynamics 365 Sales migrations complete in 48–72 hours of clock time for under 50,000 total records (work orders, assets, contacts, and technicians combined). Larger migrations exceeding 500,000 records or those involving more than 8 custom Dataverse tables extend to 5–10 days. The longest single step is pre-migration Dataverse custom table creation and option set configuration — this runs in parallel with discovery and does not add to the critical path when scoped correctly.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Aidoo Mobile.
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