CRM migration

Migrate from Criminal Case Management to Microsoft Dynamics 365 Sales

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

Criminal Case Management logo

Criminal Case Management

Source

Microsoft Dynamics 365 Sales

Destination

Microsoft Dynamics 365 Sales  logo

Compatibility

92%

11 of 12

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

Complexity

BStandard

Timeline

5–10 days

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Criminal case management platforms store specialized data—cases, defendants, charges, evidence logs, court appearances, and multi-party contact relationships—that requires custom table configuration in Microsoft Dynamics 365 Sales. Standard Dynamics 365 Sales tables (Account, Contact, Lead, Opportunity, Case) cover clients and activities but criminal justice data demands additional custom tables with specific field types, pick-list values for case status and charge classifications, and relationship definitions that enforce referential integrity across parties involved in each case. FlitStack AI extracts records via each system's API, maps source fields to Dynamics 365 Sales tables and custom tables, creates the necessary schema in your Dynamics 365 Sales environment, and loads all data with original timestamps and owner assignments preserved. Workflows, automated case routing rules, and court notification templates do not migrate and must be rebuilt using Power Automate or Dynamics 365 Sales processes after migration. A sample migration with field-level diff validates charge classification mapping, court date scheduling, and evidence chain-of-custody records before the full run 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

Criminal Case Management logo

Criminal Case Management

What's pushing teams away

  • Firms growing beyond 10-15 users report that CaseFleet lacks the multi-office, multi-user permission controls and advanced reporting that comparable platforms provide.
  • Support response times frustrate users when critical deadlines approach, and the knowledge base does not cover edge-case workflows in depth.
  • Annual contract billing catches firms off guard when they attempt to cancel mid-year, with prorated refunds processed slowly or inconsistently.
  • Firms needing native accounting, trust accounting, or client billing features find CaseFleet requires third-party integrations that add cost and complexity.
  • Lawyers expecting API access for custom integrations discover CaseFleet exposes limited or undocumented endpoints, blocking automation workflows.

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

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

Criminal Case Management

Case

maps to

Microsoft Dynamics 365 Sales

Incident (Case) / Custom Case Table

1:1
Fully supported

Criminal cases map directly to Dynamics 365 Sales Case table or a custom Case__c table depending on jurisdiction workflow complexity. Original case number, filing date, jurisdiction, and case type transfer as custom fields. Standard Dynamics 365 Case status field handles minor statuses; major case-stage transitions (Investigation, Arraignment, Trial) require custom pick-list.

Criminal Case Management

Defendant

maps to

Microsoft Dynamics 365 Sales

Contact + Custom Role Field

many:1
Fully supported

Defendants are Contact records in Dynamics 365 Sales with a custom Case_Role__c pick-list set to 'Defendant'. Criminal identification fields (DOB, SID number, FBI number) migrate as custom fields on Contact. If the source stores aliases or prior names, these append to a custom Aliases__c text field. Multiple aliases from source collapse into semicolon-delimited string.

Criminal Case Management

Victim

maps to

Microsoft Dynamics 365 Sales

Contact + Custom Role Field

1:1
Fully supported

Victims migrate as Contact records with Case_Role__c = 'Victim'. Contact protection status from source maps to a custom Is_Protected__c boolean field. Victim contact information is fully preserved; restraining order data migrates to a custom Restraining_Order__c pick-list if the source distinguishes order types.

Criminal Case Management

Witness

maps to

Microsoft Dynamics 365 Sales

Contact + Custom Role Field

1:1
Fully supported

Witnesses map to Contact records with Case_Role__c = 'Witness'. Witness contact details, testimony status, and subpoena records migrate as related sub-records. If the source stores witness statement dates, availability windows, and special accommodations (interpreter needs, security concerns), these transfer as custom fields on the Contact record. Witness availability windows and any special accommodations such as interpreter needs or security concerns transfer as custom fields on the Contact.

Criminal Case Management

Defense Attorney / Prosecutor

maps to

Microsoft Dynamics 365 Sales

Contact + Custom Role Field

1:1
Fully supported

Legal counsel (defense and prosecution) migrate as Contact records with Case_Role__c = 'Defense Attorney' or 'Prosecutor'. Bar number, firm affiliation, and appointment type (court-appointed vs. retained) migrate as custom fields. Attorney contact records link to Cases via custom junction table or Case_Role__c on Contact.

Criminal Case Management

Charge

maps to

Microsoft Dynamics 365 Sales

Custom Charge__c Table

1:1
Fully supported

Charges require a custom Charge__c table in Dynamics 365 Sales because standard Dynamics 365 tables do not have charge-specific fields. Each Charge__c record links to the parent Case via a Lookup field (Case__c). Statute code, charge description, severity (felony/misdemeanor), and classification (person crime, property crime, drug offense) map to custom pick-list and text fields on Charge__c.

Criminal Case Management

Evidence

maps to

Microsoft Dynamics 365 Sales

Custom Evidence__c Table / SharePoint

1:1
Fully supported

Evidence items require a custom Evidence__c table to track item description, evidence type (physical, digital, documentary), custody chain timestamps, storage location, and chain-of-custody transitions. Each custody transfer (seizure, lab submission, court exhibit) becomes a Custody_Event__c related record. For large evidence volumes, evidence metadata migrates to Dynamics 365 with document files stored in SharePoint and linked via URL field.

Criminal Case Management

Court Date / Hearing

maps to

Microsoft Dynamics 365 Sales

Custom Court_Date__c Table / Activity

1:1
Fully supported

Court appearances require a custom Court_Date__c table to store hearing type, scheduled date and time, courtroom location, judge name, and outcome. If source distinguishes between arraignment, preliminary hearing, motion hearing, and trial settings, each becomes a record type or custom pick-list value on Court_Date__c. Outcome data (continuance, plea entered, verdict) migrates to an Outcome__c pick-list field.

Criminal Case Management

Case Document

maps to

Microsoft Dynamics 365 Sales

SharePoint + Custom Document__c Table

1:1
Fully supported

Case documents (motions, filings, discovery) migrate to SharePoint with a custom Document__c metadata table in Dynamics 365. Document type (motion, police report, exhibit, correspondence), filing date, and author link to custom fields. Dynamics 365 SharePoint integration requires site and library configuration before migration; FlitStack AI maps document URLs from source to destination SharePoint paths.

Criminal Case Management

Case Activity / Note

maps to

Microsoft Dynamics 365 Sales

Activity / Note

1:1
Fully supported

Case notes, investigator activities, and attorney work product migrate as Dynamics 365 Notes or Activities depending on type. Phone calls, emails, and meetings map to standard Activity records (Task or Appointment). Free-form case notes map to Note records. Original timestamps, authors, and parent Case lookup transfer via custom fields if Dynamics 365 standard fields do not capture all metadata.

Criminal Case Management

Case Party Relationship

maps to

Microsoft Dynamics 365 Sales

Contact + Case_Role__c / Custom Junction Table

1:1
Fully supported

Source systems with many-to-many party-to-case relationships (one defendant on multiple cases, or multiple defendants on one case) require either a custom Case_Party__c junction table in Dynamics 365 or use of Contact.Case_Role__c for simple 1:N relationships. FlitStack AI analyzes the relationship cardinality in source and recommends the appropriate model before migration.

Criminal Case Management

Probation / Supervision Record

maps to

Microsoft Dynamics 365 Sales

Custom Supervision__c Table

1:1
Fully supported

Probation conditions, supervision start/end dates, and compliance status require a custom Supervision__c table linked to the Case and Defendant Contact. Supervision officer, reporting schedule, and violation history migrate as custom fields. If the source has separate supervision case numbers, these transfer as separate Supervision__c records linked to the originating criminal case.

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.

Criminal Case Management logo

Criminal Case Management gotchas

High

Limited export options for bulk data extraction

Medium

Annual subscription billing with prorated cancellation

Medium

Custom field schemas vary by account and plan

Medium

Document blob extraction may require manual intervention

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

  • Charge classification requires custom table with jurisdiction-specific value mapping

    Dynamics 365 Sales does not have a native charge or criminal offense entity. Each charge, statute code, severity level, and offense classification must be stored in a custom Charge__c table with a Lookup relationship to the Case__c table. Source charge categories (person crime, property crime, drug offense, DUI, domestic violence) need explicit value-by-value mapping to destination pick-lists. Jurisdictions that use non-standard charge codes may require custom text fields or lookups to a separate Jurisdiction_Charge_Code__c table. FlitStack AI generates a charge classification matrix before migration so your legal team can review and approve the mapping for each charge type.

  • Multi-party case relationships require junction table or role field strategy

    Criminal cases routinely involve multiple defendants, victims, witnesses, prosecutors, and defense attorneys—each with potentially different roles across multiple cases. Dynamics 365 Contact records allow a single Case_Role__c pick-list per contact, which works for 1:N (one contact, many cases, same role) but breaks down for N:N scenarios where a single defendant appears on five cases or a prosecutor handles 30 cases with varying roles. For complex multi-party scenarios, FlitStack AI creates a custom Case_Party__c junction table with Contact__c, Case__c, and Role__c fields, enabling N:N relationship tracking that survives cross-case queries. The choice between role field and junction table is validated during the sample migration phase.

  • Evidence chain-of-custody requires custom sub-entity design

    Criminal evidence tracking demands a full chain-of-custody history—seizure date, officer, lab submission, court exhibit, and return to evidence room—not just a storage location field. Dynamics 365 does not have a native custody log entity. FlitStack AI designs a custom Custody_Event__c table as a child of Evidence__c, where each custody transfer (seizure, lab submission, court exhibit, return) becomes a separate Custody_Event__c record with timestamp, custodian (Contact lookup), action type, and notes. Evidence__c records store the current custodian and location. If the source evidence system uses a flat record with cumulative history fields, FlitStack AI parses and splits them into individual Custody_Event__c rows during transformation.

  • Case status workflow stages are jurisdiction-specific and require custom pick-list design

    Criminal case progression varies dramatically by jurisdiction: some use Investigation → Arraignment → Preliminary Hearing → Pretrial Conference → Trial → Verdict → Sentencing while others collapse preliminary hearings or add diversion tracks. Dynamics 365 Sales Case table includes a native status field but it is designed for customer service triage (New, Active, On Hold, Solved, Closed), not criminal case progression. FlitStack AI creates a custom Status__c pick-list on the Case__c table mapped to source stage names. A status transition matrix is delivered before migration so your office can add, remove, or rename stages to match local rules. The matrix also defines which stages require court date records, which generate notification workflows, and which trigger case aging alerts.

  • Document migration requires pre-configured SharePoint site with document library structure

    Dynamics 365 Sales stores documents in SharePoint Online, which must be provisioned and configured before document migration begins. If your criminal case management system uses a flat document repository, FlitStack AI creates a SharePoint library structure that mirrors case folder hierarchies—typically one document library per case type or jurisdiction. The mapping between source document paths and destination SharePoint URLs must be established before bulk document migration. Power Automate flows for automatic document filing on case creation require separate configuration and are not included in the data migration service. FlitStack AI provides a SharePoint configuration checklist as part of the pre-migration deliverable.

Migration approach

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

  1. Discover source data model and destination schema requirements

    FlitStack AI begins by analyzing your Criminal Case Management system's API to enumerate all record types, custom fields, and entity relationships. We simultaneously map source objects to Dynamics 365 Sales standard tables (Contact, Case) and identify custom table requirements (Charge__c, Evidence__c, Court_Date__c, Custody_Event__c, Case_Party__c, Document__c, Supervision__c). We deliver a schema design document for your Dynamics 365 Sales environment that specifies custom table structures, pick-list values, lookup relationships, and field-level security requirements. Your Dynamics 365 admin (or our team) creates the tables in your sandbox before the sample migration phase begins.

  2. Map party roles and validate relationship cardinality

    Criminal case management involves complex multi-party relationships that require careful mapping before data loads begin. FlitStack AI analyzes whether your case data uses 1:N (one party role per case) or N:N (same party with different roles across cases) patterns. For 1:N scenarios, Contact records with Case_Role__c field suffice. For N:N scenarios, we create the Case_Party__c junction table and validate relationship integrity during the sample migration. We also resolve owner assignments by matching detective, attorney, and prosecutor email addresses against Dynamics 365 user accounts, flagging unmatched owners for your team to resolve before the full migration runs.

  3. Sequence migration to resolve foreign-key dependencies

    Criminal case data has strict referential integrity requirements: charges require existing Case records, evidence requires existing Case records, court dates require existing Case records, and Custody_Event__c records require existing Evidence__c records. FlitStack AI sequences the migration load order so parent records insert before child records: Cases first, then Contacts (Defendants, Victims, Witnesses, Attorneys), then Charges, then Court Dates, then Evidence, then Custody Events. If the source exports records in random order, FlitStack AI re-sequences during the transformation step. This sequencing is validated in the sample migration phase before the full run commits.

  4. Run sample migration with field-level diff

    A representative slice of records—typically 100–500 records spanning multiple case types, charge classifications, and evidence volumes—migrates to your Dynamics 365 Sales sandbox first. FlitStack AI generates a field-level diff report that compares source values against destination values for every mapped field. You can verify charge classification mapping, court date scheduling accuracy, evidence custody chain continuity, and party role assignment in the sandbox. Any mapping errors or missing pick-list values are corrected before the full migration. The sample migration also validates SharePoint document path mapping if document migration is included in scope.

  5. Execute full migration with delta-pickup cutover window

    The full migration runs against your Dynamics 365 Sales production environment. A delta-pickup window of 24–48 hours after the initial load captures any records created or modified in the source system during cutover—critical for active cases receiving new charges, evidence submissions, or court date updates. FlitStack AI uses source system IDs stored in Source_System_ID__c fields to identify and update existing records rather than creating duplicates. An audit log records every insert, update, and skip operation. One-click rollback reverts all changes if post-migration reconciliation reveals data integrity issues. SharePoint document migration runs concurrently with database migration using mapped URL paths validated in the sample phase.

Platform deep dives

Context on both ends of the pair

Criminal Case Management logo

Criminal Case Management

Source

Strengths

  • Visual chronological timeline builder reconstructs case facts in a single view for litigation narrative planning.
  • Matter-centric architecture keeps all case data grouped under one container without manual cross-referencing.
  • Built-in evidence library with tagging keeps documents organized and linked to specific case events.
  • Time tracking integrated with case tasks captures billable activity without switching applications.
  • Task management with deadline calendars alerts attorneys to court dates and filing deadlines.

Weaknesses

  • API access is limited or undocumented, blocking custom integrations and automated data pipelines.
  • Annual contract billing with opaque cancellation terms creates friction for firms evaluating alternatives.
  • Multi-user permission controls are basic, making CaseFleet unsuitable for larger firms with role-based access requirements.
  • Reporting and analytics are limited compared to full-practice-management platforms.
  • Limited third-party integrations require firms to maintain separate accounting or communication tools.
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 Criminal Case Management 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

    Criminal Case Management: Not publicly documented.

  • Data volume sensitivity

    B

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

Estimator

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

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

Can't find your answer?

Walk through your Criminal Case Management 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 criminal case management migrations complete in 5–10 business days of active migration work for under 25,000 records with a straightforward custom table setup. Complex migrations with evidence chain-of-custody tracking, multi-table relationship validation, and large document volumes extend to 2–4 weeks. The pre-migration planning and schema design phase typically runs 1–2 weeks depending on jurisdiction workflow complexity. FlitStack AI provides a fixed-price quote after the discovery phase based on actual record counts and schema divergence rather than estimated ranges.

Adjacent paths

Related migrations to explore

Ready when you are

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