CRM migration

Migrate from LegalServer to Microsoft Dynamics 365 Sales

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

LegalServer logo

LegalServer

Source

Microsoft Dynamics 365 Sales

Destination

Microsoft Dynamics 365 Sales  logo

Compatibility

100%

12 of 12

objects map 1:1 between LegalServer and Microsoft Dynamics 365 Sales .

Complexity

BStandard

Timeline

3–5 days

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

LegalServer organizes legal aid case data around matters, clients, attorneys, and grant balances — a model that does not map 1:1 to Dynamics 365 Sales. Dynamics 365 stores legal case data as custom tables (Matter, Case) on the Dataverse platform rather than native CRM entities, requiring custom field creation for attorney assignments, billing types, conflict-check flags, and poverty-level assessments. FlitStack AI extracts LegalServer data via paginated v2 API calls (100-record windows), transforms case-status values into Dynamics 365 custom status fields, and loads into custom tables using the Dataverse Web API. Workflows, grant-management billing rules, HotDocs document automation, and contractor voucher logic do not transfer — we export those definitions as reference CSV so your Dynamics 365 admin rebuilds them in Power Automate or Dataverse workflows. Activity logs (communication, timekeeping) map to Dynamics 365 Activities and Notes. Owner resolution runs by attorney email match against Dynamics 365 SystemUser records. A delta-pickup window of 24–48 hours captures any records created or modified during cutover, and audit logs track each operation. One-click rollback reverts the environment if reconciliation fails.

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

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

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

LegalServer

Client / Contact

maps to

Microsoft Dynamics 365 Sales

Contact + Account

1:1
Fully supported

LegalServer client records map directly to Dynamics 365 Contact. The client's primary organization (if any) maps to Account. LegalServer stores client name in first-name/middle-name/last-name/suffix fields; Dynamics 365 Contact follows the same field model with FirstName, MiddleName, LastName, Suffix. Conflict-check status follows the client as a custom field.

LegalServer

Matter (Case)

maps to

Microsoft Dynamics 365 Sales

Custom Matter Table

1:1
Fully supported

LegalServer Matter has no direct Dynamics 365 native equivalent — Dynamics 365 Sales does not include a Case entity. We create a custom Matter table in the Dataverse environment with fields for MatterName, MatterStatus, MatterType, AssignedAttorney (lookup to SystemUser), ConflictCheckStatus, OpenDate, and CloseDate. This table is the core of the legal migration.

LegalServer

Grant Management

maps to

Microsoft Dynamics 365 Sales

Custom Grant Table + Custom Fields on Matter

1:1
Fully supported

LegalServer grant records (with billing types Flat Hourly Rate or Variable Hourly Rate and balance tracking) map to a custom Grant table plus grant-balance and billing-type fields on the Matter table. Dynamics 365 has no native grant-balance deduction model — balance tracking requires custom decimal fields and periodic recalculation logic built in Power Automate post-migration.

LegalServer

Attorney / Staff User

maps to

Microsoft Dynamics 365 Sales

SystemUser

1:1
Fully supported

LegalServer staff user records (attorneys, caseworkers) map by email match to Dynamics 365 SystemUser records. If a LegalServer attorney has no corresponding Dynamics 365 user, their assignments migrate as text fields (LastAssignedAttorney__c) on the Matter record and are flagged for admin review.

LegalServer

Contractor Module

maps to

Microsoft Dynamics 365 Sales

Custom Contractor Table

1:1
Fully supported

LegalServer's Contractor module (outside counsel, panel attorneys) maps to a custom Contractor table in Dynamics 365 with fields for ContractorName, SubjectMatterExpertise (multi-select), LanguagesSpoken, FeeStructure, and ActiveStatus. Work orders and vouchers associated with a matter link via a custom matter-contractor junction table.

LegalServer

Timekeeping

maps to

Microsoft Dynamics 365 Sales

Custom Timekeeping Table + Activity

1:1
Fully supported

LegalServer timekeeping entries (staff hours logged against a matter) map to a custom Timekeeping table with fields for MatterId, StaffUserId, Hours, Date, BillingType, and Rate. Hours entries also generate Dynamics 365 Activities (Task with Type='TimeEntry') for reporting visibility in the Dynamics 365 timeline.

LegalServer

Communication Log

maps to

Microsoft Dynamics 365 Sales

Activity (Email, Phone Call, Note)

1:1
Fully supported

LegalServer communication log entries (emails, calls, letters) map to Dynamics 365 Activity entities — Email for email logs, PhoneCall for call logs, and Note (Annotation) for written correspondence. Original timestamps, direction (inbound/outbound), and associated Contact are preserved. Attachment references on communication logs link to re-uploaded files.

LegalServer

Document / File Attachment

maps to

Microsoft Dynamics 365 Sales

SharePoint / Dataverse Attachments

1:1
Fully supported

LegalServer file attachments (PDFs, scanned documents) attached to matters or clients re-upload to Dynamics 365's connected SharePoint document management (if SharePoint integration is enabled) or as Note (Annotation) attachments in Dataverse. File size limits (default 128MB per file in Dataverse) apply; files exceeding this threshold are flagged for chunked upload.

LegalServer

Outreach

maps to

Microsoft Dynamics 365 Sales

Custom Outreach Table

1:1
Mapping required

LegalServer outreach records (community outreach, intake events) map to a custom Outreach table with fields for OutreachType, OutreachDate, ClientId (lookup to Contact), and Outcome. This captures community engagement data that has no native Dynamics 365 equivalent, including location, participant count, and follow-up actions.

LegalServer

Custom Fields (Matter, Client, Contact, Outreach)

maps to

Microsoft Dynamics 365 Sales

Custom Fields on Respective Tables

1:1
Fully supported

LegalServer administrators create custom fields via Admin > Custom Field Management with types including bool, lookup, lookup_custom, and text. Each custom field maps to a corresponding custom column on the appropriate Dynamics 365 table. Lookup fields require a corresponding custom table or option set in Dynamics 365 to resolve the reference.

LegalServer

Financial Information (Poverty Assessment)

maps to

Microsoft Dynamics 365 Sales

Custom Fields on Contact

1:1
Fully supported

LegalServer financial information fields (used to calculate Percentage of Poverty) map to custom decimal and currency fields on the Contact record: PovertyPercentage__c, AnnualIncome__c, HouseholdSize__c. The original poverty-level assessment result migrates as a pick-list field (PovertyLevel__c) for grant-eligibility reporting in Dynamics 365.

LegalServer

Intake / Prescreen

maps to

Microsoft Dynamics 365 Sales

Custom Intake Table + Lead

1:1
Fully supported

LegalServer intake and prescreen records that did not convert to full matters map to a custom Intake table for audit purposes. Intakes that resulted in opened matters link to the corresponding Matter record. If the intake was rejected or pending, a Dynamics 365 Lead record is created with intake-source attribution for follow-up tracking.

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

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

  • Dynamics 365 Sales has no native Case/Matter entity — legal data requires a custom Dataverse table

    Unlike LegalServer, which builds its entire model around Matters and Cases, Dynamics 365 Sales ships without a Case or Matter entity. All legal case data — matter name, assigned attorney, conflict-check status, billing type, grant balance — must live in a custom Matter table you create in the Dataverse environment. This is not a migration mapping issue; it is a schema design step your Dynamics 365 admin must complete before data lands. FlitStack AI delivers a Matter table schema specification as part of the migration plan. Dynamics 365 Sales Professional limits custom tables to 15, which may constrain a full legal schema; Sales Enterprise at $105/user/month removes this cap and is the recommended target for legal aid migrations.

  • LegalServer v2 API caps at 100 records per page — large caseloads require paginated extraction loops

    LegalServer's Core v2 APIs return a maximum of 100 results per request to prevent server timeouts and standardize load. For organizations managing thousands of matters, this means the export process iterates through cursor-based pagination — each batch fetches 100 records, advances the cursor, and repeats until all records are retrieved. FlitStack AI implements this pagination loop automatically, but the extraction phase for large statewide legal aid datasets (50,000+ records) takes proportionally longer. The Dataverse Web API on the destination side accepts batch operations of up to 1,000 records per request, so the destination write phase is typically faster than the LegalServer read phase.

  • Grant-balance deduction logic is not a Dynamics 365 feature — it requires Power Automate rebuild

    LegalServer's grant management module tracks a running grant balance and deducts hours automatically when timekeepers log time against a Flat Hourly Rate or Variable Hourly Rate billing type. Dynamics 365 Sales has no equivalent — the grant balance field is a static number at the moment of migration. To restore real-time grant-balance deduction, your Dynamics 365 admin must build a Power Automate flow that recalculates and updates GrantBalanceRemaining__c on the Matter record each time a timekeeping entry is created. FlitStack AI exports the current balance snapshot and the billing-type configuration as reference data, but the deduction workflow must be rebuilt.

  • Conflict-check status on both Client and Matter must be preserved as custom fields — no Dynamics 365 equivalent

    LegalServer tracks conflict-check status at both the client level and the matter level as system fields with values (Pass, Fail, Pending, Not Required). Dynamics 365 has no native conflict-check mechanism. FlitStack AI migrates both as custom pick-list fields (ConflictCheckStatus__c) on the Contact and Matter tables respectively. However, Dynamics 365 does not automatically trigger conflict-check workflows — if your organization relies on LegalServer's automated conflict-search against prior matters, that logic must be rebuilt as a Power Automate flow or a plug-in running against the Contact and Matter tables post-migration.

  • Contractor voucher creation and fee-structure logic has no Dynamics 365 native equivalent

    LegalServer's Contractor module lets you create work orders, track fee structures, and generate vouchers for outside-counsel payments — all tied to a specific matter. Dynamics 365 Sales has no native voucher or contractor-fee tracking. FlitStack AI migrates contractor records to a custom Contractor table and creates a custom Voucher table linked to Matter. However, the workflow logic that calculates voucher amounts based on fee structure and hours logged must be rebuilt in Power Automate. Invoice generation for contractor payments can use Dynamics 365's native Invoice entity if you create invoices for outside-counsel billing separately from the standard CRM opportunity-to-cash flow.

Migration approach

Six steps for a successful LegalServer to Microsoft Dynamics 365 Sales data migration

  1. Extract LegalServer data via paginated v2 API

    FlitStack AI connects to your LegalServer instance using API credentials and iterates through paginated v2 API endpoints. Because each request returns a maximum of 100 records, the extraction runs in cursor loops for Matter, Client, Grant, Contractor, Timekeeping, and Outreach objects. We pull all standard fields plus every custom field registered under Admin > Custom Field Management, storing the LegalServer UUID for each record as a Source_System_ID__c field in Dynamics 365 for delta-run de-duplication.

  2. Stand up Dynamics 365 custom table schema

    Before any data loads, your Dynamics 365 admin (or our team) creates the custom tables and fields identified in the migration plan: Matter, Grant, Contractor, Voucher, Timekeeping, and Outreach. We deliver a schema specification listing each custom table, column name, data type, and pick-list option set values so your admin pre-creates the environment. For organizations targeting Sales Professional, we flag whether the 15-table cap is exceeded and recommend Enterprise licensing.

  3. Resolve attorney and staff users by email

    LegalServer staff user IDs (attorneys, caseworkers) are resolved against Dynamics 365 SystemUser records by email match. If a LegalServer user has no corresponding Dynamics 365 user account, their matter assignments are stored in a text fallback field (LastAssignedAttorneyEmail__c) and flagged for admin review. No Matter record lands without an owner assignment — either a resolved SystemUser lookup or a flagged fallback.

  4. Run sample migration with field-level diff

    A representative slice — typically 200–500 records spanning clients, matters, grants, and a few contractors — migrates first. We generate a field-level diff between the LegalServer source values and the Dynamics 365 destination values so you can verify conflict-check status mapping, grant-balance preservation, billing-type value mapping, and poverty-level fields before the full run commits. You approve the diff output before cutover proceeds.

  5. Cut over with delta-pickup for in-flight changes

    Full migration runs against Dynamics 365 using the Dataverse Web API with batch upsert operations (up to 1,000 records per batch). A delta-pickup window of 24–48 hours captures any matters, timekeeping entries, or client records created or modified in LegalServer during the cutover. Audit log records every operation. One-click rollback reverts the Dynamics 365 environment to the pre-migration snapshot if reconciliation fails. Post-migration, we deliver a GrantBalanceSnapshot__c reference file so your admin can configure Power Automate for ongoing grant-balance deduction logic.

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
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. 2 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 Microsoft Dynamics 365 Sales .

  • Object compatibility

    B

    2 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 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 LegalServer to Microsoft Dynamics 365 Sales data migrations

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

Can't find your answer?

Walk through your LegalServer 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 LegalServer-to-Dynamics 365 migrations complete in 3–5 days for under 10,000 matter records. Larger datasets (50,000+ records) extend to 10–15 days due to LegalServer's 100-record-per-page API pagination constraint during extraction. Dynamics 365 bulk writes (up to 1,000 records per batch) are faster on the destination side. The custom table schema setup step is the longest planning phase if your organization is targeting Sales Enterprise for unlimited custom tables.

Adjacent paths

Related migrations to explore

Ready when you are

Move from LegalServer.
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