CRM migration
Field-level mapping, validation, and rollback between D-Tools and HighLevel. We move data and schema; workflows are rebuilt natively in HighLevel.
D-Tools
Source
HighLevel
Destination
Compatibility
14 of 14
objects map 1:1 between D-Tools and HighLevel.
Complexity
CModerate
Timeline
48–72 hours
Overview
D-Tools is a project-centric platform for low-voltage system integrators, built around proposals, product catalogs, line-item pricing, locations, and service plans. HighLevel is a contact-centric CRM built around contacts, opportunities, workflows, and marketing automation. These data models are fundamentally different — D-Tools organizes around Items (equipment and labor from a product catalog), Locations, and Projects, while HighLevel organizes around Contacts, Companies, and Opportunities with a custom-object layer for anything outside the standard schema. The migration therefore requires translating every D-Tools entity into a HighLevel equivalent: Clients become Contacts and Companies, Projects become Opportunities with custom fields for project metadata, the D-Tools product catalog becomes a HighLevel custom object, item custom fields (all 75 of them) become HighLevel custom fields, and service plan pricing and frequencies are preserved as custom contact fields. Workflow rules and automation triggers in D-Tools have no equivalent in HighLevel's workflow engine and must be rebuilt manually post-migration. FlitStack AI uses D-Tools' REST API (120 calls/min, 10,000 calls/day) and CSV exports for items and projects, maps every entity through a defined field-level schema, runs a sample migration with a field-level diff, then executes the full migration with a 24–48 hour delta-pickup window to capture any records created or modified during cutover.
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.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a D-Tools object lands in HighLevel, 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
HighLevel
Contact + Company
1:1D-Tools Clients are person-level records with company associations. We map D-Tools Client.Name to both a HighLevel Contact (for the individual) and a HighLevel Company (for the firm name), then link them via the native contact-company relationship. If D-Tools stores a single Client record with a company name but no separate Company record, we create both entities and link them automatically.
D-Tools
Client Email / Phone / Address
HighLevel
Contact Custom Fields
1:1D-Tools stores email, phone, and address directly on the Client record. HighLevel stores these on the Contact object natively. We map email to Contact.email, phone to Contact.phone, and address fields to Contact.address1, address2, city, state, zip, country. Multi-line D-Tools address fields are parsed and split into HighLevel's structured address components.
D-Tools
Company (D-Tools client-level firm)
HighLevel
Company
1:1If D-Tools has a separate Company record linked to multiple Clients, we map it directly to HighLevel Company. D-Tools Company fields (website, industry, number of employees, annual revenue) map to HighLevel Company fields where field names align, and to custom fields where no native equivalent exists.
D-Tools
Project
HighLevel
Opportunity
1:1D-Tools Projects are the core operational unit — they contain line items (equipment, labor), location assignments, project status, budget, and scheduled dates. We map each D-Tools Project to a HighLevel Opportunity, preserving the project name as Opportunity name, project status as a custom pick-list field, budget as a custom currency field, and the proposal total as Opportunity value. Line items are stored in a separate custom object (see Item Custom Object mapping).
D-Tools
Project Status
HighLevel
Custom Pick-list Field on Opportunity
1:1D-Tools project statuses (e.g., 'Proposal', 'Won', 'In Progress', 'Completed', 'On Hold') have no direct HighLevel equivalent — HighLevel Opportunity status is driven by pipeline stage. We map D-Tools project status to a custom pick-list field (Project_Status__c) on the Opportunity object. The HighLevel pipeline stage is set independently by your team based on your new sales process.
D-Tools
Location
HighLevel
Custom Field on Opportunity + Custom Object
1:1D-Tools Locations are named work sites used across projects (e.g., 'Floor 2 Conference Room', 'Main Lobby'). HighLevel has no native Locations concept. We map Locations to a custom text field (Site_Location__c) on the Opportunity, and if your team uses Location as a structured entity with hierarchies (building > floor > room), we create a Locations custom object to preserve that structure as a lookup on Opportunities.
D-Tools
Item (Equipment / Labor from i3 Catalog)
HighLevel
Custom Object: D-Tools_Item__c
1:1D-Tools' Integrated Product Library (i3) is a structured catalog of equipment and labor items with pricing, manufacturers, SKUs, and 75 custom fields per item. HighLevel has no native product catalog. We create a D-Tools_Item__c custom object in HighLevel with custom fields for manufacturer, SKU, unit price, item type (equipment/labor/package), and all active D-Tools item custom fields as HighLevel custom fields. This custom object stores the catalog; individual line items on projects reference it via lookup.
D-Tools
Item Custom Fields (all 75)
HighLevel
Custom Fields on D-Tools_Item__c
1:1D-Tools defines 75 item custom fields: 20 text (300 char limit), 3 long text (1000 char), 12 list, 12 number (2 decimal places), 12 date, 12 boolean (yes/no), 4 hyperlink. We create corresponding custom fields on the D-Tools_Item__c custom object in HighLevel, using text, long-text, pick-list, number, date, checkbox, and URL field types respectively. Only the fields actively used in your D-Tools instance are created to keep the schema lean.
D-Tools
Line Item (project item with qty, price, location)
HighLevel
Custom Object: Project_Line_Item__c + Opportunity Lookup
1:1D-Tools line items are project-specific quantity/pricing entries linked to an item from the catalog and a location. HighLevel Opportunities do not have native line items. We create a Project_Line_Item__c custom object with fields for quantity, unit price, total price, related D-Tools_Item__c lookup, Site_Location__c, and OpportunityId. This preserves the full pricing breakdown per project.
D-Tools
Service Plan
HighLevel
Custom Fields on Contact + Custom Object
1:1D-Tools Service Plans track recurring billing configurations: plan name, billing frequency (monthly/yearly), dynamic or fixed pricing, tax rates, and feature lists. HighLevel has no native recurring service-plan equivalent. We create a Service_Plan__c custom object linked to the Contact, storing plan name, frequency, price, and plan features as a long-text summary. Active subscription status is stored as a checkbox on the Contact.
D-Tools
Proposal / Quote
HighLevel
Opportunity Custom Field + Note Attachments
1:1D-Tools proposals are generated from project line items and sent to clients. We map the proposal total to the Opportunity value, proposal status to a custom field, and attach the D-Tools-generated proposal PDF as a file on the HighLevel Opportunity using HighLevel's file attachment mechanism. The proposal's internal version history is preserved as Opportunity notes.
D-Tools
Workflow Rule
HighLevel
Not Migrated — Must Be Rebuilt
1:1D-Tools workflow rules fire notifications and entity-state actions (e.g., email on project status change, task creation on proposal sent). HighLevel Workflows use a completely different trigger-action architecture with branching logic, time delays, and CRM event triggers. There is no automated migration path. We export your D-Tools workflow rule definitions as a structured JSON document that your HighLevel admin can use as a reference to rebuild equivalent automations in HighLevel's Workflow Builder.
D-Tools
User / Staff
HighLevel
User (by email match)
1:1D-Tools Staff records are user accounts tied to projects, proposals, and service plans. We resolve D-Tools staff members by email against HighLevel user accounts. Unmatched staff are flagged before migration — your team invites them to HighLevel first or assigns their records to a fallback owner. No migrated record lands without a HighLevel owner.
D-Tools
Note / Attachment
HighLevel
Contact / Opportunity Note + File Attachment
1:1D-Tools notes attached to clients, projects, or items map to HighLevel Notes on the corresponding Contact or Opportunity record. File attachments (proposals, drawings, images) are re-uploaded to HighLevel Files and attached to the relevant record. Original timestamps and attaching user are preserved on each note.
| D-Tools | HighLevel | Compatibility | |
|---|---|---|---|
| Client | Contact + Company1:1 | Fully supported | |
| Client Email / Phone / Address | Contact Custom Fields1:1 | Fully supported | |
| Company (D-Tools client-level firm) | Company1:1 | Fully supported | |
| Project | Opportunity1:1 | Fully supported | |
| Project Status | Custom Pick-list Field on Opportunity1:1 | Fully supported | |
| Location | Custom Field on Opportunity + Custom Object1:1 | Fully supported | |
| Item (Equipment / Labor from i3 Catalog) | Custom Object: D-Tools_Item__c1:1 | Fully supported | |
| Item Custom Fields (all 75) | Custom Fields on D-Tools_Item__c1:1 | Fully supported | |
| Line Item (project item with qty, price, location) | Custom Object: Project_Line_Item__c + Opportunity Lookup1:1 | Fully supported | |
| Service Plan | Custom Fields on Contact + Custom Object1:1 | Fully supported | |
| Proposal / Quote | Opportunity Custom Field + Note Attachments1:1 | Fully supported | |
| Workflow Rule | Not Migrated — Must Be Rebuilt1:1 | Fully supported | |
| User / Staff | User (by email match)1:1 | Fully supported | |
| Note / Attachment | Contact / Opportunity Note + File Attachment1: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.
D-Tools gotchas
Dual product API split (Cloud vs. SI) requires product identification first
i3 Product Library is a platform resource, not user data
GetClients API caps at 500 records per request with pagination required
Service plan dynamic pricing rules must be manually reconstructed
Custom report definitions do not transfer between D-Tools instances
HighLevel gotchas
Sub-account architecture creates isolated data silos per client
Usage-based telecom and AI costs are not in the subscription price
Workflows have no native equivalent in most destination CRMs
API rate limits cap bulk migration throughput at 100 requests per 10 seconds per sub-account
White-label configuration and branding assets do not export via API
Pair-specific challenges
Migration approach
Audit D-Tools data volume and custom field inventory
We connect to your D-Tools account via API using your API credentials and run a full data audit: client count, company count, project count, item catalog size, active item custom field count, service plan count, and attachment volume. We also export workflow rule definitions as a JSON document for your rebuild reference. This audit produces the migration scope document — including which of the 75 possible item custom fields are actually in use — so we know exactly how many custom fields to create in HighLevel before any data moves.
Design HighLevel custom object schema from D-Tools item and service plan structure
Based on the audit, we design the HighLevel custom object schema: D-Tools_Item__c with all active item custom fields mapped to HighLevel field types (text, long-text, pick-list, number, date, checkbox, URL), Project_Line_Item__c with lookups to the item custom object and Opportunity, Service_Plan__c linked to Contact, and any custom fields needed on Opportunity for project metadata. We deliver a schema setup plan listing every custom object, custom field, field type, and pick-list value so your HighLevel admin creates them in the correct order before migration validation runs.
Resolve D-Tools users to HighLevel users by email match
D-Tools staff members are matched to HighLevel users by email address. Unmatched staff are flagged with a pre-migration report — your team either creates their HighLevel account first or designates a fallback owner (a sales manager or admin) to receive their migrated records. No record migrates without a resolved HighLevel owner. This step also confirms which HighLevel pipeline and pipeline stages your team wants to use for the migrated Opportunities so stage mapping can be configured before the test run.
Run a sample migration with field-level diff before full commit
A representative slice migrates first: 50–200 records covering a mix of clients, companies, projects, line items, and service plans. We generate a field-level diff showing every source field value against the destination field value so you can verify client-to-contact mapping, project-to-opportunity metadata, item catalog custom field population, and owner resolution. You approve the sample before we proceed to the full migration. This step catches custom field naming errors, pick-list value mismatches, and data quality issues (e.g., clients without email) before they affect the full record set.
Execute full migration with delta-pickup window for in-flight changes
The full migration runs against HighLevel using the validated field mapping from the sample. We sequence the load in dependency order: Companies first, then Contacts (linked to Companies), then D-Tools_Item__c custom object, then Opportunities (linked to Contacts and Companies), then Project_Line_Item__c records (linked to Opportunities and D-Tools_Item__c), then Service_Plan__c records, then notes and file attachments. A delta-pickup window of 24–48 hours captures any records created or modified in D-Tools during the cutover period. Audit logs are generated for every operation, and one-click rollback is available if reconciliation fails.
Platform deep dives
D-Tools
Source
Strengths
Weaknesses
HighLevel
Destination
Strengths
Weaknesses
Complexity grading
Moderate CRM migration. 1 of 8 objects need a mapping; the rest are 1:1.
Overall complexity
Moderate migration
Derived from compatibility, mapping clarity, API constraints, and data volume across D-Tools and HighLevel.
Object compatibility
1 of 8 objects need a mapping; the rest are 1:1.
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
D-Tools: 120 API calls per minute and 10,000 API calls per day per key.
Data volume sensitivity
D-Tools doesn't expose a bulk API — REST + parallelization used for high-volume runs.
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 D-Tools to HighLevel migration scoping. Not seeing yours? Book a call.
Walk through your D-Tools to HighLevel migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave D-Tools
Other ways to arrive at HighLevel
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.