Litify · Legal Operations · Salesforce

Custom Litify Solutions For Law Firms: The 12 Customizations That Decide Whether The Platform Works

Litify installs in an afternoon. Whether your attorneys still use it in eighteen months is decided by twelve design choices made long before go-live. This guide names all twelve, marks which are configuration and which need code, and gives you the boundary rule that keeps a Litify build maintainable.

12+
Years Salesforce delivery
500+
Clients served globally
40+
Consultants & architects
6–10
Weeks, focused build
ONE SALESFORCE ORG LAYER 01 — LITIFY MANAGED PACKAGE Intakes Matters Documents Time & Billing LAYER 02 — CONFIGURATION & CUSTOM BUILD Intake & conflicts Routing · scoring · gates Matter lifecycle Stages · liens · settlement Billing & trust Rates · draws · ledger CONFIGURED FIRST · CODE ONLY WHERE IT IS EARNED LAYER 03 — WHAT THE FIRM ACTUALLY GETS Matters open in hours Invoices from tracked work Partner view
Where we sit in this: Twopir Consulting is a Salesforce Partner and a Litify implementation partner. We also implement Mitratech CaseCloud and build legal operations directly on core Salesforce, so we have more than one honest answer available — and we will tell you when Litify is not the right platform for your firm. Litify is an independent company, not a Salesforce product; Salesforce is the platform it is built on.
The Short Answer

What Is Litify Customization?

Litify customization is the work of shaping Litify around one firm's intake-to-invoice process rather than running the package as it installs. It splits into two tiers: configuration, built with declarative tooling — record types, matter stages, intake forms, document templates, validation rules, Salesforce Flow, reports and dashboards — and custom development, built with Apex, Lightning Web Components, API callouts and scheduled jobs when declarative tooling cannot express the requirement. The two carry different costs, timelines and upgrade obligations, so they belong in separate line items on a scope of work.

Key Findings

  • Litify is a legal operating platform built natively on Salesforce — intake, matters, documents, timekeeping, billing and analytics inside a firm's own Salesforce org rather than beside it as a separate system.
  • The platform's strength and its cost are the same thing. Independent reviewers rate it highly for deep customization and enterprise-grade configurability, and in the same breath note that onboarding is lengthy and that implementation is a large undertaking.
  • Twelve areas account for nearly every Litify build that gets adopted or abandoned. Nine are reachable with configuration. Three usually need custom development.
  • The boundary rule is simple: if Flow, validation rules, record types, layouts or reports can do it, it is configuration. Once it needs Apex, an LWC, an external API call or a scheduled job, it is custom development — and a regression-testing commitment at every release.
  • The most common failure is not a missing feature. It is running several practice areas through one generic matter stage model, which makes the firm's own reporting unusable within a few quarters.
  • A focused implementation covering matter management, intake automation, billing setup and baseline reporting typically runs 6 to 10 weeks. Data migration quality, not build complexity, is the usual cause of slippage.

Most firms that call us about Litify do not have a software problem. They have a systems design problem — matter data in the wrong place, intake done by hand, billing assembled from notes. Litify solves all of it, but only when it is designed correctly before the first record type exists.

That gap between "installed" and "designed" is what this article is about. Below are the twelve areas where a Litify build either matches how your firm actually operates or quietly starts drifting from it — with the fix for each, and an honest marker for which ones justify writing code.

Section 01 · The Case

Why Law Firms Need Custom Litify Work At All

Every packaged legal practice management platform ships a default model of how a law firm operates. Firms differ most in exactly the places that decide revenue: qualification criteria, matter lifecycle, fee structures, referral relationships and financial controls. Law firm software customization is not a defect in the product, then — it is the work that makes a general platform match one firm's operating model.

The independent evidence says the same thing from both directions. A 2026 review of the platform describes Litify as standing out for deep customization, Salesforce-powered reliability and strong reporting, and recommends it for firms that want to tailor workflows and scale — while listing lengthy onboarding and higher pricing among its drawbacks. On Capterra, where Litify holds a 4.4 rating across 138 verified reviews, one COO's review praises it as a powerful tool that can be customized and then lists, as the single downside, how much of the system must be customized — specifically around integrations with accounting and document management systems.

Custom Litify work pays for itself when you run more than one practice area, handle plaintiff matters with settlement and lien mechanics, operate across multiple offices or entities, need marketing spend tied to signed matters, or already carry a Salesforce org with business development data in it that the matter side has to respect.

Think carefully before you start if you have no configuration budget, no technical support of any kind, or a single straightforward practice with low matter volume. Litify rewards design and punishes its absence — independent reviews name solo practitioners, small firms and firms without IT support as poor fits precisely because the setup effort outweighs the return at that size.

Section 02 · The Boundary

Configuration Or Custom Code? The Rule That Decides

Every custom line of code is a maintenance commitment at the next release. That single fact should govern the shape of your build — and it is the question to ask a prospective partner before you ask about price.

The boundary in one line

If it can be built with Litify configuration, Salesforce Flow, validation rules, record types, page layouts or reports, it is configuration. Once it needs Apex, Lightning Web Components, external API calls or a scheduled job, it is custom development — different skills, different testing, and a regression commitment at every Litify and Salesforce release.

Tier 1 — Configuration

Declarative · upgrade-safe
  • Record types and page layouts
  • Matter stages and validation gates
  • Intake forms and qualification logic
  • Document templates and folder models
  • Salesforce Flow automation
  • Reports, dashboards and sharing rules

Tier 2 — Custom Development

Coded · regression-tested each release
  • Apex classes and triggers
  • Lightning Web Components
  • API callouts across the org boundary
  • Scheduled and batch jobs
  • Complex multi-system reconciliation
  • Anything a supported feature already does — don't

Configure first; write code only where configuration genuinely cannot reach. Most of what a firm wants from Litify turns out to be case management configuration rather than engineering — and a partner who cannot tell you which tier a requirement falls into, and price the two differently, is guessing at your maintenance bill as well as your build cost.

Section 03 · The List

The 12 Custom Litify Solutions Law Firms Actually Need

Each item below names what standard configuration leaves on the table, and what a firm-specific build puts in its place. Together they cover the legal workflow automation a firm actually runs on — from first contact through to a reconciled invoice. The tag on each marks the tier: Configure means declarative tooling reaches it; Build on means it normally needs Apex, a component or an integration.

01

Practice-area intake forms and qualification logic

ConfigureFastest ROI

Litify ships dynamic intake questionnaires that jump to the next relevant question. The customization is deciding what "relevant" means for each of your practice areas — because a motor vehicle inquiry, a medical malpractice inquiry and a corporate engagement have nothing in common at the qualification stage.

What breaks by default
  • One generic form collecting fields nobody uses
  • Intake staff qualifying from memory, inconsistently
  • Non-viable matters reaching an attorney's desk
  • No scoring, so follow-up order is arbitrary
What we build
  • A separate intake path and field set per practice area
  • Qualification criteria encoded as logic, not training
  • Routing, ownership and follow-up SLA clocks
  • Statute-of-limitation flags surfaced at first contact
02

Conflict checks that fire at contact creation

ConfigureBuild onCompliance

A conflict check that depends on someone remembering to run it is not a control. The customization makes the search automatic, makes it fuzzy enough to catch spelling variants, and makes it block progression rather than produce a warning everybody clicks through.

What breaks by default
  • Exact-match searching that misses name variants
  • Adverse parties and carriers outside the search scope
  • No audit record of when a check was run, or by whom
What we build
  • Automatic search on contact and intake creation
  • Fuzzy matching across parties, adverse parties and carriers
  • A blocking gate before an intake can convert to a matter
  • A timestamped audit trail your bar compliance can stand on
03

Matter record types, stages and milestone gates

ConfigureMost common failure

This is the single decision that shapes everything downstream, and the one most often rushed. Litify's Matter Plans give you templatized, configurable task lists per practice area and case type — but only if someone has modelled what those stages are for your firm first.

What breaks by default
  • One stage model forced across every practice area
  • "In progress" covering nine months of real work
  • Matters advancing without required documents or approvals
  • Ageing reports that cannot distinguish stalled from slow
What we build
  • Record types and stage models per practice area
  • Validation gates: no advance without the required data
  • Milestone and deadline rules tied to matter type
  • Task orchestration across attorneys and support staff
04

Settlement, lien and disbursement tracking

ConfigureBuild onPlaintiff

The plaintiff-side workflow generic CRM configuration never covers: what the case settled for, who has a claim on it, and what actually reaches the client. Every firm structures fee splits and lien negotiation slightly differently, which is why this area resists a template more than any other.

What breaks by default
  • Settlement figures living in a spreadsheet beside the matter
  • Lien payoff status tracked in email threads
  • Co-counsel splits recalculated by hand each time
  • No single audit trail across the distribution
What we build
  • Settlement values on the matter record, not beside it
  • Lien registration, negotiation status and payoff tracking
  • Fee split and co-counsel arrangement logic
  • Client disbursement statements generated from the data
05

Document generation templates and version control

ConfigureRisk control

Retainers, demand packages and case correspondence should be produced from matter data, not rebuilt by hand. On complex legal documents, ambiguity about which version is current is not merely inefficient — it is risk.

What breaks by default
  • Drafts shared by email, approvals tracked in threads
  • Templates mapped to fields nobody populates
  • Folder structures that differ per paralegal
  • Documents generated on request instead of on trigger
What we build
  • A template library mapped to real matter fields
  • Folder hierarchy, naming standards and permissions
  • Version history with one answer to "which is current"
  • Generation triggered by matter stage, plus signature routing
06

Timekeeping, rate cards and retainer draw rules

ConfigureRevenue

Hours logged and never invoiced is the quietest form of revenue leakage a firm has. The customization work here is almost entirely in the rules — who bills at what rate, on which matter types, under which fee arrangement, and what has to happen before a line reaches a client.

What breaks by default
  • One flat rate ignoring client and matter-type agreements
  • Contingency, flat-fee and hourly matters treated identically
  • Retainer draws reconciled manually at month end
  • Write-downs applied with no approval path
What we build
  • Rate cards by attorney, client and matter type
  • Fee-arrangement logic per matter record type
  • Retainer draw and replenishment rules
  • Invoice approval workflow before anything leaves the firm
07

Trust accounting and IOLTA-safe payment workflows

ConfigureBuild onCompliance

Operating funds and trust funds have to stay separate by design, not by discipline. Most trust-accounting disputes start in the gap between what finance can see and what the attorney on the matter can see — so the build closes that gap first.

What breaks by default
  • Trust balances known only to the finance team
  • Payments captured against a client, not a matter
  • Disbursements recorded after the fact, from memory
  • No enforced separation between fund types
What we build
  • Payment capture against the matter, with fund type enforced
  • Trust balances visible to attorney and finance alike
  • Disbursement coordination with an audit trail
  • Payment-platform integration that returns status and balance
08

Accounting and ledger integration

Build onNamed pain point

This is the area verified Litify reviewers call out by name — integration with accounting and document systems is where firms report the heaviest customization load. The work is less about connectivity than about ownership: which system holds the truth for each record, which direction data moves, and what happens when a sync fails overnight.

What breaks by default
  • Billing events re-keyed into the ledger by hand
  • Reconciliation status never returning to the matter
  • Two systems each believing they own the invoice
  • Silent failures nobody notices until month end
What we build
  • Billing events out to Accounting Seed or QuickBooks
  • Reconciliation and payment status back onto the matter
  • A named owner and direction for every record type
  • Failure handling and alerting, designed rather than assumed
09

Records retrieval and AI document extraction

Build onPlaintiff

Medical records, police reports and third-party files arrive as documents and need to become structured facts on the matter. Without that conversion, the same reading work is repeated by every person who touches the file.

What breaks by default
  • Records stored as attachments nobody can query
  • Treatment dates and codes re-read on every review
  • Retrieval requests tracked outside the matter
  • Demand assembly starting from a blank page each time
What we build
  • Retrieval requests raised and tracked on the matter
  • OCR and extraction of records into structured fields
  • Automatic classification and filing to the right matter
  • A human review gate before extracted data is relied on
10

Referral source and marketing attribution

ConfigureBuild onGrowth

Because Litify's matter and intake objects relate directly to the Accounts, Contacts and Campaigns your business development team already works in, the closed loop from campaign to signed matter is architecturally available. It is almost never configured.

What breaks by default
  • A free-text "how did you hear about us" field
  • Referral partners stored as names, not relationships
  • Call and campaign data stopping at the intake
  • Marketing spend judged on lead count, not signed value
What we build
  • Referral sources modelled as Accounts with owners
  • Campaign and call data carried through to signed matter
  • Cost per signed matter, by source and practice area
  • Settled value attributed back to the relationship that produced it
11

Partner-level dashboards and multi-office visibility

ConfigureLeadership

The reporting layer partners actually open. Built on native Salesforce reports and dashboards, so your own administrator can extend it without calling us — which is the point. A reporting layer only your implementation partner can change is a reporting layer that stops changing.

What breaks by default
  • Weekly exports assembled after the fact
  • Sharing rules that leak matters across offices
  • Multi-entity figures that cannot be separated
  • Dashboards built for one role and used by none
What we build
  • Intake conversion by source and practice area
  • Matter pipeline, stage ageing and stalled-matter alerts
  • WIP, billing exposure, realisation and collections
  • A sharing and role model that holds across offices and entities
12

AI enablement with human review gates

ConfigureGovernance

Litify ships its own AI layer, including Litify ACE for agentic case workflows and AI-assisted document and time-capture tooling. Those are the vendor's capabilities, not ours. The customization is deciding which of them your firm should switch on, pointing them at clean matter data, and putting a review step wherever output carries legal consequence.

What breaks by default
  • AI switched on across messy, incomplete matter data
  • Generated output leaving the firm without review
  • Licensed capabilities nobody has a use case for
  • Attorneys who do not trust it, so it goes unused
What we build
  • Scoping which AI capabilities earn their licence
  • Data hygiene work so the output is worth reading
  • Review and approval gates before anything leaves the firm
  • Flow automation around the AI steps, plus adoption support
Section 04 · By Practice

Which Customizations Matter Most For Your Practice Area

The twelve are not equally urgent for every firm. Where you start should follow where your matters actually generate risk and revenue.

Practice profileStart hereUsually needs codeCan wait
Personal injury & mass tortIntake logic (01), matter stages (03), settlement & liens (04)Records extraction (09), ledger integration (08)Multi-entity reporting, unless multi-office
Family lawMatter stages (03), billing rules (06), trust workflows (07)Accounting integration (08)Settlement & lien tracking (04)
Insurance defenseRate cards & billing rules (06), document control (05)Carrier e-billing and guideline complianceMarketing attribution (10)
ImmigrationIntake logic (01), matter stages (03), document generation (05)Deadline and filing-status integrationsSettlement & lien tracking (04)
Corporate legal departmentMatter intake and triage (01), spend reporting (11)Outside-counsel e-billing and invoice reviewReferral attribution (10)
Multi-practice firmRecord types and stage models (03) — before anything elseCross-practice reporting and sharing modelAI enablement (12), until the data model settles

Guidance reflects the sequencing we use in discovery, not a fixed rule. Your matter volume, existing Salesforce position and migration scope can reorder any of it.

Section 05 · Diagnostics

Six Signals Your Litify Org Needs Custom Work

These are the symptoms that bring firms to us. If three or more are true, the problem is design, not the platform.

1. Your team keeps a spreadsheet next to Litify. Whatever lives in that file is the requirement the configuration missed. It is the fastest diagnostic you have.
2. Reporting needs manual cleanup before a partner sees it. Almost always a symptom of stage models or record types that do not match how matters actually progress.
3. The same data is entered more than once. Re-keying between intake, matter creation and billing means a handoff was never built, not that staff are careless.
4. Adoption is uneven by team. When one practice group lives in the system and another avoids it, the configuration was built for the first group's workflow.
5. Integrations return data nobody trusts. Usually an ownership problem: two systems both believe they hold the authoritative version of a record.
6. Every change request goes back to your implementation partner. If your own administrator cannot extend reports or adjust a layout, too much was built in code that should have been configuration.
Section 06 · Delivery

How A Custom Litify Build Actually Runs

A focused implementation — core matter management, intake automation, billing setup and baseline reporting — typically runs 6 to 10 weeks. Heavy data migration, custom development or integrations crossing the org boundary extend that, and should be scoped before the engagement starts rather than discovered mid-build.

🔍

1 · Discovery & fit

Map the intake-to-invoice process as it runs today, and confirm Litify is the right platform for it. Typically 1–2 weeks.

📐

2 · Architecture

Record types, matter stages, security model, integration boundaries and reporting structure — signed off before configuration starts. 1–2 weeks.

🔧

3 · Configure & build

Intake, matters, documents, timekeeping and billing built against the design; Apex or components only where configuration cannot reach. 3–6 weeks.

🚀

4 · Migrate & launch

Migration with reconciliation, acceptance testing against real matters, training by role, and a parallel run so no live case is put at risk. 2–3 weeks.

The critical inputs from the firm's side are a decision-maker who can approve the matter model, two or three practitioners who will describe how the work really happens, and early access to the data you intend to migrate so its condition can be assessed before it becomes a timeline problem.

Section 07 · Total Cost

The Part Most Litify Guides Skip: What Customization Costs Later

Build cost is the number firms compare. Maintenance cost is the number that decides whether the system survives. Three commitments follow any custom Litify build, and they should be named in the proposal rather than discovered in year two.

CommitmentWhat it involvesWho should own it
Release-cycle regressionApex, components and integrations retested at each Litify and Salesforce release; declarative configuration generally needs little attention.Your partner, under a retainer
Administrator capabilitySomeone in-house who can extend reports, adjust layouts and add fields without a change request.Your firm, trained at go-live
Licence positionSalesforce licences for users plus a Litify subscription, reviewed as headcount and capability use change.Your firm, advised by your partner

Litify is an independent company and sets its own packaging and pricing; confirm current terms with Litify directly. Twopir does not resell either Salesforce or Litify licences.

Section 08 · Decision Framework

Do You Need Custom Litify Work, Or Something Else?

1. You run Litify already, but your team keeps a parallel spreadsheet.
→ Configuration gap. Start with stage models and intake logic — usually no code required.
2. You run high-volume plaintiff work with settlement and lien mechanics.
→ Litify is a strong fit. Budget for custom work on liens, disbursement and records extraction.
3. Your centre of gravity is matter depth and legal spend, not intake and acquisition.
→ Compare against Mitratech CaseCloud before signing either subscription.
4. You need one narrow workflow fixed, not an operating platform.
→ That is usually a Salesforce build, not a Litify purchase.
5. You are a solo practitioner or small firm with no technical support.
→ A lighter practice management tool will serve you better today. Revisit Litify at scale.
6. You have Salesforce with years of unmanaged customization already in it.
→ Scope an org assessment and cleanup as its own phase before Litify is installed.
Section 09 · Why It Matters

Why The Partner Matters More Than The Package

A Litify licence is a purchase. A Litify environment your attorneys still use in eighteen months is a design decision — made before the first record type exists. The security model, sharing rules, Flow limits and release-cycle behaviour that decide whether a build survives are Salesforce problems, which is why we approach Litify as Salesforce architects first and package specialists second.

That also means being willing to say where configuration ends. We write custom code when configuration genuinely cannot reach a requirement, we tell you which case you are in, and we price the two differently — because a proposal that blurs them is a proposal that hides your maintenance bill.

Ready to Start

Before You Buy The Licence, Design The System It Runs

A 30-minute call with a Twopir legal systems architect will review your current Salesforce position, map your intake-to-invoice process, and tell you what a well-configured Litify environment looks like for your firm — including whether it is the right platform at all.

Book a Discovery Call
Section 10 · Bottom Line

The Bottom Line

Litify gives law firms a genuinely capable legal operating platform on the most widely deployed CRM foundation available. What it does not give any firm is a model of how that firm operates — and the gap between the shipped defaults and your actual practice is where adoption is won or lost. Twelve areas cover nearly all of that gap. Nine are configuration. Three usually need code. Treating them as one undifferentiated "customization" line is how firms end up paying enterprise prices for a system their attorneys work around.

  1. 1

    Litify customization splits into configuration and custom development. Scope, price and maintain them separately.

  2. 2

    Configure first. Write code only where declarative tooling genuinely cannot reach the requirement, because every custom line is a regression commitment at the next release.

  3. 3

    Model record types and matter stages per practice area before anything else. One generic stage model across multiple practices is the most common and most expensive mistake.

  4. 4

    Budget custom development for the three areas that reliably need it: accounting and ledger integration, records extraction, and plaintiff lien and disbursement mechanics.

  5. 5

    Build the reporting layer on native Salesforce so your own administrator can extend it. A dashboard only your partner can change is a dashboard that stops evolving.

  6. 6

    If there is no configuration budget and no technical support, the honest answer is often a lighter tool today and Litify at scale.


FAQ

Frequently Asked Questions About Litify Customization

Litify customization is the work of shaping Litify around a specific firm's intake-to-invoice process rather than running the package as it installs. It spans two tiers: configuration, using declarative Salesforce and Litify tooling such as record types, page layouts, matter stages, intake forms, document templates, validation rules, Flow automation, reports and dashboards; and custom development, using Apex, Lightning Web Components, API callouts and scheduled jobs for requirements declarative tooling cannot express. The two carry different costs, timelines and maintenance obligations, so they should be scoped and priced separately.

The boundary is practical. If a requirement can be met with Litify configuration, Salesforce Flow, validation rules, record types, page layouts or reports, it is configuration — faster to build, and it survives platform upgrades with little attention. Once a requirement needs Apex, Lightning Web Components, external API calls or a scheduled job, it is custom development, which needs regression testing at every Litify and Salesforce release. Configure first and write code only where configuration genuinely cannot reach, because every custom line is a maintenance commitment at the next release.

Yes, and for most multi-practice firms it has to be. Personal injury, mass tort, family law, immigration, insurance defense and corporate legal work each have a different qualification path, a different matter lifecycle and different financial mechanics. In Litify this is expressed through separate intake forms and qualification logic, separate matter record types and stage models, practice-specific document templates, and reporting scoped per practice group. Running several practice areas through one generic stage model is the most common reason a firm's Litify data becomes unusable for reporting within a few quarters.

A focused Litify implementation covering core matter management, intake automation, billing setup and baseline reporting typically runs 6 to 10 weeks. Heavy data migration from a legacy case management system, custom Apex or Lightning Web Component development, and integrations that cross the Salesforce org boundary extend that timeline. Those extensions should be scoped before the engagement begins rather than discovered mid-build, because migration data quality is the single most common cause of slippage.

No. Litify installs as a managed package into an existing Salesforce org rather than requiring a separate environment. If a firm already uses Salesforce for business development, the right approach is to assess what is in that org first and design the Litify setup to coexist with it, instead of creating a parallel environment that has to be maintained separately. Where an existing org carries years of unmanaged customization, an assessment sometimes recommends cleanup as its own phase before installation.

Litify is an independent company, not a Salesforce product — Salesforce is the platform Litify is built on. Running it therefore involves two commercial relationships: Salesforce licences for users, and a Litify subscription for the managed package. Litify sets its own packaging and pricing, so current terms should be confirmed with Litify directly. The technical consequence of that architecture is that everything in Litify inherits the Salesforce security model, sharing rules, audit trail and reporting layer a firm's administrators already know.

Because a packaged platform ships a default model of how a law firm operates, and firms differ most in exactly the places that matter to revenue: qualification criteria, matter lifecycle, fee structures, referral relationships and financial controls. Independent reviews consistently describe Litify as deeply customizable and note that its implementation is a substantial undertaking, with verified user reviews specifically flagging the amount of customization needed around integrations with accounting and document systems. Customization is not a defect in the product; it is the work that makes a general legal platform match one firm's operating model.

It can, which is why the amount of custom code should be minimised rather than maximised. Declarative configuration generally survives platform upgrades with little attention. Apex classes and triggers, Lightning Web Components, API callouts and scheduled jobs need regression testing at each Litify and Salesforce release, and that testing is an ongoing commitment rather than a one-time cost. Custom work should be built deliberately to survive upgrades, and a release-cycle regression check should be part of the support arrangement from go-live onward.

Often not. Litify rewards design and punishes its absence, which means a firm without a configuration budget or technical support is likely to carry the cost of the platform without reaching its value. Independent reviews identify solo practitioners, small firms and firms without IT support as poor fits, largely because onboarding and customization are resource-intensive. A lighter practice management tool is usually the better first system, with Litify revisited once matter volume, multi-office structure or plaintiff settlement work makes the operating model genuinely complex.

TC

Twopir Consulting

Salesforce Partner · HubSpot Partner · Litify Implementation

Twopir Consulting is a Salesforce and HubSpot implementation firm serving legal, SaaS, real estate, healthcare, fintech and manufacturing clients across the US, UK, Australia, UAE, Canada and New Zealand. Our legal practice covers Litify implementation, practice-area configuration and custom development on Apex, LWC and the API layer, alongside Mitratech CaseCloud and legal operations built directly on core Salesforce.