CRM migration

Migrate from Legl to Salesforce Sales Cloud

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

Legl logo

Legl

Source

Salesforce Sales Cloud

Destination

Salesforce Sales Cloud logo

Compatibility

100%

11 of 11

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

Complexity

BStandard

Timeline

48–72 hours

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Legl is a legal operations platform built for law firms: it stores client records (Businesses), risk assessments with PDF outputs, payment histories tied to Stripe, and client due diligence (CDD) workflows for compliance. Salesforce Sales Cloud has no native equivalent for Legl's compliance-specific concepts — CDD stages, risk scores, and risk assessment PDFs have no built-in Salesforce object. The migration carries Legl's structured data into Salesforce Accounts, Contacts, and custom objects while surfacing compliance-specific fields as custom fields on those records. The harder translation problems are Legl's workflow JSON definitions (which cannot map to Salesforce Flow and must be rebuilt manually) and the file-attachment model where risk assessment PDFs need to land as Salesforce Files linked to custom Risk Assessment objects. We handle the API extraction from Legl using their sandbox and production endpoints, load data into Salesforce via the Bulk API respecting both platforms' rate limits, and run a delta-pickup window to capture any Legl records modified during the cutover.

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

Legl logo

Legl

What's pushing teams away

  • UK-centric — international firms outside the SRA/AML UK framework don't get the same out-of-the-box compliance fit.
  • Pricing is published as 'from $50/user/month' (small firms) scaling to $20–30/user/month at enterprise scale per third-party listings, but exact rates require a sales conversation, so smaller firms cannot self-serve.
  • Compliance-tool focus means firms eventually needing full practice management (time, billing, matter management) still need a separate system — Legl is not a full PM replacement.
  • Integration footprint to general legal practice management systems (Clio, Actionstep, Leap) is partner-led rather than published as packaged connectors, requiring API work in some cases.
  • Mid-market positioning leaves both very small (1–5 fee earner) and very large (1,000+ fee earner) firms underserved relative to dedicated alternatives.

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 Legl objects map to Salesforce Sales Cloud

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

Legl

Organisation

maps to

Salesforce Sales Cloud

Account

1:1
Fully supported

Legl's Organisation is the root entity containing firm-wide settings, AML configuration, and compliance rules. We map it to a single Salesforce Account record. The org_id field becomes Source_Org_ID__c for traceability. Settings like AML configuration that have no Salesforce standard equivalent are stored as Org_Settings__c custom long-text area on the Account.

Legl

Business

maps to

Salesforce Sales Cloud

Account + Contact

1:1
Fully supported

Legl Business records represent client law firms or individual clients. The primary contact within each Business maps to a Salesforce Contact linked via AccountId. Additional contacts from the same Business become additional Contact records with the same AccountId. Business-level KYC status (Source_KYC_Status__c), industry, and country fields map to custom fields on the Account.

Legl

RiskAssessment

maps to

Salesforce Sales Cloud

Custom: Risk_Assessment__c + ContentDocumentLink

1:1
Fully supported

RiskAssessment objects carry the assessment type, status, risk_level, risk_score, and a PDF output URL. We create a Risk_Assessment__c custom object in Salesforce with fields for each Legl property. The PDF URL triggers a re-upload as a Salesforce File (ContentVersion), linked to the Risk_Assessment__c record via ContentDocumentLink, preserving the original filename and create timestamp from Legl.

Legl

Payment

maps to

Salesforce Sales Cloud

Custom: Payment__c

1:1
Fully supported

Legl Payment records contain amount, currency, status, and a Stripe checkout_url. We create a Payment__c custom object in Salesforce with Amount__c (currency), Currency__c, Payment_Status__c, Stripe_Reference__c (stored as an external ID for Stripe reconciliation), and Checkout_URL__c. Each Payment__c links to the Account representing the associated Business.

Legl

EngageRequest

maps to

Salesforce Sales Cloud

Custom: Engage_Request__c

1:1
Fully supported

EngageRequests track client due diligence workflows: request type, status, assigned reviewer (Contact), and CDD stage. We create an Engage_Request__c custom object with custom fields for type, status, reviewer (lookup to Contact), CDD stage, and timestamps. The Legl workflow type and status pick-list values are mapped to Salesforce custom picklist value sets.

Legl

Workflow (definition JSON)

maps to

Salesforce Sales Cloud

No direct equivalent

1:1
Fully supported

Legl stores workflow definitions as JSON documents retrieved via the Engage /workflows endpoint, specifying steps, reviewers, and branching conditions. These definitions have no native Salesforce equivalent — Salesforce Flow uses a separate declarative or Apex-based model. We export every Legl workflow definition as a JSON reference document delivered alongside the migration data so your Salesforce admin can rebuild the logic in Flow or Apex.

Legl

User / Reviewer

maps to

Salesforce Sales Cloud

Contact (for external) + User (for internal)

1:1
Fully supported

Legl's reviewer list (Contact-type users) maps to Salesforce Contacts with a custom reviewer flag. If the reviewer is an internal Legl user who will also be a Salesforce user, we match by email to the Salesforce User record and store the link in a custom reviewer lookup on the Engage_Request__c. External-only reviewers remain as Contacts.

Legl

Ongoing Monitoring

maps to

Salesforce Sales Cloud

Custom: Monitoring__c

1:1
Fully supported

Legl's Ongoing Monitoring configuration tracks continuous compliance checks. We map this to a Monitoring__c custom object with fields for the monitoring type, status, and next review date. The object links to the Account representing the monitored Business. The Monitoring__c object also stores the last audit date and a link to the associated compliance report, enabling a complete audit trail within Salesforce.

Legl

BusinessReport / SanctionsReport

maps to

Salesforce Sales Cloud

Custom: Compliance_Report__c

1:1
Fully supported

Legl company and sanctions reports are stored as report objects with status and reference fields. We create a Compliance_Report__c custom object with report type, status, and Legl report ID as an external reference. If the report includes a PDF, it is re-uploaded as a Salesforce File linked to the Compliance_Report__c record.

Legl

File / Attachment

maps to

Salesforce Sales Cloud

ContentVersion + ContentDocumentLink

1:1
Fully supported

Legl file attachments (PDFs, documents) retrieved via the API are re-uploaded to Salesforce as ContentVersion records and linked to the appropriate parent record via ContentDocumentLink. The original filename, mime type, and create date from Legl are preserved in Salesforce File metadata.

Legl

API timestamps (createdate, updatedate)

maps to

Salesforce Sales Cloud

Custom datetime fields

1:1
Fully supported

Legl's original createdate and updatedate timestamps on every object do not map to Salesforce's CreatedDate or LastModifiedDate (both are set at migration time). We preserve all original Legl timestamps as custom datetime fields (e.g., Legl_Created_Date__c) for audit continuity and reporting accuracy.

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.

Legl logo

Legl gotchas

Medium

Beta API endpoints carry schema stability risk

Medium

Sandbox access requires direct support contact

Low

Payment checkout URLs reference external Stripe sessions

Low

AML audit dashboards require real-time data from connected PMS

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

  • Legl's API rate limits restrict migration throughput — Salesforce Bulk API limits add a second constraint

    Legl enforces a sustained limit of 3,600 requests per hour with a burst ceiling of 120 requests per minute. Salesforce's Bulk API caps at 15,000 batches per day with 10,000 records per batch, plus a daily API limit of 100,000 calls (base) plus 1,000 per user license. When both constraints apply simultaneously during a migration, throttling is required on both read (Legl) and write (Salesforce) sides. We instrument exponential back-off between Legl API calls and batch Salesforce inserts to keep both platforms within their limits without duplicating records.

  • Legl has no native Salesforce equivalent for CDD stage, risk score, or KYC status — custom fields are mandatory

    Legl's core compliance model (CDD stage on Contact, risk_level and risk_score on RiskAssessment, and kyc_status on Business) has no direct Salesforce standard-field equivalent. These concepts exist only as custom fields on the Contact, custom Risk_Assessment__c object, and custom fields on Account. We create each required custom field during the schema setup phase before data loads begin. If your Salesforce edition limits the number of custom fields, we surface this in the pre-migration audit and work with your admin to consolidate pick-list values where possible.

  • Legl workflow definitions are JSON documents with no Salesforce Flow mapping path

    Legl stores automation logic as JSON documents retrieved via the GET /workflows endpoint, defining step sequences, assigned reviewers, conditions, and branching logic. Salesforce Flow uses a separate declarative and Apex-based model that cannot consume Legl's JSON schema directly. FlitStack AI does not migrate workflow logic — it exports every Legl workflow definition as a JSON reference file and delivers it alongside the data migration. Your Salesforce admin uses this file as a rebuild specification for Salesforce Flow or Apex triggers.

  • Risk assessment PDF files require re-upload as Salesforce Files — inline attachment limits differ

    Legl's RiskAssessment objects include a pdf_output field containing a URL to a generated PDF document. Salesforce does not store files as URL references — files must be downloaded and re-uploaded as ContentVersion records, then linked via ContentDocumentLink to the corresponding Risk_Assessment__c record. If Legl returns large PDFs or a high volume of assessment files, the total Salesforce file storage allocation (governed by your Salesforce edition) may be affected. We surface storage usage during the pre-migration audit.

  • Legl's sandbox environment uses a separate database — migration testing must target the sandbox, not production

    Legl's sandbox environment uses a separate database — migration testing must target the sandbox, not production. Legl provides a sandbox environment at api.sandbox.legl.com for integration testing, with Stripe test card simulation for payment workflows. All migration testing — field mapping validation, file re-upload, and delta-pickup testing — must use the sandbox environment before production data is touched. FlitStack AI runs the full migration sequence in your Salesforce sandbox first, generates a field-level diff, and only proceeds to production after your sign-off on the sandbox results. We recommend scheduling sandbox testing during off-peak hours to avoid conflicts with other integration work.

Migration approach

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

  1. Extract and audit Legl API schema

    We begin by connecting to your Legl account via API — targeting the sandbox environment first for all schema discovery and mapping work. We enumerate all object types (Organisation, Business, RiskAssessment, Payment, EngageRequest, OngoingMonitoring, ComplianceReport), retrieve field definitions for each, pull sample records, and document the Legl workflow JSON from the /workflows endpoint. We also confirm your Legl API token scope, verify rate limit headers in live responses, and identify any sandbox vs. production data gaps before proceeding.

  2. Create Salesforce custom objects and fields

    Before any data moves, your Salesforce admin (or our team) creates the custom objects and fields required for Legl compliance data: Risk_Assessment__c, Payment__c, Engage_Request__c, Monitoring__c, and Compliance_Report__c. Custom fields on Account (Source_KYC_Status__c, Org_Settings__c), Contact (CDD_Status__c, Onboarding_Stage__c), and all custom pick-list value sets are also created. We deliver a Salesforce schema setup plan based on the Legl object inventory so the destination org is fully configured before field-level mapping is validated.

  3. Load core records in dependency order

    Salesforce requires parent records to exist before child records can reference them via lookup fields. We sequence the migration as follows: Organisation → Account → Contact → Risk_Assessment__c (linked to Account) → Payment__c (linked to Account) → Engage_Request__c (linked to Account and Contact) → Monitoring__c and Compliance_Report__c. Files are downloaded from Legl and re-uploaded as Salesforce Files linked via ContentDocumentLink to their parent custom object records. Owner resolution is done by email matching Legl reviewer IDs to Salesforce User records.

  4. Run sample migration with field-level diff

    A representative slice migrates first — typically 50–200 records per object type spanning the most complex mappings (RiskAssessment with PDF, EngageRequest with reviewer lookup, Payment with Stripe reference). We generate a field-level diff between the Legl source and the Salesforce destination for each sampled record, surfacing any pick-list mismatches, truncated text fields, missing lookups, or file attachment failures before the full run commits. You review and approve the diff before we proceed.

  5. Full migration with delta pickup and rollback

    The full Legl dataset migrates into Salesforce. A delta-pickup window (typically 24–48 hours) captures any Legl records modified during the cutover period so Salesforce reflects Legl's final state at go-live. FlitStack AI maintains a complete audit log of every record written, every file uploaded, and every field transformed. One-click rollback is available if reconciliation reveals unexpected discrepancies. We deliver the Legl workflow JSON as a separate reference document for your Salesforce admin's Flow rebuild.

Platform deep dives

Context on both ends of the pair

Legl logo

Legl

Source

Strengths

  • Purpose-built for law firm client onboarding and AML compliance workflows
  • ISO 27001:2013 certified platform with documented information security controls
  • Well-structured REST API with OpenAPI spec and browsable HTML interface
  • Rate limits are generous at 3600 req/hour with a sandbox environment for integration testing
  • Connects natively with major legal PMS platforms including Clio, Actionstep, Proclaim, and P4W

Weaknesses

  • Legl functions as an overlay/orchestration layer rather than a full practice management system
  • No public pricing published — sales-led engagement required to obtain tier details
  • Zero reviews on G2 and no presence on Capterra makes independent evaluation difficult
  • Beta API endpoints for RiskAssessments may change schema without advance notice
  • Historical transaction journals and matter narrative content are not exposed via API — reside in connected PMS
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. 1 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 Legl and Salesforce Sales Cloud.

  • Object compatibility

    B

    1 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

    Legl: 3600 requests per hour sustained, burst rate of 120 requests per minute.

  • Data volume sensitivity

    B

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

Estimator

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

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

Can't find your answer?

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

Book a free 30 minute consultation

Most Legl-to-Salesforce migrations complete in 48–72 hours of clock time for datasets under 5,000 total records across all object types. Sets exceeding 20,000 records or with complex custom objects, PDF file re-uploads, and per-reviewer task creation extend the timeline to 5–10 days. The longest planning step is mapping Legl's compliance fields (CDD stage, risk score, KYC status) to Salesforce custom fields and validating pick-list value sets before data loads begin.

Adjacent paths

Related migrations to explore

Ready when you are

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