CRM migration

Migrate from Assured JobCheck to Microsoft Dynamics 365 Sales

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

Assured JobCheck logo

Assured JobCheck

Source

Microsoft Dynamics 365 Sales

Destination

Microsoft Dynamics 365 Sales  logo

Compatibility

100%

12 of 12

objects map 1:1 between Assured JobCheck and Microsoft Dynamics 365 Sales .

Complexity

BStandard

Timeline

48–72 hours of clock time

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Assured JobCheck runs on the Salesforce Cloud platform and structures data around jobs, claims, contacts, companies, assignments, and inventory — a model optimized for restoration contractors who manage property-loss jobs from first notice through completion. Dynamics 365 Sales structures data around Accounts, Contacts, and Opportunities using Microsoft Dataverse, with Power Platform integrations for workflows and automation. FlitStack AI extracts your Assured JobCheck data via the Salesforce REST and Bulk 2.0 APIs, maps job records to Dynamics 365 Opportunities and custom restoration-specific tables, translates insurance claim numbers and loss-type fields into custom opportunity fields, and preserves original create dates and owner assignments. We surface all workflow definitions for rebuild in Dynamics 365 Sales process flows or Power Automate. Files and attachments migrate as Dynamics 365 attachments or SharePoint document library entries. The migration sequence respects Dynamics 365's foreign-key dependencies: Accounts resolve before Contacts, Opportunities link after both exist. We run a field-level diff on a representative sample before the full cutover 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

Assured JobCheck logo

Assured JobCheck

What's pushing teams away

  • Lack of public pricing transparency beyond the $35 entry tier makes budget planning difficult and suggests expensive enterprise pricing for larger franchises, deterring cost-sensitive buyers.
  • Limited market footprint as a niche restoration-industry tool means fewer third-party integrations, community resources, and peer reviews compared to horizontal job management platforms.
  • Smaller user base compared to platforms like Jobber or Buildertrend reduces confidence in long-term product development and vendor stability for franchise operators.
  • Absence of visible API documentation or developer community makes custom integrations with billing, accounting, or vertical-specific tools difficult to evaluate before purchase.
  • No transparent per-seat or unlimited pricing tiers beyond entry level creates uncertainty about total cost of ownership as teams grow.

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 Assured JobCheck objects map to Microsoft Dynamics 365 Sales

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

Assured JobCheck

Contact

maps to

Microsoft Dynamics 365 Sales

Contact

1:1
Fully supported

Direct 1:1 map. Assured JobCheck stores contacts on job records — all Salesforce Contact fields (name, email, phone, title, address) migrate as Dynamics 365 Contact columns. Original owner assignments preserved via OwnerId lookup resolved by email match. The Source_System_ID__c custom column stores the Salesforce record ID for traceability and de-duplication during subsequent delta runs.

Assured JobCheck

Company

maps to

Microsoft Dynamics 365 Sales

Account

1:1
Fully supported

Direct 1:1 map. Assured JobCheck Company records (policyholder name, insurance carrier, adjuster firm) map to Dynamics 365 Account. Company type field (Insurance Carrier vs. Policyholder) translates to a custom Account Type pick-list value. Industry codes map via a value-mapping table with unmapped values defaulting to 'Other'. The Salesforce Company ID stores in Source_System_ID__c for delta-run reference.

Assured JobCheck

Job

maps to

Microsoft Dynamics 365 Sales

Opportunity

1:1
Fully supported

Assured JobCheck Job records map to Dynamics 365 Sales Opportunity. Job name becomes Opportunity name. Job status (Initial Inspection, Scope Complete, In Progress, Completed) maps to Opportunity Stage via a custom value-mapping table. Original job create date preserved as a custom datetime field because Dynamics sets CreatedOn at migration time.

Assured JobCheck

Job (restoration-specific fields)

maps to

Microsoft Dynamics 365 Sales

Custom Restoration Job table (custom table)

1:1
Fully supported

Fields with no Dynamics 365 native equivalent — loss type (water, fire, mold), cause of loss, property type, claim number, policy number, deductible — require a custom table (Restoration_Job__c) in Dataverse. Each field is created as a custom column on that table with a lookup to the parent Opportunity.

Assured JobCheck

Assignment (crew/task assignment)

maps to

Microsoft Dynamics 365 Sales

Task

1:1
Fully supported

Assured JobCheck task assignments map to Dynamics 365 Tasks. The assigned crew member resolves to a Dynamics user by email. Task subject carries the job name and assignment type. Original assignment timestamps preserved. Open/completed status maps to Task Status (Open, Completed, Deferred).

Assured JobCheck

Inventory / Contents (PackOut items)

maps to

Microsoft Dynamics 365 Sales

Custom Job Contents table (custom table)

1:1
Fully supported

PackOut inventory lists (item description, condition, room of origin, barcode) have no native Dynamics equivalent. We create a Job_Contents__c custom table with a lookup to the parent Opportunity and a foreign key to the Contact record for the item owner. Barcode values stored as text for reference.

Assured JobCheck

Job Note / Document

maps to

Microsoft Dynamics 365 Sales

Note

1:1
Fully supported

Assured JobCheck job notes and attached inspection documents migrate as Dynamics 365 Notes attached to the Opportunity. Rich-text formatting preserved where the source note contains HTML. Original note create date preserved as a custom datetime field (Original_Note_Create_Date__c) to maintain audit continuity. Note attachments carry the Salesforce ContentDocument ID in Source_System_ID__c for traceability.

Assured JobCheck

Photo attachment

maps to

Microsoft Dynamics 365 Sales

Attachment / SharePoint Document

1:1
Fully supported

Photos attached to Assured JobCheck job records download from Salesforce Files and re-upload as Dynamics 365 attachments or into a connected SharePoint document library. The photo's associated job record and room/location metadata map to a SharePoint folder naming convention (e.g., /Opportunities/{JobName}/{Room}/). Original photo upload date and uploaded-by user preserve in SharePoint file properties. The Salesforce ContentDocument ID stores in Source_System_ID__c for delta de-duplication.

Assured JobCheck

User / Owner

maps to

Microsoft Dynamics 365 Sales

SystemUser

1:1
Fully supported

Assured JobCheck user records (sales reps, project managers, field crews) resolve to Dynamics 365 SystemUser by email. If a source user has no matching Dynamics user, records flag for admin assignment to a fallback owner before migration commits. Owner resolution is a prerequisite for all other object migrations.

Assured JobCheck

Assured JobCheck workflow / assignment rule

maps to

Microsoft Dynamics 365 Sales

Power Automate flow / Dynamics workflow

1:1
Fully supported

Assured JobCheck workflows and assignment automation (Salesforce Flow definitions) do not migrate. We export your workflow definitions as a reference document for rebuilding in Dynamics 365 process flows or Power Automate. This is the primary manual-rebuild deliverable for every migration.

Assured JobCheck

Salesforce Report / Dashboard

maps to

Microsoft Dynamics 365 Sales

Power BI report / Dynamics report

1:1
Fully supported

Reports and dashboards from Assured JobCheck do not migrate — their underlying data migrates, but the report definitions must be rebuilt in Dynamics 365's native reporting or Power BI. We preserve the source report names and column layouts as a rebuild specification.

Assured JobCheck

Assured JobCheck integration connections

maps to

Microsoft Dynamics 365 Sales

Dynamics 365 / Power Platform integration

1:1
Fully supported

Third-party integrations connected to Assured JobCheck (accounting software links, e-signature tools, scheduling boards) are not carried over. Each integration must be rebuilt as a Dynamics 365 integration or Power Automate connection. We provide an integration inventory as part of the migration plan.

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.

Assured JobCheck logo

Assured JobCheck gotchas

Medium

PackOut contents data is tightly coupled to JobCheck

Medium

Restoration-specific custom fields lack standard equivalents

High

Salesforce org edition may gate API access

Low

Job workflows and automation rules are not data records

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

  • Salesforce-to-Dataverse API translation requires re-platforming all field names and data types

    Assured JobCheck exposes the Salesforce REST and Bulk 2.0 APIs — field names use Salesforce conventions (camelCase API names, __c suffix on custom fields, Id references ending in 'Id'). Dynamics 365 Sales uses the Dataverse Web API with OData 4.0 conventions (column names in the entity schema, lookups as _lookupid_value). Every field in the extraction query must be re-mapped and every relationship reference re-expressed for the Dynamics load API. We handle this translation as a structured transform step before load, but the mapping specification must be complete at discovery — partial mappings produce null foreign keys in Dynamics.

  • Dynamics 365 Sales Professional caps custom tables at 15 — Assured JobCheck migrations routinely exceed this

    If your Assured JobCheck org uses more than 15 custom objects or custom fields beyond the standard Contact, Company, and Job objects (Contents__c, Assignment__c, Inventory_Location__c, etc.), Dynamics 365 Sales Professional will block creation of additional custom tables. We check custom object count at discovery. If your count exceeds 15, we recommend Sales Enterprise for the migration — or we scope the custom tables to the highest-priority 15, deferring the remainder to a post-migration phase. This is a licensing decision that must be made before the Dynamics schema is built.

  • Restoration-specific fields (loss type, claim number, inventory) have no native Dynamics 365 equivalent

    Assured JobCheck's data model includes restoration-specific fields — loss type, cause of loss, property type, claim number, policy number, deductible, and PackOut contents inventory — that do not exist in the Dynamics 365 Sales base schema. These fields must be created as custom columns on a Restoration_Job__c custom Dataverse table with a lookup to the parent Opportunity. The custom table and its columns must be created in Dynamics before any job data loads. We deliver the custom table schema as part of the migration plan, but your Dynamics admin (or our team acting in your environment) must create the table and columns before the load phase begins.

  • Dataverse API rate limits can throttle high-volume job extractions

    Dynamics 365 Sales enforces service protection limits: 52 concurrent requests per user and 6,000 requests per five-minute window. Assured JobCheck job volumes for active restoration companies can exceed these limits during a bulk load if the migration runs in narrow time windows. We pace the Dynamics 365 load using batch sizes of 200–500 records with exponential back-off on 429 responses, and we distribute the load across non-peak hours. For migrations exceeding 100,000 records, we recommend splitting the load across multiple days or using the Dynamics Data Loader (file-based) for the highest-volume tables as a supplement to the API load.

  • PackOut photo inventory lists can exceed Dynamics 365 attachment size and metadata expectations

    Assured JobCheck PackOut generates photo inventories — often hundreds of photos per job, each with room location, item description, and condition metadata. Dynamics 365 Sales and Dataverse handle attachments up to 128 MB per file, but large volumes of photos (1,000+ per migration) can produce API throttling and storage cost surprises. We download photos from Salesforce Files, re-upload them to a SharePoint document library connected to the Dynamics 365 environment, and store the SharePoint file URL as a custom column on the Job_Contents__c record. This preserves the photo-reference relationship while keeping attachment counts within Dynamics storage policy.

Migration approach

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

  1. Discovery and data audit — map every Assured JobCheck object and field

    We inventory every Salesforce object in your Assured JobCheck org (standard and custom), profile data quality (null rates, duplicate contacts, inconsistent date formats), and document the full field-to-column mapping specification. For restoration-specific custom objects (Job__c, Assignment__c, Contents_Item__c), we identify which fields have no Dynamics 365 native equivalent and specify the custom table schema. This phase produces a Migration Plan document — reviewed and signed off by your team — before any schema is created in Dynamics 365. Discovery typically runs 2–3 weeks depending on org complexity.

  2. Build Dynamics 365 schema — custom tables, columns, and forms

    Your Dynamics 365 admin (or our team operating in your tenant) creates the Restoration_Job__c custom table and all required columns (claim number, loss type, policy number, property address, inventory fields) in Dataverse before data loads. We deliver a schema setup specification as part of the Migration Plan. If your migration requires more than 15 custom tables and you are on Sales Professional, we flag the licensing decision at this stage. Forms and views for the custom table are configured so users can access restoration-specific data once records land.

  3. Owner and user resolution — match Salesforce users to Dynamics 365 SystemUser records

    All Assured JobCheck owners (sales reps, project managers, crew leads) are resolved by email against Dynamics 365 SystemUser records. We run an email-matching report before migration: users with a Dynamics match load with the correct OwnerId; users with no match are flagged for admin action (either invite them to Dynamics first or assign their records to a fallback user). No data loads for an object type until owner resolution is complete for all records of that type — this prevents null OwnerId errors in Dynamics.

  4. Sample migration with field-level diff — validate mapping before full run

    A representative sample (typically 100–500 records spanning contacts, accounts, jobs, assignments, and contents) migrates first using the full field-to-column mapping. We generate a field-level diff comparing source values against destination values for every mapped field. You review the diff and confirm the mapping is correct before we proceed to the full load. Any value-mapping errors (loss types, job statuses, assignment conditions) are corrected in the mapping specification before the production run.

  5. Full migration with delta-pickup window — capture in-flight changes during cutover

    The full dataset loads into Dynamics 365 using a combination of the Dataverse Web API and Dynamics Data Loader for high-volume tables. A delta-pickup window (typically 24–48 hours) runs after the initial load to capture any Assured JobCheck records modified during the cutover window — new assignments, updated job statuses, or new contacts added by the field team. Every operation is written to an audit log. One-click rollback reverts the Dynamics environment to its pre-migration state if reconciliation fails. After rollback confirmation, the final delta applies and go-live is declared.

Platform deep dives

Context on both ends of the pair

Assured JobCheck logo

Assured JobCheck

Source

Strengths

  • Salesforce foundation delivers enterprise reliability, SOC 2 compliance, and global data centers with no customer-managed infrastructure.
  • PackOut iPad app provides field-first contents listing with barcode scanning, automatic room organization, and photo attachment in a standardized workflow.
  • Real-time Job Feed and mobile notifications keep field crews and office staff synchronized without relying on phone calls or email.
  • Unlimited jobs and uploads on all plans means restoration companies do not hit arbitrary limits during peak claim seasons.
  • CRM capabilities built in let restoration companies track insurer relationships, adjuster contacts, and referral sources alongside job records.

Weaknesses

  • No publicly documented API rate limits, endpoints, or developer documentation makes third-party integrations and data extraction opaque.
  • Restoration-industry specificity means exported data requires significant field mapping when moving to horizontal project management tools.
  • Small market presence and limited independent reviews make competitive evaluation against Jobber, Buildertrend, or Encircle difficult.
  • Pricing beyond the $35 entry tier is not publicly published, introducing risk of unexpected costs for growing restoration franchises.
  • Assured PackOut is a separate iPad purchase and integration, meaning contents data may reside in a partially coupled system that complicates single-pass migration.
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 Assured JobCheck and Microsoft Dynamics 365 Sales .

B

Overall complexity

Standard migration

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

  • Object compatibility

    A

    All 8 core objects map 1:1 between Assured JobCheck 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

    B

    Assured JobCheck: Not publicly documented — Salesforce API limits vary by org edition and license type.

  • Data volume sensitivity

    A

    Assured JobCheck exposes a bulk API — large-volume migrations stream efficiently.

Estimator

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

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

Can't find your answer?

Walk through your Assured JobCheck 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 Assured JobCheck to Dynamics 365 migrations complete in 48–72 hours of clock time for under 50,000 total records. Migrations exceeding 100,000 records or requiring more than 15 custom tables typically extend to 5–10 business days. The longest single phase is discovery and field mapping — we spend 2–3 weeks on discovery and schema setup so the load phase runs without surprises. Total project duration from kickoff to go-live typically ranges from 3 to 6 weeks for small-to-mid-size restoration companies, and 6–10 weeks for enterprise or franchise configurations.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Assured JobCheck.
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