CRM migration
Field-level mapping, validation, and rollback between MyCase and Freshsales. We move data and schema; workflows are rebuilt natively in Freshsales.
MyCase
Source
Freshsales
Destination
Compatibility
11 of 12
objects map 1:1 between MyCase and Freshsales.
Complexity
BStandard
Timeline
48–72 hours
Overview
MyCase organizes legal practice data around clients and matters with a built-in billing engine, time tracking, IOLTA accounting, and a client portal. Freshsales is a sales-focused CRM with Leads, Contacts, Accounts, Deals, and activity tracking but no native legal billing or matter management. FlitStack AI migrates all standard objects — clients, matters, tasks, calendar events, documents, and time entries — converting MyCase's flat client model into Freshsales's separate Leads and Contacts based on whether a client has open matters or recent activity. Matters become Deals, with case type stored as a custom field and stage derived from MyCase status values. Tasks and calendar events map to Freshsales Tasks and Events with original timestamps and owners. Time entries migrate as Notes with billable hours and rates preserved in custom fields. MyCase custom fields and custom objects carry over as Freshsales custom fields and custom objects. User assignments resolve by email match to Freshsales users. Documents re-upload to Freshsales Files with original names and association to the linked contact or deal. After migration, firms need to rebuild MyCase billing workflows, client portal configurations, document templates, and e-signature setup in Freshsales or a companion tool. FlitStack sequences the migration using MyCase's API export and Freshsales's bulk import API, respecting MyCase's 25 requests-per-second limit and Freshsales's plan-tier rate ceiling.
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 MyCase object lands in Freshsales, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
MyCase
Client
Freshsales
Contact / Lead
1:manyMyCase Clients have no separate lead/contact distinction — they are all people with an optional role. FlitStack routes MyCase Clients with open or recently closed matters to Freshsales Contacts; inactive clients with no matters in the past 12 months route to Freshsales Leads. Role data (Attorney, Billing Contact, etc.) stored as a custom pick-list field on both Contact and Lead.
MyCase
Client Address
Freshsales
Contact Address Fields
1:1MyCase stores primary and billing addresses per client. All address fields including street address, city, state, zip code, and country map directly to Freshsales Contact address fields. When clients have multiple addresses, they are associated using Freshsales Contact's address type indicator to distinguish between billing and shipping locations.
MyCase
Company
Freshsales
Account
1:1MyCase Companies map 1:1 to Freshsales Accounts. Company name maps to Account Name; domain maps to Website; industry maps to Industry pick-list. Multi-contact relationships in MyCase collapse to the primary AccountId on each Contact in Freshsales, with additional contacts added via the Account Contact Relationships model.
MyCase
Matter (Case)
Freshsales
Deal
1:1MyCase Matters map to Freshsales Deals. Matter name becomes Deal Name; amount maps to Deal Amount if billable; status maps to Freshsales stage via value mapping. Case type (Family Law, Criminal Defense, Personal Injury, etc.) migrates as a custom field since Freshsales has no native matter-type concept. Responsible attorney and paralegal assignments map to Freshsales Deal Owner.
MyCase
Matter Custom Fields
Freshsales
Deal Custom Fields
1:1Any custom fields on MyCase Matters — such as Court Name, Case Number, Judge Assigned, or Insurance Carrier — create matching custom fields on Freshsales Deals. Data types are preserved: text to text, date to date, pick-list to pick-list. FlitStack audits the full MyCase field list before migration to identify every custom field that needs a destination counterpart.
MyCase
Task
Freshsales
Task
1:1MyCase Tasks map to Freshsales Tasks. Subject maps to Task Subject; description maps to Task Description; due date maps to Due Date; status (Open, Completed) maps to Freshsales Task Status. Parent record links (task belongs to a client and matter) are preserved as Freshsales ContactId and DealId lookups on the Task record.
MyCase
Calendar Event
Freshsales
Event
1:1MyCase calendar events map to Freshsales Events. Event title, start time, end time, event type, and visibility (firm-wide or matter-specific) all transfer. Events linked to a matter in MyCase link to the corresponding Freshsales Deal via DealId. Events without a matter association link to the primary Contact.
MyCase
Time Entry
Freshsales
Note (with custom fields)
1:1MyCase time entries (hours worked, billable rate, date, description, and associated attorney) cannot map to a native Freshsales object. FlitStack creates a Note on the corresponding Deal with hours, rate, and billable flag stored as custom fields on the Note. This preserves all time-tracking data for billing reconstruction in Freshsales or a linked accounting tool.
MyCase
Document / File
Freshsales
Freshsales Files
1:1MyCase Drive files re-upload to Freshsales Files and are linked to the corresponding Contact or Deal record. Original file names and upload dates are preserved. MyCase's Drive folder hierarchy does not map to Freshsales native folders — the migration engineer produces a folder mapping plan and optionally stores the original Drive path as a custom field on each file.
MyCase
Billing / Invoice
Freshsales
Note + Custom Fields (on Account)
1:1MyCase invoices, trust account balances, IOLTA tracking, and flat-fee billing rules have no native Freshsales equivalent. FlitStack preserves invoice totals, payment status, and outstanding balance as custom fields on the linked Account record. Firms must rebuild billing workflows and payment collection in Freshsales or a connected legal accounting tool.
MyCase
Client Portal Access
Freshsales
Custom Field
1:1MyCase's client portal gives clients access to case updates, documents, and invoices. Freshsales has no built-in client portal — portal access status is stored as a custom field on the Contact record as a reference flag. Firms needing a client portal in Freshsales should evaluate Freshworks Freshdesk or a third-party integration.
MyCase
User / Staff
Freshsales
User
1:1MyCase users and staff map to Freshsales Users by email address match. Unmatched users are flagged before migration — firms either invite them to Freshsales first or assign their records to a designated fallback owner. MyCase role-based permissions (Attorney, Paralegal, Admin) are stored as a custom field on the Freshsales User record.
| MyCase | Freshsales | Compatibility | |
|---|---|---|---|
| Client | Contact / Lead1:many | Fully supported | |
| Client Address | Contact Address Fields1:1 | Fully supported | |
| Company | Account1:1 | Fully supported | |
| Matter (Case) | Deal1:1 | Fully supported | |
| Matter Custom Fields | Deal Custom Fields1:1 | Fully supported | |
| Task | Task1:1 | Fully supported | |
| Calendar Event | Event1:1 | Fully supported | |
| Time Entry | Note (with custom fields)1:1 | Fully supported | |
| Document / File | Freshsales Files1:1 | Fully supported | |
| Billing / Invoice | Note + Custom Fields (on Account)1:1 | Fully supported | |
| Client Portal Access | Custom Field1:1 | Fully supported | |
| User / Staff | User1: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.
MyCase gotchas
QuickBooks sync is strictly one-directional
Advanced API access is tier-gated
Document migration requires offline file transfer
Bulk rate updates on historical time entries are not supported
Freshsales gotchas
Freddy AI is Pro-tier only despite heavy marketing
Post-migration emails and sequences are disabled
Bot session credits are a one-time 500-session allocation
Phone credits charged per minute with no cap
File storage limits scale with plan tier
Pair-specific challenges
Migration approach
Audit MyCase data and prepare Freshsales schema
FlitStack reviews the MyCase account structure — listing all client fields, matter fields, custom fields, matter types, billing types, and document counts. The migration engineer identifies every MyCase custom field that requires a Freshsales custom field counterpart and creates a mapping specification. On the Freshsales side, custom fields are created in advance so the migration validation runs against the complete target schema. Firms receive a schema preparation checklist so Freshsales administrators can pre-create fields before the first data load.
Resolve user and attorney assignments by email
MyCase user accounts and attorney assignments are matched against Freshsales users by email address. Unmatched users — staff members who have not yet been invited to Freshsales — are flagged in a pre-migration report. Firms either invite those users to Freshsales before the migration run or designate a fallback owner (a senior attorney or admin) for records belonging to unmatched staff. No record lands in Freshsales without an owner; unresolved assignments do not silently drop records.
Migrate Accounts, Contacts, and Leads before Deals
Freshsales requires Accounts to exist before Contacts can link to them (via the AccountId lookup), and Contacts or Leads to exist before Deals can reference them via Contact Roles or Deal Contact relationships. FlitStack sequences the migration in the correct dependency order: MyCase Companies first → Freshsales Accounts; then MyCase Clients (split into Contacts and Leads) with AccountId resolution; then MyCase Matters → Freshsales Deals with stage mapping and case-type custom field population. This sequence ensures foreign key integrity and prevents orphaned deal records.
Run a sample migration with field-level diff
A representative sample — typically 100 to 300 records spanning clients, matters, tasks, events, and a subset of documents — migrates first. FlitStack generates a field-level diff showing every source field value and its destination counterpart. The firm reviews the diff to verify client-to-contact routing, case-type custom field population, attorney owner resolution, and time entry placement. Sample approval is required before the full run commits. Any mapping adjustments are made to the migration specification before the next phase.
Execute full migration with delta-pickup window
The full record set migrates after sample approval. A delta-pickup window — typically 24 to 48 hours — captures any MyCase records created or modified during the migration run. Audit logs record every operation (create, update, link) with timestamps and operator. One-click rollback is available if the reconciliation check reveals missing records, incorrect field values, or duplicate contacts. After rollback validation, the firm transitions to Freshsales as the production CRM and the MyCase account is decommissioned per the firm's retention policy.
Post-migration: rebuild billing, document workflows, and client portal
After data lands in Freshsales, FlitStack delivers a rebuild reference package covering MyCase billing workflows, client portal configurations, document templates, and e-signature setup. Firms use this package to reconstruct billing rules in Freshsales (or a connected accounting tool), restore document folder logic via a custom object, and configure Freshsales workflows for task automation. FlitStack does not migrate workflow definitions but provides the structured reference needed for an accurate rebuild.
Platform deep dives
MyCase
Source
Strengths
Weaknesses
Freshsales
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 MyCase and Freshsales.
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
MyCase: 25 requests per second per client.
Data volume sensitivity
MyCase 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 MyCase to Freshsales migration scoping. Not seeing yours? Book a call.
Walk through your MyCase to Freshsales migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave MyCase
Other ways to arrive at Freshsales
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.