CRM migration
Field-level mapping, validation, and rollback between Criminal Case Management and Salesforce Sales Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Sales Cloud.
Criminal Case Management
Source
Salesforce Sales Cloud
Destination
Compatibility
10 of 11
objects map 1:1 between Criminal Case Management and Salesforce Sales Cloud.
Complexity
BStandard
Timeline
48–72 hours
Overview
Criminal Case Management platforms store legal matters as unified case objects with nested client records, document attachments, court date calendars, and billing line items. Salesforce Sales Cloud separates Accounts and Contacts from Cases, uses RecordTypeId to vary case page layouts, and stores documents as Salesforce Files rather than inline attachments. The migration carries case records, party associations, document links, and custom matter fields into Salesforce's Case object and related entities. FlitStack AI sequences the migration so parent Accounts and Contacts resolve via lookup before Case records land, preserving original case create dates as custom datetime fields and surfacing billing data as reference-only notes since Salesforce lacks native legal billing. We export workflow definitions as JSON for your admin to rebuild in Salesforce Flow, and we disclose every field that cannot migrate automatically. Additionally, each case type (felony, misdemeanor, juvenile) is assigned its own RecordTypeId, ensuring that page layouts, field-level security, and pick-list values reflect the jurisdiction-specific terminology. Custom matter fields are analyzed for type compatibility and recreated with the __c suffix, preserving pick-list values via value mapping. For documents, FlitStack uploads files to Salesforce Files, linking each to the appropriate Case via ContentDocumentLink, and flags any file exceeding the 25 MB limit for downstream handling.
Every standard and custom field arrives verified.
AI proposes the map; you confirm before any record moves.
Parent–child, lookups, and ownership stay linked.
Calls, emails, meetings — with original timestamps.
Documents, uploads, and inline notes move with the record.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a Criminal Case Management object lands in Salesforce Sales Cloud, 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
Matter / Case
Salesforce Sales Cloud
Case
1:1The criminal case matter record maps directly to Salesforce Case. Original case create date migrates as Original_Case_Date__c custom datetime since Salesforce's CreatedDate reflects migration time. Case number from source becomes Case_Number__c custom field. Additionally, the original case status is stored in a custom field to preserve workflow context, and the case type determines the RecordTypeId for page layout selection.
Criminal Case Management
Client / Party
Salesforce Sales Cloud
Contact + Account
many:1Legal party records (defendants, complainants, witnesses) map to Salesforce Contact. The organization or agency associated with a party maps to Account. When a party is an individual with no organization, they land as Contact only with AccountId set to a default placeholder.
Criminal Case Management
Attorney / Staff Assignment
Salesforce Sales Cloud
CaseTeamMember / User lookup
1:1Attorney assignments on criminal cases map to Salesforce CaseTeamMember records with Role set to the source assignment type (Lead Counsel, Associate, Paralegal). Staff assignments without Salesforce user accounts are stored as Contact roles on the Case. Each CaseTeamMember record includes a User lookup linking to the matched Salesforce User, and the Role picklist values are predefined to match the source types, ensuring consistent reporting across the case team.
Criminal Case Management
Court Date / Hearing
Salesforce Sales Cloud
Event
1:1Scheduled hearings and court dates migrate as Salesforce Events with Subject containing the hearing type, StartDateTime from the source court date, and the associated Case linked via WhatId. Reminder settings are preserved as custom text fields. The Event’s Location field is populated with the courtroom information from the source, and any recurrence patterns for recurring hearings are documented in custom text for manual recreation in Salesforce Calendar.
Criminal Case Management
Document / Attachment
Salesforce Sales Cloud
ContentDocument + ContentDocumentLink
1:1Documents attached to criminal cases download from the source platform and re-upload to Salesforce Files. Each file creates a ContentDocument record linked to the Case via ContentDocumentLink with LinkedEntityId pointing to the Case record. File version history is preserved as custom text notes.
Criminal Case Management
Bond / Bail Information
Salesforce Sales Cloud
Custom object: Bond_Information__c
1:1Criminal case bond details (amount, type, status, court) have no direct Salesforce equivalent. FlitStack creates a Bond_Information__c custom object with lookup to Case, migrating bond amount, bond type pick-list, posting date, and surety as custom fields. The bond status picklist mirrors the source statuses (Posted, Denied, Forfeited), and any surety company information is stored as a text field for reference.
Criminal Case Management
Charge / Offense Record
Salesforce Sales Cloud
Custom object: Charge__c
1:1Criminal charges linked to a case (statute, degree, description, plea, verdict) map to a custom Charge__c object with a master-detail relationship to Case. Charge status (filed, amended, dismissed) maps to a pick-list on the custom object. The statute code is stored as a text field for precise legal reference, and any amended charges retain a history note linking back to the original filing date.
Criminal Case Management
Case Note / Legal Memo
Salesforce Sales Cloud
Note
1:1Case notes and legal memos migrate as Salesforce Notes with Body containing the note content, ParentId linking to the Case record, and Title set from the source note subject or date. Rich-text formatting is preserved where possible. If the source note includes attachments, they are migrated as separate ContentDocumentLink entries linked to the same Case, ensuring all supporting documentation is accessible.
Criminal Case Management
Witness / Informant Record
Salesforce Sales Cloud
Contact
1:1Witness and informant records map to Salesforce Contact objects. Source-specific flags (confidential, testifying) migrate as custom checkboxes. Contact is linked to the relevant Case via Case Contact Role or a custom junction object. Additional contact details such as address, phone, and email are mapped to standard Contact fields, and any role changes during the case lifecycle are tracked via multiple Case Contact Role records to maintain an accurate history.
Criminal Case Management
Workflow / Automation Rules
Salesforce Sales Cloud
N/A
1:1Legal workflow rules (case-stage progression triggers, reminder automation, document generation) do not migrate. FlitStack exports rule definitions as JSON for your admin to reference when building equivalent Salesforce Flows. Workflow logic must be rebuilt in Flow or Process Builder. The exported JSON captures trigger criteria, action steps, and the order of execution, allowing your admin to map each rule to the appropriate Flow element and test thoroughly before activation.
Criminal Case Management
Billing / Trust Account Entry
Salesforce Sales Cloud
Custom fields on Case or Note
1:1Time entries, trust accounting records, and invoices have no Salesforce equivalent. We migrate billing description and totals as read-only custom fields or attached notes for reference. Firms requiring trust accounting must implement a dedicated legal billing solution post-migration and re-enter financial records. Each migrated billing entry records the transaction amount, currency, date, and a description field, preserving the original trust balance history for audit purposes. Firms may later integrate a legal billing platform such as Clio or Aderant to replace these reference fields with native billing records.
| Criminal Case Management | Salesforce Sales Cloud | Compatibility | |
|---|---|---|---|
| Matter / Case | Case1:1 | Fully supported | |
| Client / Party | Contact + Accountmany:1 | Fully supported | |
| Attorney / Staff Assignment | CaseTeamMember / User lookup1:1 | Fully supported | |
| Court Date / Hearing | Event1:1 | Fully supported | |
| Document / Attachment | ContentDocument + ContentDocumentLink1:1 | Fully supported | |
| Bond / Bail Information | Custom object: Bond_Information__c1:1 | Fully supported | |
| Charge / Offense Record | Custom object: Charge__c1:1 | Fully supported | |
| Case Note / Legal Memo | Note1:1 | Fully supported | |
| Witness / Informant Record | Contact1:1 | Fully supported | |
| Workflow / Automation Rules | N/A1:1 | Fully supported | |
| Billing / Trust Account Entry | Custom fields on Case or Note1:1 | Fully supported |
Gotchas + challenges
Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.
Criminal Case Management gotchas
Limited export options for bulk data extraction
Annual subscription billing with prorated cancellation
Custom field schemas vary by account and plan
Document blob extraction may require manual intervention
Salesforce Sales Cloud gotchas
Workflow Rules and Process Builder are retired
Bulk API batch quota exhaustion during large imports
Storage overage billing is non-obvious
Account-Contact many-to-many relationship mapping
Territory and team member import ordering dependencies
Pair-specific challenges
Migration approach
Stand up Salesforce schema first
Before any data moves, your Salesforce admin (or our team) creates the record types, page layouts, and custom fields required for the migration. We deliver a schema setup plan based on your case-type count, custom matter field inventory, and charge structure so the Salesforce side is ready before validation runs. This includes the Bond_Information__c and Charge__c custom objects with their relationships to Case.
Resolve attorneys and staff by email to Salesforce users
Attorney assignments and staff roles on criminal cases are matched to Salesforce Users by email address. Unmatched attorneys are flagged before migration — your team either creates Salesforce User accounts for them first or assigns their case responsibilities to a fallback User. No case record lands without an assigned Salesforce User for the lead attorney. The matching process also captures the attorney’s role type (Lead Counsel, Associate, Paralegal) so the appropriate CaseTeamMember role is set during migration.
Migrate accounts and contacts before cases
Salesforce requires Account records before Contacts (via AccountId) and Contact records before Cases (via Contact roles). We sequence the migration so party organizations become Accounts, individual parties become Contacts linked to those Accounts, then case party roles attach via Case Contact Roles or the custom junction object. Only after this hierarchy resolves do Case records, Charge records, and Bond records land with their foreign keys intact.
Run a sample migration with field-level diff
A representative slice migrates first — typically 100–500 records spanning different case types, charge structures, party roles, and document volumes. We generate a field-level diff between source and destination so you can verify record-type assignment, charge-to-Case linkage, bond record creation, and attorney user resolution before the full run commits. The diff also highlights any missing pick-list values, mismatched data types, and potential data truncation issues, allowing your team to adjust field configurations before the final migration wave.
Cut over with delta-pickup for in-flight records
Full migration runs against Salesforce. A delta-pickup window (typically 24–48 hours) captures any cases modified, new court dates added, or documents uploaded in your source system during cutover. Audit log captures every operation, and one-click rollback is available if reconciliation fails. Document re-upload runs in parallel with record migration to handle the 25MB file-size constraints. During the delta window, any changes to existing records such as status updates, new party associations, or amended charge details are applied to Salesforce, ensuring that the target environment reflects the most current state of your docket at go-live.
Platform deep dives
Criminal Case Management
Source
Strengths
Weaknesses
Salesforce Sales Cloud
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 2 of 8 objects need a mapping; the rest are 1:1.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Criminal Case Management and Salesforce Sales Cloud.
Object compatibility
2 of 8 objects need a mapping; the rest are 1:1.
Field mapping clarity
Field mapping is derived from defaults — final spec confirmed during the sample migration.
Timeline complexity
8-object category — typical timelines run 2–7 days end-to-end.
API constraints
Criminal Case Management: Not publicly documented.
Data volume sensitivity
Criminal Case Management doesn't expose a bulk API — REST + parallelization used for high-volume runs.
Estimator
Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.
Step 1
Pick a category, then your source and destination platforms.
Category
FAQ
Answers to the questions buyers ask most during Criminal Case Management to Salesforce Sales Cloud migration scoping. Not seeing yours? Book a call.
Walk through your Criminal Case Management to Salesforce Sales Cloud migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Criminal Case Management
Other ways to arrive at Salesforce Sales Cloud
Ready when you are
Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.