CRM migration

Migrate from D-Tools to Microsoft Dynamics 365 Sales

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

D-Tools logo

D-Tools

Source

Microsoft Dynamics 365 Sales

Destination

Microsoft Dynamics 365 Sales  logo

Compatibility

85%

11 of 13

objects map 1:1 between D-Tools and Microsoft Dynamics 365 Sales .

Complexity

BStandard

Timeline

48–72 hours of active migration clock time

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

D-Tools organizes business around Projects, Clients, Locations, Service Plans, and Change Orders—objects optimized for installation tracking and job costing. Dynamics 365 Sales organizes around Accounts, Contacts, Leads, and Opportunities—objects built for relationship management and sales process automation. These models diverge structurally: D-Tools projects have hierarchical line items tied to a product library, while Dynamics 365 stores product records in a separate catalog with price list associations. We map D-Tools Clients to Accounts, Contacts, and Contacts; D-Tools Projects to Opportunities with custom fields carrying project metadata; D-Tools Service Plans to custom fields or Opportunity Products; and D-Tools Invoices to Invoices with Account linkage. D-Tools Locations collapse into address fields on Account and Contact records. We use D-Tools Cloud API (120 calls/minute, 10,000/day limit) for extraction and Dynamics 365 Dataverse Web API for ingestion. Custom fields created in D-Tools migrate as custom columns in Dataverse. Workflows, automations, and the D-Tools product library require manual rebuild in Dynamics 365 Sales—our migration plan exports workflow definitions as a reference document for your admin team.

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

D-Tools logo

D-Tools

What's pushing teams away

  • Support response times are slow — customers report delays in resolving queries and slow turnaround on pricing or feature estimates.
  • Steep learning curve for new users, particularly around the integrated product library and change-order workflows, leading to extended onboarding.
  • Small or distributed teams find the platform heavy for their needs, with feature gaps in real-time collaboration across multiple office and field locations.
  • Annual pricing lock-in and limited transparency around renewal increases create billing surprises for long-term subscribers.

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 D-Tools objects map to Microsoft Dynamics 365 Sales

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

D-Tools

Client

maps to

Microsoft Dynamics 365 Sales

Account

1:1
Fully supported

D-Tools Clients map directly to Dynamics 365 Accounts. Client name becomes Account Name; primary contact email maps to Contact.Email. D-Tools company-level billing address migrates to Account.Address fields. Multi-location D-Tools clients collapse to one Account with additional addresses stored as Contact records.

D-Tools

Client

maps to

Microsoft Dynamics 365 Sales

Contact

1:1
Fully supported

Every D-Tools Client has at least one primary contact. We extract contact first name, last name, email, phone, mobile, and title. These map to Contact.FirstName, Contact.LastName, Contact.Email, Contact.Phone, Contact.MobilePhone, and Contact.JobTitle. Client-level default contact becomes Account.PrimaryContactId lookup. Secondary contacts on the same client create additional Contact records linked to the same Account.

D-Tools

Project

maps to

Microsoft Dynamics 365 Sales

Opportunity

1:1
Fully supported

D-Tools Projects are the core business object and translate to Dynamics 365 Opportunities. Project name becomes Opportunity.Name; estimated value becomes EstimatedRevenue. Project status (Active, Completed, On Hold) maps to Opportunity.StateCode with Open/Closed system values. Owner assignment maps via email match to Dynamics 365 User records.

D-Tools

Project

maps to

Microsoft Dynamics 365 Sales

Lead

1:many
Fully supported

D-Tools Projects in pre-contract Proposal status route to Dynamics 365 Lead records. Once a D-Tools project moves to Awarded or Active status, it becomes an Opportunity. This split preserves pipeline visibility in Dynamics 365 Sales by keeping pre-sale project definitions separate from active deal records.

D-Tools

Project Location

maps to

Microsoft Dynamics 365 Sales

Account.Address or Contact.Address

many:1
Fully supported

D-Tools Location records attach to Projects and define installation sites. Each unique location address is de-duplicated and mapped to Account.Address fields. Multiple locations per client collapse to a primary Account site address plus secondary Contact addresses for service-specific locations. Site-level contact names and phone numbers become Contact records linked to the relevant location address.

D-Tools

Service Plan

maps to

Microsoft Dynamics 365 Sales

Custom Field on Opportunity + Custom Table

1:1
Fully supported

D-Tools Service Plans carry dynamic/fixed pricing, billing frequencies, and RMR (recurring monthly revenue) values. These have no native Dynamics 365 Sales equivalent. We migrate Service Plan metadata as custom Opportunity fields (e.g., Service_Plan_Type__c, Recurring_Monthly_Revenue__c). For complex recurring billing, we create a custom Service_Agreement__c table with OpportunityId lookup.

D-Tools

Project Line Item

maps to

Microsoft Dynamics 365 Sales

OpportunityProduct

1:1
Fully supported

D-Tools Project line items with product, labor, and markup components map to Dynamics 365 OpportunityProduct records. D-Tools product entries (drawn from the i3 Integrated Product Library) require mapping to Dynamics 365 Product records—if a matching Product record exists, we link it; otherwise we create Product catalog entries during migration.

D-Tools

Change Order

maps to

Microsoft Dynamics 365 Sales

Custom OpportunityChangeOrder__c Table

1:1
Fully supported

D-Tools Change Orders track scope changes on active projects. Dynamics 365 has no native change order entity. We create an OpportunityChangeOrder__c custom table with Name, Amount, ApprovalStatus, and OpportunityId lookup. Original D-Tools change order numbers preserve as a text field for audit continuity.

D-Tools

Task

maps to

Microsoft Dynamics 365 Sales

Task

1:1
Fully supported

D-Tools Project tasks map to Dynamics 365 Tasks with RegardingObjectId pointing to the parent Opportunity. Task subject, description, due date, status, and priority map directly. Owner assignment resolves via email match. Completed task timestamps map to ActualEnd; open tasks preserve ScheduledEnd.

D-Tools

Invoice

maps to

Microsoft Dynamics 365 Sales

Invoice

1:1
Fully supported

D-Tools Invoices map to Dynamics 365 Sales Invoices linked to Account and Opportunity. Invoice number, date, due date, line items, tax, and total all translate field-by-field. D-Tools invoice status (Draft, Sent, Paid, Overdue) maps to Invoice.StatusCode. Paid invoices import as closed invoices; unpaid balances surface as open Dynamics 365 invoices.

D-Tools

Attachment / File

maps to

Microsoft Dynamics 365 Sales

Note

1:1
Fully supported

D-Tools file attachments on Projects, Clients, and Invoices export and re-upload as Dynamics 365 Notes with DocumentBody (base64). File name becomes Note.Title; file type and original upload date preserve in custom fields. Attachments over 25MB split per Dataverse file size limits.

D-Tools

Custom Property

maps to

Microsoft Dynamics 365 Sales

Custom Column (Dataverse)

1:1
Fully supported

D-Tools custom properties on any entity (Client, Project, Service Plan) migrate as Dataverse custom columns on the corresponding table. Data type mapping: text to Text, number to Integer or Decimal, date to DateTime, picklist to OptionSet. Dynamics 365 Sales Enterprise unlimited custom tables; Professional limited to 15 tables.

D-Tools

D-Tools Owner / User

maps to

Microsoft Dynamics 365 Sales

SystemUser

1:1
Fully supported

D-Tools users assigned to Projects and Tasks resolve by email address against Dynamics 365 SystemUser records. Unmatched users flagged in a pre-migration owner report. D-Tools user roles (Admin, Project Manager, Technician) have no direct Dynamics 365 equivalent—Security Role assignment is a post-migration configuration step.

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.

D-Tools logo

D-Tools gotchas

High

Dual product API split (Cloud vs. SI) requires product identification first

High

i3 Product Library is a platform resource, not user data

Medium

GetClients API caps at 500 records per request with pagination required

Medium

Service plan dynamic pricing rules must be manually reconstructed

Low

Custom report definitions do not transfer between D-Tools instances

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

  • D-Tools API rate limits require multi-day extraction for large datasets

    D-Tools Cloud API caps at 10,000 calls per day per API key with 120 calls per minute. A D-Tools customer with 50,000 line items and 5,000 invoices needs approximately 5 days of extraction under this ceiling. We pace requests automatically and checkpoint progress to avoid hitting the limit mid-export. If your D-Tools instance uses the SI on-premises API, the middleware queue design requires SI to export data to the API before external consumers can read it—discovery of this queue dependency frequently extends scoping by 2–3 days.

  • D-Tools integrated product library (i3) has no Dynamics 365 Sales native equivalent

    D-Tools' i3 program syncs manufacturer pricing, specification data, and product images from hundreds of AV and security vendors into the D-Tools product catalog. Dynamics 365 Sales Product Catalog requires manual product entry with price lists, bundles, and discount lists created individually. We migrate existing D-Tools product names and pricing as OpportunityProduct records, but your team must rebuild the vendor pricing sync using Dynamics 365's connector ecosystem (WooCommerce, Shopify, or a third-party PIM integration) post-migration.

  • D-Tools service plan RMR tracking collapses to custom Opportunity fields

    D-Tools Service Plans track Recurring Monthly Revenue (RMR), dynamic versus fixed pricing, and multi-frequency billing cycles on an asset-level basis. Dynamics 365 Sales has no service agreement entity, and the Sales Enterprise opportunity model stores recurring revenue only as a numeric field or via the Project Service 365 module (an additional license). We preserve RMR values as custom currency fields, but amortization schedules, billing automation, and service renewal alerts must be rebuilt using Power Automate flows after migration.

  • D-Tools Project Status states require manual stage mapping to Dynamics 365 Sales process stages

    D-Tools uses five project statuses (Proposal, Awarded, Active, Completed, On Hold). Dynamics 365 Sales Opportunities use Open/Closed/Won/Lost states with stage pick-list values defined per Sales Process. Awarded and Active in D-Tools both map to Open states in Dynamics 365, but your team must define whether Awarded maps to a Proposal stage or directly to Negotiation. We deliver a stage mapping plan before migration runs, but the business logic decision must come from your sales ops team.

  • D-Tools custom properties face a 15-table ceiling on Sales Professional

    D-Tools custom properties on Clients, Projects, Service Plans, and Line Items migrate as custom columns in Dataverse. Dynamics 365 Sales Professional enforces a 15-table limit for custom tables and columns; Sales Enterprise has no limit. If your D-Tools instance uses more than 15 custom property groups, you need Sales Enterprise licensing or a subset selection decision before migration schema is finalized. We flag the count during discovery and adjust the migration scope accordingly.

Migration approach

Six steps for a successful D-Tools to Microsoft Dynamics 365 Sales data migration

  1. Audit D-Tools data volume and custom property inventory

    We query D-Tools Cloud API to enumerate all Clients, Contacts, Projects, Service Plans, Change Orders, Invoices, and custom property definitions. We capture record counts per entity, identify API rate-limit pacing requirements for extraction, and list every custom field with its data type. This discovery output drives the final migration scope document and identifies which D-Tools entities require custom Dynamics 365 table creation.

  2. Design Dynamics 365 schema and custom table structure

    We create a Dynamics 365 Sales solution with the Service_Agreement__c and OpportunityChangeOrder__c custom tables, plus all custom fields from D-Tools custom properties mapped to their target tables. We configure OptionSet values for D-Tools pick-lists, set up Price Lists in the Product Catalog for migrated line items, and create the Sales Process with stage mapping derived from D-Tools project statuses. Security roles and field-level security are configured for custom columns before data ingestion begins.

  3. Resolve D-Tools owners and users against Dynamics 365 SystemUser records

    We export all D-Tools users assigned as Project owners, Task owners, and Service Plan managers. Each user's email address is matched against existing Dynamics 365 SystemUser records. Unmatched users are flagged in a pre-migration owner report—your team either invites them to the Dynamics 365 tenant or assigns a fallback owner. No Opportunity or Task lands in Dynamics 365 without a resolved OwnerId.

  4. Run sample migration with field-level diff on 100–500 representative records

    We extract a representative slice from D-Tools spanning Clients, Projects, Service Plans, and Change Orders, then load into Dynamics 365. We generate a field-level diff comparing source values against destination field values, verifying that D-Tools project status maps to the correct Dynamics 365 Opportunity StateCode, that Service Plan RMR values landed in the custom currency field, and that Change Orders link to the correct parent Opportunity. You review the diff and approve before full migration commits.

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

    Full data extraction from D-Tools runs with API rate-limit pacing. Accounts and Contacts ingest first to satisfy foreign keys, then Opportunities, Service Plans, Change Orders, and Invoices follow. A delta-pickup window (24–48 hours) captures any D-Tools records created or modified during cutover. FlitStack logs every record operation with before/after snapshots in an audit log. One-click rollback reverts the Dynamics 365 environment to pre-migration state if reconciliation detects data integrity issues.

Platform deep dives

Context on both ends of the pair

D-Tools logo

D-Tools

Source

Strengths

  • Purpose-built for low-voltage system integrators with industry-specific terminology and workflows.
  • i3 Integrated Product Library delivers real-time manufacturer pricing for accurate proposals.
  • Cloud and on-premises (SI) products cover both SMB and enterprise deployment needs.
  • Field-first mobile experience for technicians reduces office-to-field communication gaps.
  • Service plan management supports recurring revenue and monitoring agreement billing.

Weaknesses

  • Two distinct products (Cloud vs. SI) with separate APIs complicate cross-product migrations.
  • Support responsiveness is a recurring pain point in customer reviews, especially for pricing estimates.
  • Limited third-party integrations outside of QuickBooks and common accounting tools.
  • Custom report definitions do not export — customers must rebuild dashboards at the destination.
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. All 8 core objects map 1:1 between D-Tools and Microsoft Dynamics 365 Sales .

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across D-Tools and Microsoft Dynamics 365 Sales .

  • Object compatibility

    A

    All 8 core objects map 1:1 between D-Tools and Microsoft Dynamics 365 Sales .

  • 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

    C

    D-Tools: 120 API calls per minute and 10,000 API calls per day per key.

  • Data volume sensitivity

    B

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

Estimator

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

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

Can't find your answer?

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

Book a free 30 minute consultation

For under 50,000 D-Tools records (Clients, Projects, Service Plans, Invoices, and line items), expect 48–72 hours of active migration clock time. Large D-Tools SI deployments with 100,000+ line items require 5–7 days due to D-Tools API rate-limit pacing (10,000 calls/day). Schema design and custom table creation in Dynamics 365 add 3–5 days of planning before data moves. End-to-end, most D-Tools migrations complete within 7–14 days including sample migration, validation, and cutover delta-pickup.

Adjacent paths

Related migrations to explore

Ready when you are

Move from D-Tools.
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