CRM migration

Migrate from Case Status to Microsoft Dynamics 365 Sales

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

Case Status logo

Case Status

Source

Microsoft Dynamics 365 Sales

Destination

Microsoft Dynamics 365 Sales  logo

Compatibility

92%

11 of 12

objects map 1:1 between Case Status and Microsoft Dynamics 365 Sales .

Complexity

BStandard

Timeline

48–72 hours

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Case Status is a client-engagement CRM built specifically for law firms, centering on case-matter management, automated client communication, and client portal access. Its data model stores contacts, cases, matters, and case-event histories in a structure optimized for legal workflows. Dynamics 365 Sales runs on Dataverse and models the same core objects — Accounts, Contacts, Leads, Opportunities — plus a native Case entity for service management, with unlimited custom tables available under the Enterprise license. We map Case Status client records to Dynamics Accounts and Contacts, Case Status case records to the msdyn_incident (Case) entity or a custom Cases table depending on your license tier, and communication histories to Dataverse custom activity tables. Automations and client-portal configurations do not transfer — those require rebuilding via Power Automate and Power Pages after migration. The migration pipeline uses Case Status API endpoints to extract records in bulk, transforms field names and pick-list values to match Dataverse schema requirements, then upserts into your Dynamics 365 environment via the Dataverse Web API. Owner resolution happens by email match against your Dynamics 365 user list before records commit.

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

Case Status logo

Case Status

What's pushing teams away

  • Firms report that Case Status is a portal layer rather than a full case management system, so they end up paying for both Case Status AND a separate practice management tool, creating double-licensing costs.
  • Some customers cite frustration that automation options feel limited compared to what they can build in their primary CRM, requiring workarounds or third-party integrations for complex client communication sequences.
  • Pricing is not transparently published on the website, and firms report surprise costs when adding the API access tier, premium support, or migration assistance as separate line items.

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 Case Status objects map to Microsoft Dynamics 365 Sales

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

Case Status

Contact

maps to

Microsoft Dynamics 365 Sales

Contact

1:1
Fully supported

Case Status contacts map directly to Dynamics 365 Contacts. The primary firm association is stored as a lookup to the Account entity, ensuring that each contact is linked to its parent organization. Unassigned contacts — those without a linked firm — are attached to a default 'Individual' account record in Dynamics, preserving a consistent owner hierarchy and enabling accurate reporting across the CRM.

Case Status

Contact

maps to

Microsoft Dynamics 365 Sales

Account

many:1
Fully supported

Case Status stores the law firm or company as a contact property named 'company'. This value merges into Dynamics Account — the Account record must be created first so that contacts can link via the primarycontactid or parentaccountid lookup. The mapping preserves the original company name, and multiple contacts can reference the same Account, allowing consolidated firm-level reporting and streamlined case assignments.

Case Status

Case

maps to

Microsoft Dynamics 365 Sales

msdyn_incident (Case)

1:1
Fully supported

Case Status cases map to the msdyn_incident Case entity in Dynamics 365 when your license includes the Customer Service hub. The Case Status case ID is stored as a custom string field (cs_case_id) for traceability and delta-run de-duplication. The original case identifier is preserved so you can audit the source record without relying on platform IDs. This also supports sync if you add or modify cases after the initial load.

Case Status

Case (when no Customer Service license)

maps to

Microsoft Dynamics 365 Sales

Custom Cases Table

1:1
Fully supported

If your Dynamics 365 Sales Professional license does not include Customer Service, Cases require a custom Dataverse table. We create a 'Cases' table with fields mirroring Case Status case properties — title, status, priority, assigned attorney, open date — and register it in your solution.

Case Status

Matter

maps to

Microsoft Dynamics 365 Sales

Custom Matters Table

1:1
Fully supported

Case Status Matters represent legal matters within a case — a subdivision some firms use for billing or document grouping. Dynamics has no native Matter equivalent. We create a custom 'Matter' Dataverse table with a lookup to the Case record.

Case Status

Case Status

maps to

Microsoft Dynamics 365 Sales

statuscode (on msdyn_incident or custom Cases table)

1:1
Fully supported

Case Status case status values (e.g., Intake, Active, Pending, Closed) map to Dynamics statuscode integer values. Each pick-list value requires a value-by-value mapping because Case Status stores string labels while Dynamics stores integer status reasons. During schema setup, we enumerate Case Status status labels, create matching statuscode rows in Dynamics, and verify the mappings before migration. After data lands, you can filter cases by status in Dynamics dashboards and reports.

Case Status

Communication / Client Message

maps to

Microsoft Dynamics 365 Sales

Custom Activity Table (Email, Note, or custom Message entity)

1:1
Fully supported

Case Status client portal messages and communication threads have no direct Dynamics equivalent. We create a custom 'ClientMessage' Dataverse activity table with fields for direction (inbound/outbound), message body, timestamp, attorney owner, and a lookup to the Contact record. The custom activity appears in the Contact timeline, letting attorneys view client interaction history. It also lets Power Automate trigger on new messages, enabling automated follow‑up tasks or alerts.

Case Status

Document / File Attachment

maps to

Microsoft Dynamics 365 Sales

SharePoint (linked to Dataverse)

1:1
Fully supported

Case Status file attachments are downloaded and re-uploaded to SharePoint via the Dynamics 365 document management integration. The SharePoint URL is stored as a custom field on the related Case or Matter record. We replicate the folder hierarchy in SharePoint, creating libraries that reflect your Case Status layout. The stored URL links to the document from the Case or Matter form, and SharePoint permissions are managed via Microsoft 365 groups.

Case Status

Automation / Workflow

maps to

Microsoft Dynamics 365 Sales

Power Automate (must be rebuilt)

1:1
Fully supported

Case Status automations (milestone triggers, client-update notifications, email sequences) have no equivalent in Dynamics 365 Sales. We export your automation definitions as a reference JSON and provide a Power Automate rebuild guide targeting the same triggers. The JSON lists name, trigger, and actions. The guide maps these to Power Automate triggers such as 'When a row is modified', with instructions to rebuild email alerts, updates, and milestone notifications.

Case Status

Client Portal Configuration

maps to

Microsoft Dynamics 365 Sales

Power Pages (must be rebuilt)

1:1
Fully supported

Case Status client portal settings, branding, and portal access rules do not transfer. Power Pages requires a separate build. We can scope this as a post-migration project or recommend a Microsoft partner specializing in legal portal deployments. Power Pages is built on Dataverse, so you can create pages that read contact and case tables migrated from Case Status. We will deliver a blueprint and assist with branding.

Case Status

Custom Field (any entity)

maps to

Microsoft Dynamics 365 Sales

Custom Dataverse Field

1:1
Fully supported

Case Status custom fields created by your firm (e.g., practice area, referral source, client tier) are enumerated during discovery and created as custom Dataverse columns on the appropriate entity. Field type mapping follows Dataverse data type conventions. We map text fields to strings, pick‑lists to option sets, dates to datetime, and numbers to decimal or integer types, then add each column to the solution file for persistence across environments.

Case Status

User / Attorney Owner

maps to

Microsoft Dynamics 365 Sales

SystemUser (Owner)

1:1
Fully supported

Case Status attorney owners are matched to Dynamics 365 users by email address. Unmatched owners are flagged before migration so you can either invite them to Dynamics or reassign their records to a fallback owner before the full run. The match uses the email attribute on the SystemUser table. We generate a report listing attorneys, allowing you to create accounts or map them to a fallback user before migration commits.

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.

Case Status logo

Case Status gotchas

High

No publicly documented public API for self-service exports

High

Portal data is partially decoupled from source case management

Medium

Add-on pricing model obscures true cost for migration assistance

Medium

Custom properties are stored as JSON key-value pairs with limited schema visibility

Low

Client app notifications and push token state does not transfer

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

  • Case Status case status pick-list values do not auto-map to Dynamics statuscode integers

    Case Status stores case status as human-readable string labels ('Active', 'Pending Review', 'Closed Won') while Dynamics 365 stores status as integer pairs: statecode (0=Open, 1=Resolved) and statuscode (an integer reason code tied to that state). There is no automatic value mapping between the two systems. We enumerate your Case Status pick-list values during discovery, then create matching statuscode rows in your Dynamics solution before data lands. If you change status labels in Case Status after discovery but before migration, the value map must be re-run or records will land with mismatched status reasons.

  • Dynamics 365 Sales Professional does not include the native Case (msdyn_incident) entity

    The native Case entity in Dynamics 365 requires a Customer Service license attached to your Sales Professional environment. Firms running only Sales Professional licenses cannot use msdyn_incident without an additional module purchase or license upgrade. If you do not have Customer Service, we create a custom Cases table in Dataverse with equivalent fields. This is a valid workaround but means Cases are not visible in the native Case dashboard or timeline views — they appear in the custom table grid and can be exposed via a model-driven app.

  • Client portal configurations and white-label settings cannot be migrated

    Case Status's client portal — including white-label branding, portal access rules, client-visible case update templates, and two-way messaging settings — is a platform-specific configuration with no equivalent structure in Dynamics 365. Power Pages, Microsoft's portal product, provides the rebuild path but requires a separate implementation project. We document your current portal configuration during discovery and can connect you with a Power Pages specialist or provide a rebuild specification as a post-migration deliverable.

  • Case Status automations and workflow sequences must be rebuilt in Power Automate

    Case Status automation rules (e.g., 'When case status changes to Closed, send client satisfaction survey via portal') have no export format compatible with Dynamics 365 or Power Automate. We extract the rule definitions as a reference document listing triggers, conditions, and actions. Your Dynamics admin or a Power Automate consultant then rebuilds these as cloud flows using Dataverse table events as triggers. The rebuild is a clean opportunity to redesign automations for the Dynamics environment, but it is a separate workstream from the data migration.

  • Communication thread history requires a custom Dataverse activity table

    Case Status stores client portal messages and internal case communications as a distinct record type. Dynamics 365 Sales has native Email and Note entities but no built-in entity for portal message threads. We create a custom ClientMessage activity table in your Dataverse environment before migration, storing direction, timestamp, body, and attorney owner. The table integrates with the Contact timeline in a model-driven app. Note that this requires a Dataverse write to the solution and will increment your custom table count if you are on Sales Professional with a 15-table limit — in that case, we recommend upgrading to Sales Enterprise for unlimited tables.

Migration approach

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

  1. Discover Case Status schema and Dynamics 365 environment

    We connect to Case Status via API using scoped read credentials and enumerate all active objects: contacts, cases, matters, custom fields, and pick-list values. In parallel, we assess your Dynamics 365 environment — license tier, existing tables, statuscode/statecode configuration, and user list. We produce a schema-diff document showing what exists in both systems and what requires new Dataverse custom fields or tables before migration data lands.

  2. Create Dataverse custom schema and status value maps

    Based on the schema-diff, we create any missing custom fields on standard entities (Contact, Account, msdyn_incident) and any custom tables (Cases, Matter, ClientMessage) in your Dataverse solution. We configure statuscode value maps matching your Case Status status labels to Dynamics integer codes. If your environment lacks the Customer Service hub, we build the custom Cases table with the same field set. This schema work is validated in a sandbox or dev environment before touching production data.

  3. Resolve attorney owners by email and build delta-run checkpoint

    We match Case Status attorney owner email addresses against your Dynamics 365 user list. Unmatched owners are flagged in a pre-flight report — you either invite them to Dynamics before migration or assign their records to a fallback owner. We also establish a delta-run checkpoint timestamp so any records modified in Case Status after the initial extraction are captured in a follow-on delta migration window (typically 24–48 hours) during cutover.

  4. Run sample migration with field-level diff

    A representative slice of records — usually 200–500 covering a mix of contacts, cases, and a few matters — migrates first. We generate a field-level diff comparing the Case Status source values against the Dynamics destination values for every mapped field. You review the diff to confirm status value mappings, owner resolution, and Matter-to-Case linkage before the full run commits. Adjustments to field mapping or value maps are applied before the production migration.

  5. Execute full migration with delta pickup and audit log

    The full record set migrates in batches via the Dataverse Web API. An audit log captures every upsert operation — source record ID, destination record ID, operation type, and timestamp. A delta-pickup window (24–48 hours) follows the initial run to capture any records modified in Case Status during cutover. If reconciliation reveals mismatches, one-click rollback reverts the target environment to its pre-migration state. Final validation confirms record counts, status distribution, and owner assignment across all entities.

Platform deep dives

Context on both ends of the pair

Case Status logo

Case Status

Source

Strengths

  • Highly-rated mobile app and client portal that requires no custom development to deploy
  • Built-in AI for message triage and client intelligence that surfaces urgent communications proactively
  • Seamless integration ecosystem with Clio, PracticePanther, MyCase, and other leading legal case management platforms
  • Client satisfaction tracking via NPS with automated review request workflows that drive referral growth
  • G2-recognized ease of use for admins and AI assistant categories, indicating low learning curve for firm staff

Weaknesses

  • Platform is a client-facing layer rather than a full practice management system, requiring firms to maintain a separate case management license
  • No publicly documented API — full API access requires a paid tier, limiting programmatic data extraction options
  • Automation builder lacks the depth of enterprise CRM workflow engines, limiting complex client communication sequences
  • Pricing lacks public transparency, with many features billed as add-ons rather than included in published tiers
  • Small company footprint (~$4.5M revenue, ~77 employees) raises long-term viability and support capacity questions for large firm deployments
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 Case Status and Microsoft Dynamics 365 Sales .

B

Overall complexity

Standard migration

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

  • Object compatibility

    A

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

    Case Status: Not publicly documented.

  • Data volume sensitivity

    B

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

Estimator

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

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

Can't find your answer?

Walk through your Case Status 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 Case Status to Dynamics 365 migrations complete within 48–72 hours of clock time for environments under 25,000 records. Larger setups exceeding 100,000 records or those requiring a custom Cases table and ClientMessage activity table extend to 7–14 days. The longest single step is typically the status value mapping configuration in Dynamics — enumerating every Case Status pick-list value and matching it to a Dynamics statuscode row before data lands.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Case Status.
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