CRM migration
Field-level mapping, validation, and rollback between Clarra and Microsoft Dynamics 365 Sales . We move data and schema; workflows are rebuilt natively in Microsoft Dynamics 365 Sales .
Clarra
Source
Microsoft Dynamics 365 Sales
Destination
Compatibility
12 of 12
objects map 1:1 between Clarra and Microsoft Dynamics 365 Sales .
Complexity
BStandard
Timeline
5–10 business days
Overview
Clarra structures its data around cases, clients, matter records, documents, and billing line items tied to practice areas. Dynamics 365 Sales models the same business in Account, Contact, Opportunity, Lead, and Case tables on Dataverse — each with its own schema, ownership model, and relationship constraints. We extract Clarra data via its documented REST API, map every standard and custom field to the closest Dynamics 365 table or custom table, and load through the Dataverse Web API using upsert logic keyed on source-system IDs. Cases become Cases or custom matter tables depending on your pipeline definition. Client records become Accounts. Contact persons on cases become Contacts with a parent AccountId. Documents are preserved as SharePoint-integrated Notes or as file annotations on the target record. Owner resolution uses email matching against Dynamics 365 users. We do not migrate workflow rules, billing logic, or template configurations — those are source-platform constructs that must be rebuilt using Dynamics 365 workflows, Power Automate, or plug-ins. The migration runs in three phases: extract-and-cleanse, custom-table provisioning in your Dynamics environment, then parallel-load with delta-pickup before cutover. Typical timelines range from 5 days for sub-10,000-record migrations to 3 weeks for setups requiring multiple custom tables and value-mapping on pick-list fields.
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.
Source platform
Clarra platform overview
Scorecard, SWOT, gotchas, and pricing for Clarra.
Destination platform
Microsoft Dynamics 365 Sales platform overview
Scorecard, SWOT, gotchas, and pricing for Microsoft Dynamics 365 Sales .
Data migration guide
The complete Microsoft Dynamics 365 Sales migration guide
Data model, import mechanisms, field mapping strategy, pitfalls, and cutover — by the engineers running it.
Destination checklist
Microsoft Dynamics 365 Sales migration checklist
Pre- and post-cutover tasks for moving onto Microsoft Dynamics 365 Sales .
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a Clarra 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.
Clarra
Case / Matter
Microsoft Dynamics 365 Sales
Case (Incident) or Custom Matter Table
1:1If Clarra cases map directly to Dynamics 365 Cases (Incidents), we use the built-in Case table. If your practice has multiple matter types with distinct custom fields per type, we provision a custom matter table in Dataverse and map case records there. The choice depends on whether your Clarra cases share a uniform schema or vary by practice area.
Clarra
Client (Organization)
Microsoft Dynamics 365 Sales
Account
1:1Clarra client records — company name, address, industry, phone, website — map 1:1 to Dynamics 365 Account fields. Primary address and billing address on the Clarra client become Address fields on the Account. We preserve the Clarra client ID as a custom field for traceability.
Clarra
Contact (Person on Matter)
Microsoft Dynamics 365 Sales
Contact
1:1Individual contacts from Clarra — name, email, phone, role on matter — migrate as Dynamics 365 Contacts. The Contact.AccountId lookup is populated from the mapped Account record. Role labels from Clarra (e.g., Opposing Counsel, Client Representative) are stored as a custom option-set field on the Contact or as a custom relationship table.
Clarra
Document / File Attachment
Microsoft Dynamics 365 Sales
SharePoint Document Location + Note / Annotation
1:1Clarra documents attached to cases are downloaded and re-hosted in the SharePoint document library tied to the Dynamics Account or Case. In Dynamics, we create a SharePoint Document Location record pointing to the library and attach the file to the related Case or Account. File size limits (default 10 MB per note, 2 GB in SharePoint) apply.
Clarra
Event / Appointment / Deadline
Microsoft Dynamics 365 Sales
Appointment (Activity) or Task
1:1Calendar events, court deadlines, and appointments from Clarra migrate as Dynamics 365 Appointment records. Original start/end times and the assigned-user owner are preserved. Recurring deadlines are expanded into individual Appointment records unless Power Automate is set up to recreate the recurrence logic.
Clarra
Task / To-Do Item
Microsoft Dynamics 365 Sales
Task (Activity)
1:1Clarra task records with a due date and assignee map to Dynamics 365 Task. Status (Open, Completed) maps to the Task State option-set. We preserve the original create date as a custom datetime field since Dynamics 365 sets CreatedOn at migration time.
Clarra
Custom Property (Clarra-specific field)
Microsoft Dynamics 365 Sales
Custom Column on Target Table
1:1Any Clarra custom property that has no built-in Dynamics 365 equivalent (e.g., practice area classification, litigation phase, judge assignment) is provisioned as a custom column in Dataverse using the new_ prefix. We surface these in the pre-migration schema plan so your Dynamics admin can publish them in a solution before data loads.
Clarra
Billing Line Item / Time Entry
Microsoft Dynamics 365 Sales
Invoice (Dynamics 365 Sales) or Custom Billing Table
1:1Clarra billing line items and time entries do not have a native Dynamics 365 Sales equivalent — Sales can generate Quotes and Orders but billing history requires D365 Business Central. We preserve billing records as a custom billing table on the Account or Case for historical reference and recommend rebuilding active billing workflows in Business Central post-migration.
Clarra
Owner / Assigned User
Microsoft Dynamics 365 Sales
OwnerId (User lookup on target table)
1:1Clarra assigns matters and tasks to users by email address. We resolve each email against Dynamics 365 users and populate the OwnerId lookup. Unmatched owners are flagged before migration — you either invite them to Dynamics 365 first or reassign their records to a fallback owner during load.
Clarra
Clarra Case ID / Internal Reference
Microsoft Dynamics 365 Sales
Custom External ID Column on Case
1:1The original Clarra case identifier is stored as a custom text field (e.g., clarra_case_id) on the Dynamics Case or custom matter table. This field serves as the upsert key for delta-run de-duplication so the same record is not created twice if the migration is re-run.
Clarra
Matter Status (Active / Closed / Archived)
Microsoft Dynamics 365 Sales
Case Status (Active / Resolved / Closed) or custom Status field
1:1Clarra matter status values map to Dynamics Case status option-set values via a value map. Archived matters may be migrated as closed Cases with a custom Archive_Date__c field rather than creating a separate archived state, depending on your reporting needs.
Clarra
Practice Area / Matter Type
Microsoft Dynamics 365 Sales
Custom Option Set on Case
1:1Clarra practice area classifications (e.g., Litigation, Corporate, IP) migrate as a Dynamics 365 custom option-set field on the Case table. Each distinct Clarra practice area value is mapped to a corresponding option label. If you have more than 300 distinct values, we discuss splitting into multiple option sets or using a lookup table instead.
| Clarra | Microsoft Dynamics 365 Sales | Compatibility | |
|---|---|---|---|
| Case / Matter | Case (Incident) or Custom Matter Table1:1 | Fully supported | |
| Client (Organization) | Account1:1 | Fully supported | |
| Contact (Person on Matter) | Contact1:1 | Fully supported | |
| Document / File Attachment | SharePoint Document Location + Note / Annotation1:1 | Fully supported | |
| Event / Appointment / Deadline | Appointment (Activity) or Task1:1 | Fully supported | |
| Task / To-Do Item | Task (Activity)1:1 | Fully supported | |
| Custom Property (Clarra-specific field) | Custom Column on Target Table1:1 | Fully supported | |
| Billing Line Item / Time Entry | Invoice (Dynamics 365 Sales) or Custom Billing Table1:1 | Fully supported | |
| Owner / Assigned User | OwnerId (User lookup on target table)1:1 | Fully supported | |
| Clarra Case ID / Internal Reference | Custom External ID Column on Case1:1 | Fully supported | |
| Matter Status (Active / Closed / Archived) | Case Status (Active / Resolved / Closed) or custom Status field1:1 | Fully supported | |
| Practice Area / Matter Type | Custom Option Set on Case1: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.
Clarra gotchas
No publicly documented API rate limits
Report configurations do not migrate
Custom field schema varies by firm
Document binary storage handled separately from metadata
Microsoft Dynamics 365 Sales gotchas
Professional tier 15-table custom table limit blocks migrations
October 2024 pricing increase applies at renewal for all customers
Custom fields must be created in the UI before API writes
Power Platform request limits apply to bulk migrations
Activity records orphaned to inactive owners fail silently
Pair-specific challenges
Migration approach
Discover Clarra schema and map to Dataverse entity model
We export a full Clarra schema snapshot — all standard and custom fields across Cases, Clients, Contacts, Activities, and Documents — using the Clarra REST API. We cross-reference this against your target Dynamics 365 environment's table list (from Power Apps > Tables) to identify gaps. Any Clarra custom property without a Dataverse equivalent is flagged as requiring a new custom column. We also capture pick-list value sets for value-mapping later. The output is a Schema Gap Report delivered within 48 hours of access being granted.
Provision Dynamics 365 custom tables and columns
Before any data moves, your Dynamics admin (or our team acting in your environment) creates the custom tables, custom columns, and option sets identified in the Schema Gap Report. We deliver a Dataverse solution file (managed solution zip) containing all new components so they can be imported in one step. If you hold a Sales Professional license, we verify that the total custom table count stays within the 15-table ceiling or discuss upgrading to Enterprise before proceeding. Publishing the solution typically takes 1–2 hours; the publish action is the green-light for data load.
Resolve Clarra users to Dynamics 365 owners by email
We extract the full Clarra user roster and match each email address against your Dynamics 365 user list via the Dataverse WhoAmI endpoint. Matched users get their OwnerId populated directly. Unmatched users are written to an Owner-Resolution Report — you decide whether to invite them to Dynamics 365 before migration or reassign their records to a fallback owner. No record loads without a resolved OwnerId; this prevents orphaned records in Dynamics post-migration.
Run sample migration with field-level diff on 50–100 records
A representative slice of Clarra data — typically 50–100 records covering at least one Case, Client, Contact, Task, and Appointment — is migrated to your Dynamics 365 sandbox environment first. We generate a field-level diff comparing source values against destination field values. You verify that pick-list value mappings are correct, custom fields populated as expected, and owner resolution working across the sample. We address any mapping corrections before the full run is scheduled. This step prevents discovering field-mapping errors after 20,000 records have already loaded.
Execute full migration with delta-pickup window
The full Clarra dataset loads into Dynamics 365 via the Dataverse Web API using upsert semantics (upsertkey = clarra_id custom field). Accounts and Clients load first, then Contacts (requiring AccountId), then Cases, then Activities. A delta-pickup window opens at the point of final cutover — typically 24–48 hours — capturing any Clarra records created or modified during the load. An audit log records every upsert operation. One-click rollback reverts all changes if reconciliation identifies data integrity issues. After rollback, a corrected load is run from the delta snapshot.
Platform deep dives
Clarra
Source
Strengths
Weaknesses
Microsoft Dynamics 365 Sales
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 1 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 Clarra and Microsoft Dynamics 365 Sales .
Object compatibility
1 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
Clarra: Not publicly documented.
Data volume sensitivity
Clarra 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 Clarra to Microsoft Dynamics 365 Sales migration scoping. Not seeing yours? Book a call.
Walk through your Clarra to Microsoft Dynamics 365 Sales migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Clarra
Other ways to arrive at Microsoft Dynamics 365 Sales
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.