CRM migration

Migrate from LegalServer to Salesforce Sales Cloud

Field-level mapping, validation, and rollback between LegalServer and Salesforce Sales Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Sales Cloud.

LegalServer logo

LegalServer

Source

Salesforce Sales Cloud

Destination

Salesforce Sales Cloud logo

Compatibility

80%

8 of 10

objects map 1:1 between LegalServer and Salesforce Sales Cloud.

Complexity

BStandard

Timeline

3–6 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

LegalServer organizes data around case management modules: Case Data, Contact, Organization, Timekeeping, and Grant Management. Each case carries a dense set of custom fields capturing client financial information, court details, practice area, and billing type. Salesforce Sales Cloud ships with a sales-focused CRM schema — Account, Contact, Lead, Opportunity, and Case — none of which have native fields for legal case management data. The migration therefore maps LegalServer's case records to a Salesforce Case object augmented with custom fields for every LegalServer property that has no Salesforce standard equivalent. Client contacts route to Salesforce Contacts (or Leads based on intake status), and organizations map to Accounts. Custom fields in LegalServer's Case Data subtable — including poverty percentage, billing type, grant amount, and court information — translate to Case custom fields in Salesforce using the __c suffix naming convention. Salesforce's API (Bulk API for large volumes) accepts the load. Workflows, document templates, grant billing logic, and HotDocs integrations do not migrate — those require manual rebuild using Salesforce Flow, document generation tools, and manual grant-tracking processes. FlitStack AI sequences the migration: LegalServer data extracted via its REST API (paginated at 100 results per call per v2 limits), transformed into Salesforce field formats, then loaded with a delta-pickup window during cutover. Original LegalServer IDs are preserved as Source_System_ID__c on every record for traceability and re-sync capability.

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

LegalServer logo

LegalServer

What's pushing teams away

  • Users consistently describe the interface as visually outdated and clunky — reviewers on Capterra note heavy reliance on dropdown triangles, a dated calendar system, and a layout that does not feel like a modern program.
  • The contact creation workflow has a documented pitfall where using the wrong button to add contacts to a case creates a static contact record instead of a dynamic one, requiring manual cleanup and support intervention.
  • The v2 Core API caps results at 100 records per request with no cursor or offset pagination, which creates slow extraction cycles for organizations with large case histories and limits bulk migration efficiency.

Choosing

Salesforce Sales Cloud logo

Salesforce Sales Cloud

What's pulling them in

  • The AppExchange marketplace with 5,000+ prebuilt apps gives enterprises integrations for nearly every business workflow without custom development.
  • Native Einstein AI for lead scoring, opportunity insights, and predictive forecasting adds intelligence without a separate platform purchase.
  • Territory management, multi-currency support, and advanced forecasting satisfy the needs of complex B2B sales organizations with structured revenue teams.
  • Slack, Tableau, and CPQ are deeply integrated into the core platform, keeping the sales stack unified for teams already in the Salesforce ecosystem.
  • Organizations with a large, established Salesforce implementation choose it because switching costs — integrations, custom code, trained admins — are prohibitive.

Object mapping

How LegalServer objects map to Salesforce Sales Cloud

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

LegalServer

Case Data

maps to

Salesforce Sales Cloud

Case

1:1
Fully supported

LegalServer Case Data maps to Salesforce Case. Salesforce's Case object is the closest structural match for case-record data, but it requires custom fields for every LegalServer property. We create Case custom fields for financial data, court details, practice area, and all Case Data subtable fields. The Case object supports the standard Case Number and Subject fields, with Status and Priority pick-lists controlled by Salesforce admin.

LegalServer

Contact

maps to

Salesforce Sales Cloud

Contact

1:1
Fully supported

LegalServer Contact records map 1:1 to Salesforce Contacts. Name, email, phone, and address fields resolve directly. Contact records linked to a Case in LegalServer are migrated as Salesforce Contacts with a lookup to the related Case record. Primary Contact assignment on a Case uses the Salesforce Case ContactRoles junction object.

LegalServer

Organization

maps to

Salesforce Sales Cloud

Account

1:1
Fully supported

LegalServer Organization records map to Salesforce Accounts. Organization name maps to Account Name; website maps to Account Website. LegalServer organizations with multiple contacts map to one Account with all linked Contact records connected via AccountId lookups. Billing address and shipping address are separate address fields in both systems.

LegalServer

Case Data > Financial Info

maps to

Salesforce Sales Cloud

Case (custom fields)

many:1
Fully supported

LegalServer financial fields (poverty percentage, billing type, grant amount available, grant amount used, total billable hours, total expenses, flat hourly rate, staff assigned date) are merged into custom fields on the Salesforce Case object: Poverty_Percentage__c (percent), Billing_Type__c (picklist), Grant_Amount_Available__c (currency), Grant_Amount_Used__c (currency), Flat_Hourly_Rate__c (currency), Staff_Assigned_Date__c (date). Financial data requires decimal precision preservation.

LegalServer

Case Data > Court / Case Info

maps to

Salesforce Sales Cloud

Case (custom fields)

many:1
Fully supported

Court name, case number, judge name, opposing counsel, and litigation status from LegalServer map to custom fields on the Salesforce Case object: Court_Name__c (text, 80 char), Judge_Name__c (text), Opposing_Counsel__c (text), Litigation_Status__c (picklist). Court_Name__c is capped at 80 characters per Salesforce field limits — values exceeding this are flagged for manual truncation during validation.

LegalServer

Case Data > Practice Area / Case Type

maps to

Salesforce Sales Cloud

Case (custom picklist fields)

1:1
Fully supported

Practice area, case type, and case status from LegalServer use pick-list values. These map to Salesforce custom pick-list fields (Practice_Area__c, Case_Type__c, LegalServer_Case_Status__c) with value-by-value mapping. Any pick-list values in LegalServer that do not have a Salesforce equivalent are added as values during the Salesforce schema setup phase before migration runs.

LegalServer

Case Data > E-Transfer / Linked Records

maps to

Salesforce Sales Cloud

Case (custom fields) + related Contacts

1:1
Fully supported

LegalServer e-transfer records carry information about cases transferred between organizations. We map e-transfer data as custom fields on the Case (Transfer_Status__c, Referring_Organization__c, Transfer_Date__c) and resolve the referring organization to a Salesforce Account record. E-transfer history is preserved as a Salesforce Note attached to the Case record.

LegalServer

Contact > User Profile

maps to

Salesforce Sales Cloud

User

1:1
Fully supported

LegalServer staff contacts who are system users map to Salesforce Users. Matching occurs by email address. Unmatched staff members are flagged before migration — either invited to Salesforce first or assigned to a fallback Salesforce user. LegalServer user roles do not have a Salesforce equivalent and must be re-created as Salesforce Profiles and Permission Sets.

LegalServer

Grant Management

maps to

Salesforce Sales Cloud

Custom Grant object

1:1
Fully supported

LegalServer's grant management module (funding codes, grant balances, deduction logic by billing type) has no Salesforce standard equivalent. We create a Salesforce custom object Grants__c with fields for grant name, balance, billing type, and linked Case records. Grant deduction tracking must be re-implemented as Salesforce Flow triggers or manual processes post-migration.

LegalServer

Timekeeping

maps to

Salesforce Sales Cloud

Custom Timekeeping__c object

1:1
Fully supported

Timekeeping entries (date, hours, billable flag, notes) do not map to any Salesforce standard object. We create a custom Timekeeping__c object with a lookup to Case and a lookup to User. Billable hours from timekeeping are also aggregated into a custom Hours_Billable__c currency field on the Case for reporting continuity.

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.

LegalServer logo

LegalServer gotchas

High

Dynamic vs static contact record split

High

v2 API 100-record hard cap on all result sets

Medium

Custom fields on versioned subtables require exact path mapping

Medium

Grant billing types require pre-migration decision on deduction logic

Salesforce Sales Cloud logo

Salesforce Sales Cloud gotchas

High

Workflow Rules and Process Builder are retired

High

Bulk API batch quota exhaustion during large imports

Medium

Storage overage billing is non-obvious

Medium

Account-Contact many-to-many relationship mapping

Low

Territory and team member import ordering dependencies

Pair-specific challenges

  • LegalServer case data requires Salesforce custom fields — no native legal case management object

    Salesforce's standard Case object is designed for customer service case tracking, not legal aid case management. It has no native fields for poverty percentage, billing type, grant amount, court name, litigation status, or practice area — every one of LegalServer's standard and custom fields on a case record requires a Salesforce custom field with the __c suffix. Organizations must plan for 30–50+ custom fields on the Case object before migration data can land cleanly. FlitStack creates these fields as part of the schema setup phase, but page layout assignment and field-level security configuration for each custom field must be completed by a Salesforce admin before the full migration run.

  • Grant management billing logic has no Salesforce equivalent and must be rebuilt

    LegalServer's grant management module tracks billing type (Flat Hourly Rate vs Variable Hourly Rate), deducts from grant balances automatically as time is recorded, and manages per-grant funding codes. Salesforce has no native grant billing module. The grant balance, deduction calculation, and billing type logic must be rebuilt as Salesforce Flow triggers, custom fields on a Grants__c object, or as manual processes in Salesforce after migration. We preserve the current grant balance and billing type as Case custom fields at migration time, but the ongoing deduction mechanism is not carried over and requires a separate design exercise with your Salesforce admin.

  • LegalServer Core v2 API caps at 100 results per request, requiring pagination for large datasets

    LegalServer's documentation explicitly states that v2 APIs limit results to a maximum of 100 records to prevent timeouts and standardize server load. Any migration pulling more than 100 Case records, 100 Contacts, or 100 Organization records per API call must implement pagination logic to retrieve all data in multiple requests. This affects extraction timeline estimation — a LegalServer site with 50,000 case records requires approximately 500 paginated API calls for cases alone. We handle this automatically, but the API rate and pagination behavior is a structural constraint that adds extraction time and must be accounted for in the migration schedule.

  • Document templates and HotDocs integrations do not migrate

    LegalServer's document management includes HotDocs integration for template-based document generation — courts, letters, and court filings assembled from case data. Salesforce has no native HotDocs equivalent; document generation requires Salesforce Docs, Conga Composer, or a comparable third-party tool. Document templates must be recreated from scratch in the chosen Salesforce document generation tool, mapping Salesforce Case fields into template placeholders. This is a significant manual rebuild effort for organizations that rely heavily on automated document production.

  • LegalServer workflows, processes, and automations are site-level and do not migrate

    LegalServer's site-level processes, forms, and profile configurations (configured by admin, not code) govern case intake workflows, conflict checks, and data-entry validation. These are LegalServer configuration artifacts, not data records. Salesforce Flow handles automation, but there is no direct migration path for LegalServer process definitions. We export a list of configured processes with their field dependencies to serve as a rebuild reference for your Salesforce admin. Any process that triggers on case status change, assigns tasks based on practice area, or validates data on intake must be re-implemented in Flow.

Migration approach

Six steps for a successful LegalServer to Salesforce Sales Cloud data migration

  1. Audit LegalServer site structure and map custom fields to Salesforce

    FlitStack AI inventories every module, custom field, and linked-record type in your LegalServer site. We identify which LegalServer custom fields on the Case Data subtable, Contact module, and Organization module have Salesforce standard equivalents versus which require Salesforce custom fields (with __c suffix). We also catalog grant management configurations, billing types, and e-transfer relationships. This produces a Salesforce schema setup plan that your admin (or our team) implements before any data is loaded — creating the custom fields, pick-list values, and object relationships that the migration will target.

  2. Extract LegalServer data via paginated REST API calls

    We pull LegalServer data through its Core v2 REST API, using email-based authentication. Because v2 limits results to 100 per request, we paginate across all Case, Contact, and Organization records. E-transfer records and linked contact-case associations are extracted as separate API calls. Financial data (grant balances, billing type, poverty percentage) is pulled from the Case Data subtable alongside each case record. LegalServer create dates are captured for preservation as custom datetime fields, since Salesforce's own CreatedDate will reflect migration load time.

  3. Run a sample migration with field-level diff

    A representative slice of case records (typically 50–100) migrates first into a Salesforce sandbox. We generate a field-level diff showing each LegalServer field value alongside its Salesforce destination field value. This validates that poverty percentage lands in Poverty_Percentage__c, billing type maps to the correct pick-list value, court name truncates correctly under the 80-character limit, and Contact-to-Case links resolve via the Source_System_ID__c lookup. Your team reviews the diff and approves before the full run commits.

  4. Execute full migration with delta-pickup and rollback plan

    The full migration loads all Case, Contact, Organization, and linked records into Salesforce Production via Bulk API 2.0 or REST API depending on record volume. A delta-pickup window of 24–48 hours after the initial load captures any records created or modified in LegalServer during the cutover window. An audit log records every operation. If reconciliation fails — missing relationships, pick-list value mismatches, or data truncation — one-click rollback reverts the Salesforce load so the migration can be corrected and re-run without data corruption.

Platform deep dives

Context on both ends of the pair

LegalServer logo

LegalServer

Source

Strengths

  • Built-in grant management tools with billing type deduction logic for funder compliance reporting
  • Highly configurable dynamic processes, forms, and profiles without requiring technical skills
  • Online client intake and prescreen forms with rules-based triage and poverty level assessment
  • Active community support via site administrator listserv and free weekly trainings
  • No licensing fees or third-party app dependencies — fully hosted SaaS model

Weaknesses

  • Interface described as visually outdated with a clunky dropdown-heavy navigation pattern
  • v2 API caps all multi-record results at 100 with no cursor pagination, slowing bulk extraction
  • Dynamic Contact records require a two-step add-to-case workflow that creates friction for intake staff
  • Document templates must be manually recreated on each environment transition (demo to live)
  • No public pricing page — subscription tiers and per-user costs are opaque without a sales conversation
Salesforce Sales Cloud logo

Salesforce Sales Cloud

Destination

Strengths

  • Largest enterprise app ecosystem in CRM with 5,000+ AppExchange integrations covering nearly every vertical workflow.
  • Native Einstein AI delivers lead scoring, opportunity insights, and predictive forecasting without a third-party layer.
  • Advanced territory management, multi-currency, and flexible forecasting satisfy complex B2B revenue structures.
  • Deep platform extensibility: Custom Objects, Apex, Flow, and the Metadata API allow full schema customization.
  • Well-documented REST API, Bulk API, and Composite API with published rate limits for programmatic migration.

Weaknesses

  • Pricing model is layered and opaque in practice: per-seat fees plus storage overages, add-on subscriptions, and annual uplifts compound to 30–40% above sticker price.
  • Workflow Rules and Process Builder are deprecated, forcing all orgs onto Salesforce Flow — a migration task that catches many teams by surprise.
  • Steep administrative complexity: meaningful configuration requires a dedicated Salesforce admin or consultant.
  • API rate limits are edition-gated (100k/day base for Enterprise) and easily exhausted by large historical imports without throttling.
  • Data export is exportable via Data Loader but preserving relationship integrity across 30+ objects requires careful ETL sequencing.

Complexity grading

How hard is this migration?

Standard CRM migration. 3 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 LegalServer and Salesforce Sales Cloud.

  • Object compatibility

    B

    3 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

    LegalServer: Not publicly documented; v2 APIs enforce a 100-result hard cap per request regardless of page size.

  • Data volume sensitivity

    B

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

Estimator

Estimate your LegalServer to Salesforce Sales Cloud 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 LegalServer to Salesforce Sales Cloud data migrations

Answers to the questions buyers ask most during LegalServer to Salesforce Sales Cloud migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your LegalServer to Salesforce Sales Cloud migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most LegalServer migrations complete in 5–8 weeks of clock time for sites under 10,000 case records with fewer than 100 custom fields. Sites with 100+ custom fields, grant management data, or more than 10,000 case records typically require 8–12 weeks. The LegalServer API pagination behavior (100 results per call) and the volume of custom fields requiring Salesforce schema setup are the primary timeline drivers. The delta-pickup window adds 24–48 hours to the cutover.

Adjacent paths

Related migrations to explore

Ready when you are

Move from LegalServer.
Land in Salesforce Sales Cloud, 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