CRM migration

Migrate from Case.one to Microsoft Dynamics 365 Sales

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

Case.one logo

Case.one

Source

Microsoft Dynamics 365 Sales

Destination

Microsoft Dynamics 365 Sales  logo

Compatibility

90%

9 of 10

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

Complexity

BStandard

Timeline

2–4 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Case.one structures its data around legal case management — Cases, Contacts, Companies, Time Entries, and Bills with a per-active-case pricing model. Dynamics 365 Sales structures its data around the sales cycle — Accounts, Contacts, Leads, Opportunities, and Cases with per-user monthly licensing (Sales Professional at $65/user/month, Sales Enterprise at $105/user/month). The migration carries every Case.one record into the appropriate Dynamics 365 table: Cases → Dynamics Cases with custom fields for legal-specific attributes; Companies → Accounts; Contacts → Contacts with primary Account lookups resolved; Time Entries → custom Time_Entry__c table linked to Case; Bills → custom Billing_Invoice__c table. Custom fields created in Case.one (practice area, billing rate, jurisdiction, opposing counsel) migrate as custom columns on the respective Dynamics 365 table. Relationships between cases and parties require connection or lookup resolution post-migration. Workflows, billing automation rules, and document templates do not migrate — we export them as reference documentation for your Dynamics 365 admin to rebuild in Power Automate and the Dynamics 365 form designer. We use the Case.one REST API for extraction, apply field-level transformation, and load via the Dynamics 365 Web API (Dataverse), respecting Power Platform request quotas. A delta-pickup window captures any Case.one records modified during the cutover window.

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.one logo

Case.one

What's pushing teams away

  • Workflow automation limitations frustrate firms with complex multi-step processes that require more flexibility than the native rules engine provides.
  • Performance degradation reported when managing large document repositories within individual matters.
  • Customer support response times are a common complaint in negative reviews, particularly for billing or technical issues.
  • Mobile application lacks feature parity with the desktop version, limiting remote access to full case details.
  • Integration ecosystem is narrower than competitors, making connectivity with niche legal tools and custom software challenging.

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.one objects map to Microsoft Dynamics 365 Sales

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

Contact

maps to

Microsoft Dynamics 365 Sales

Contact

1:1
Fully supported

Direct map. Case.one contacts migrate as Dynamics 365 Contacts with primary Company lookup resolved by matching company name to a pre-migrated Account. Email and name fields map directly; address fields map field-by-field. Owners resolved by email match against Dynamics 365 users.

Case.one

Company

maps to

Microsoft Dynamics 365 Sales

Account

1:1
Fully supported

Direct map. Case.one companies migrate as Dynamics 365 Accounts. Company name maps to Account Name; website maps to Website URL; industry maps via value mapping to the Dynamics 365 Industry picklist. Employee count and revenue map directly where present. These fields are migrated using direct column mappings and standard Dataverse conventions.

Case.one

Case

maps to

Microsoft Dynamics 365 Sales

Incident (Case)

1:1
Fully supported

Transformed map. Case.one Cases become Dynamics 365 Cases (Incident table). Standard fields — case title, description, status — map directly. Legal-specific attributes (practice area, responsible attorney, jurisdiction, opposing counsel) migrate as custom fields on the Incident table. Case number from Case.one preserved as a custom text field for traceability.

Case.one

Time Entry

maps to

Microsoft Dynamics 365 Sales

Custom Table (Time_Entry__c)

1:1
Fully supported

No native Dynamics 365 Sales equivalent for time entries. We create a custom Time_Entry__c table in Dataverse with columns for Hours, Rate, Billable_Flag, and Case_Lookup linking back to the migrated Case.one case. Attorney and date fields migrate as custom datetime and lookup columns.

Case.one

Bill / Invoice

maps to

Microsoft Dynamics 365 Sales

Custom Table (Billing_Invoice__c)

1:1
Fully supported

No native Dynamics 365 Sales equivalent for billing or invoicing. We create a custom Billing_Invoice__c table with Invoice_Number, Amount, Status, and Case_Lookup columns. Payment history migrates as a separate custom table linked to the invoice record. Dynamics 365 Business Central integration can be configured separately for full accounting.

Case.one

Custom Object (Case.one)

maps to

Microsoft Dynamics 365 Sales

Custom Table (Dataverse)

1:1
Fully supported

Case.one custom objects (custom fields on Cases, Contacts, or Companies) map to Dataverse custom columns on the corresponding standard table. N:N relationships in Case.one require connection tables or lookup columns in Dynamics 365 — we surface the required schema in the migration plan before execution.

Case.one

Case-Party Relationship

maps to

Microsoft Dynamics 365 Sales

Contact (Primary) + Connection

many:1
Fully supported

Case.one allows multiple contacts and companies per case. We migrate the primary (primary_contact flag) party as the direct Contact lookup on the Case. Secondary parties migrate as Dynamics 365 Connections on the Case record with a role value matching the Case.one relationship type (e.g., Opposing Counsel, Expert Witness).

Case.one

Document / Attachment

maps to

Microsoft Dynamics 365 Sales

SharePoint (via Dynamics 365)

1:1
Fully supported

Case.one document attachments migrate to the SharePoint document library associated with the Case record in Dynamics 365. Original file names and timestamps are preserved. File size limits follow SharePoint Online constraints. Inline images in notes are downloaded and re-hosted in the SharePoint library.

Case.one

User / Owner

maps to

Microsoft Dynamics 365 Sales

SystemUser

1:1
Fully supported

Case.one users are resolved by email match against Dynamics 365 SystemUser records. Unmatched users are flagged before migration; you either provision them in Dynamics 365 first or assign their records to a fallback owner. Active/inactive status from Case.one is preserved in a custom field.

Case.one

Case Status (Open/Closed/Pending)

maps to

Microsoft Dynamics 365 Sales

statecode + statuscode

1:1
Fully supported

Case.one case status values map to Dynamics 365 statecode and statuscode combinations. Each Case.one status value requires a corresponding statuscode defined under the appropriate statecode in Dynamics 365 before migration. Status reason labels from Case.one migrate as statuscode display names.

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.one logo

Case.one gotchas

High

Trust account balance migration requires financial reconciliation

Low

Per-active-case pricing means closed matters do not count toward billing

Medium

Custom field schemas are firm-specific and require enumeration

Medium

Large document repositories may require chunked export with integrity verification

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 to statecode/statuscode value mapping requires pre-configuration in Dynamics 365

    Case.one stores case status as a free-form custom field with values like Open, Pending Review, and Closed. Dynamics 365 Cases use a mandatory statecode/statuscode pair — every status value from Case.one must be defined as a valid statuscode under the correct statecode (Active or Inactive) before records land. If the statuscode combination is not pre-configured in Dynamics 365, the record will fail to import with a schema validation error. We deliver a status-mapping configuration plan before migration runs and can script the statuscode setup in the target Dynamics 365 environment.

  • Time entries and billing records have no native Dynamics 365 Sales equivalent — custom table creation required

    Case.one time entries and billing invoices have no equivalent construct in standard Dynamics 365 Sales — there is no native time-tracking module, billing module, or invoice table in the Sales app. We create custom Dataverse tables (Time_Entry__c and Billing_Invoice__c) to hold this data, but these tables are separate from the core CRM workflow and do not trigger out-of-the-box Dynamics 365 processes. Teams relying on Case.one billing automation will need to rebuild invoice generation in Dynamics 365 Business Central or a third-party accounting tool as a post-migration step.

  • Power Platform API request quotas cap bulk migration throughput

    Dynamics 365 Sales uses the Dataverse Web API which enforces per-user request quotas (5,000 to 100,000 requests per 24 hours depending on licensing tier). Large migrations with hundreds of thousands of records can exhaust daily quotas, requiring migration runs to span multiple days. We implement batch operations and request pacing to stay within allocated limits, but teams with Enterprise-tier Dynamics 365 (100,000 request/day limit) will experience faster migration throughput than Professional-tier environments (5,000 request/day limit).

  • Custom fields in Case.one require Dataverse custom column creation before migration validation

    Every custom field in Case.one — practice area, billing rate, jurisdiction, opposing counsel, and any custom properties your firm has defined — requires a corresponding custom column to be created in the appropriate Dataverse table before field-level mapping validation can complete. Dynamics 365 Sales Professional enforces a 15-table custom-table limit while Enterprise allows unlimited custom tables. We audit Case.one custom field inventory during discovery and deliver a schema setup plan specifying the exact column names, data types, and pick-list values to pre-create in Dynamics 365.

  • Case-party relationships collapse to a single primary contact lookup plus connection roles

    Case.one allows a case to have multiple contacts and companies as parties — opposing counsel, expert witnesses, co-counsel, and plaintiff/defendant organizations all associated with a single case. Dynamics 365 Cases support only one primary customer (Contact) lookup directly. We handle this by migrating the primary party as the Contact lookup and creating Dynamics 365 Connections on the Case record for secondary parties with role labels matching the Case.one relationship type. Connection roles must be pre-created in Dynamics 365 for every unique party-role label in your Case.one data.

Migration approach

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

  1. Audit Case.one data model and custom fields

    We extract the full Case.one schema — all standard and custom fields on Cases, Contacts, Companies, Time Entries, and Bills — via the Case.one API. We inventory custom field data types, pick-list values, and relationship structures. We compare the Case.one custom field inventory against Dynamics 365 Sales table limits (15 tables for Professional; unlimited for Enterprise) and deliver a schema setup plan specifying the exact custom column names, data types, and pick-list values to pre-create in Dataverse before migration validation runs.

  2. Pre-create Dynamics 365 custom tables and resolve users

    We create all required Dataverse custom tables (Time_Entry__c, Billing_Invoice__c) and custom columns referenced in the field mapping plan. We resolve Case.one users by email match against Dynamics 365 SystemUser records — unmatched users are flagged so your team can provision them in Dynamics 365 or assign a fallback owner before migration. We also pre-create Dynamics 365 Connection roles to match Case.one party relationship labels (Opposing Counsel, Expert Witness, etc.).

  3. Sequence migration: Accounts → Contacts → Cases → Time Entries → Billing

    Dynamics 365 requires foreign key dependencies to resolve before dependent records load. We sequence the migration so Accounts are created first, then Contacts with primary Account lookups resolved, then Cases with attorney and party lookups resolved, then Time Entries linked to Cases, and finally Billing Records linked to Cases and Contacts. Case-party relationships map to Dynamics 365 Connections on the Case record. We run dependency validation at each stage before proceeding to the next.

  4. Run sample migration with field-level diff

    A representative slice of records (typically 100–500 covering cases, contacts, companies, time entries, and billing records) migrates first. We generate a field-level diff between the Case.one source record and the Dynamics 365 destination record, verifying that case status mapping, custom field values, attorney lookups, and time entry linkages are correct. You review the sample diff before the full run commits. This step catches mapping errors at a recoverable scale.

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

    The full migration runs via the Dynamics 365 Web API (Dataverse) with batch operations and request pacing. A delta-pickup window (typically 24–48 hours after the full run completes) captures any Case.one records created or modified during the cutover. Every operation is logged in an audit trail. One-click rollback reverts the Dynamics 365 environment to its pre-migration state if reconciliation uncovers critical mapping failures. We deliver a final reconciliation report comparing record counts and field values between Case.one and Dynamics 365.

Platform deep dives

Context on both ends of the pair

Case.one logo

Case.one

Source

Strengths

  • Per-active-case pricing aligns cost with actual caseload rather than seat count.
  • Consolidated platform reduces switching between separate billing, document, and case tools.
  • Collaborative litigation workspace built natively into the case management flow.
  • Integrated trust accounting handles client fund tracking within the same system.
  • Free tier available for very small firms or evaluation purposes.

Weaknesses

  • Narrower third-party integration ecosystem compared to established legal CRM competitors.
  • Mobile application feature set lags behind the full desktop experience.
  • Workflow automation is less flexible than platforms with programmable rule engines.
  • Limited public documentation on API endpoints and capabilities.
  • Smaller market share means fewer third-party migration resources and community templates.
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 mapping; the rest are 1:1.

B

Overall complexity

Standard migration

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

  • Object compatibility

    B

    1 of 8 objects need a mapping; the rest are 1:1.

  • 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.one: Not publicly documented.

  • Data volume sensitivity

    B

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

Estimator

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

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

Can't find your answer?

Walk through your Case.one 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.one-to-Dynamics 365 Sales migrations complete in 2–4 weeks of clock time for under 50,000 total records. Complex setups with extensive custom fields, multi-party case relationships, or 200,000+ records extend to 3–6 months. The longest planning step is auditing Case.one custom fields and pre-configuring Dynamics 365 statecode/statuscode combinations — those must be done before any data validation can begin. These timelines assume that the source data is relatively clean, the target Dynamics 365 environment is already provisioned with the required custom fields, and your team can respond promptly to any pre-migration configuration requests.

Adjacent paths

Related migrations to explore

Ready when you are

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