The full toolkit

AI-native. Bespoke per firm. Every feature ships standard.

Below is a complete inventory of what BTL Practice ships today. None of it is gated behind add-ons or "enterprise tiers" — what you see is what every paid seat gets. And the AI rewires it to fit your firm.

AI does this with you

AI-shaped customisation

Every firm's BTL Practice runs a different configuration — workflows, fields, templates, permissions, even the language. The AI does the configuring with you, in plain English, and it never goes stale.

Workflow builder (AI-assisted)

Describe a case type to Claude. It proposes the workflow steps, due-date offsets, auto-tasks, and which documents to request from the client at each stage. Tweak in plain English; the configuration is committed instantly.

Document templates from your old files

Upload an existing engagement letter / demand letter / status update; Claude converts it into a merge-aware template with your firm's voice intact. Add new templates by describing them in a sentence.

Custom intake forms

Build any questionnaire — VDP intake, conflict check, post-consult survey, Section 160 fact-finding. Clients fill via the portal; AI summarises responses before they hit your inbox.

Per-stage document requests

Attach a list of documents to each workflow step. When a matter reaches that step, the system auto-spawns a client-facing upload request and reminds the client on an escalating cadence until everything's received.

Authority levels in plain language

Tell the AI "only senior associates can write off over $500" and it maps the rule into the task-authorisation matrix. Edit any time without code.

Replaces 10 back-office roles

The AI absorbs the routine slice of intake, paralegal, bookkeeper, file clerk, billing clerk, collections, secretary, marketing, compliance, and IT-admin work — so your lawyers focus on the legal practice itself.

Multi-language firm

Pick a default language per tenant; each user can override on their own profile. The interface, the AI-drafted emails, the AI-generated documents — everything comes back in the user's chosen language. English, Canadian French (Quebec legal conventions), and Spanish ship today.

Per-locale templates

Build a French welcome letter alongside the English original; the engine looks up `(tenant, code, user_locale)` then falls back to the canonical row. No duplicated workflows — one template, many language faces.

Today briefing + AI launcher

Your morning glance at everything that matters — and one-click launchers for the AI work you'd otherwise procrastinate.

One-screen morning view

Tasks due, court appearances scheduled, calendar events, limitations within 7 days, hours logged, alerts inbox, low-trust matters — surfaced before you've finished your coffee.

Manage AI launcher

A 4-card pastel panel ships every AI workflow you'd otherwise hunt for: Schedule events from documents, Automate your bills, Analyze a document, Ask a question. One-click into each.

Per-matter trust min-threshold

Set a $ floor on any matter's trust balance. The Financial widget flips red when the balance falls below; the daily briefing surfaces the matter; staff act before the file goes negative.

Weather + curated headlines

User-set city for local weather. A curated good-news headlines feed alongside — small, but turns the briefing into something staff actually want to open.

Firm-wide matter pipeline

See every open matter on one board, organized by stage, with one-click advancement.

Matters Stages kanban

Columns are matter stages (Consultation → Pleadings → Discovery → Settlement). Cards are matters with client name + age. Filter by practice area. The whole firm at a glance.

Advance with one click

Click a card's stage chip and pick the new stage. The workflow engine fires the next stage's auto-tasks, document requests, and reminders automatically.

Marketing ROI report

Joins lead source (web, referral, paid) to realised matter revenue. See per-source conversion rate + $ realised per lead. Spend more on the channels that pay, less on the ones that don't.

Lead scoring on intake

Tag each prospect cold / possible / strong / not-a-fit. Counts widget at the top of the prospects page so partners triage at a glance.

Court forms library

Eighty-plus fillable forms across every Canadian court — pre-loaded, auto-filled, attached to your matter.

Coverage out of the box

TCC General + Informal, all CRA prescribed forms, Federal Court / FCA, SCC, ON Superior + Small Claims, BC Supreme + Small Claims, AB Court of King's Bench, AB Provincial, SK / MB / QC / NS / NB / NL / PE.

Auto-fill from matter

Pick a form, pick a matter, and every field with a `client.*` / `matter.*` autofill hint pre-populates. Render to PDF, attach to the matter file.

Per-matter + per-module

Forms tie to both a matter and (optionally) a module so the right files surface in the right module tab. The matter's Court Forms tab shows everything with module badges.

Filed-reference tracking

Once filed with the court, paste the court-issued file reference; the form locks read-only and the reference shows on the matter timeline.

Auto-prompt for docket time

After saving and finalising a form, a docket prompt pops up with the elapsed time pre-filled. One click logs a time entry tied to the matter.

Matter management

Open, track, close — without losing the thread.

AI-assisted intake

Paste a phone-call note or email thread, Claude extracts client, matter type, key dates, and suggested tasks.

Matter modules

Each matter gets workflow modules (e.g. VDP filing, Tax Court appeal, real-estate closing) with their own status, deadlines, steps, and notes.

Per-matter rate overrides

Override any staff member's hourly rate on a specific file from a single page; defaults remain firm-wide.

Read-only lock + override

Automatic lock when AR > credit limit and trust insufficient. Bailee flag for property-only matters. Full audit trail.

Conflict check

Adverse-party register with name + email + phone; checked on every new matter open.

Closure workflow

Closure-request approval chain. Auto-emails to client on close, with retention reminders.

Trust accounting (LSO By-Law 9)

The piece every competitor cuts corners on.

Form 9A built in

Trust requisitions generated, e-signed, and attached to the cheque without ever leaving the matter.

Monthly reconciliations

25-day window (ON), 30-day (BC, AB). Lawyer-signed. Locked snapshot per period — no retroactive edits.

Bank-statement import

OFX / CSV ingestion. AI helps match deposits to trust ledger entries. Manual override for the edge cases.

Three-cheque cap + NSF cycle

Hard ceilings on outstanding cheques. NSF returns trigger automatic re-issue tracking + collections email.

Multi-jurisdiction rules

Ontario By-Law 9, BC Rules 3-58 to 3-87, Alberta Rule 119.10, Quebec CARTAJ — each tenant picks its jurisdiction at signup.

Trust-sweep automation

Sweep eligible balances to general at month-end with a one-click confirmation. Form 9A logged for every transfer.

Billing + accounts receivable

Predictable invoicing on a two-day cycle.

Two-day batch billing

Bill all eligible matters on the firm's chosen billing days (e.g. 15th + month-end). Per-matter overrides supported.

Activity → time → invoice

Time activities snapshot their rate at logging. Invoice draft → review → finalize → deliver. Every step audited.

Trust sweep on invoice

Apply trust to the invoice automatically per LSO rules. Generates the Form 9A for the matter file.

Interest on overdue

Per-tenant annual rate + grace days. Cron computes interest daily; surfaces as line items on the next bill.

Stripe, Interac, cheque

Clients pay through the portal (Stripe), bank e-transfer (Interac), or mail a cheque. All three reconcile back to AR.

AI legal copilot

Claude lives inside every matter.

Matter chat

Ask any question about the matter; Claude has the full context as system prompt.

AI draft document

Generate engagement letters, demand letters, status emails, status-of-file reports — all merge-field aware.

Cross-matter similarity

"Find me other VDP files where the client filed late and we got penalties waived" — Claude searches your firm history.

AI deadline detector

Scans every inbound document and contact note for implied deadlines, queues them for one-click review.

Bring your own key

Use the platform Claude allowance or paste your own Anthropic API key under /admin/ai. Tenant-scoped, audited.

Documents + e-signing

Less paperwork, more practice.

Template engine

{{merge-fields}} for client, matter, lawyer, firm, and today's date. Categorize by engagement / retainer / demand / closing letter.

Render & save

One click to render a template, save to the matter, or send as email. Drafts can be re-rendered with updated data.

Signature requests

Token-link signature requests sent by email. Audit trail (IP, timestamp, signer identity). 90-day expiry default.

Online notarization (coming)

Integration scaffold for online notary platforms. Affidavits, statutory declarations, commissioned documents.

Document chat

Chat with any uploaded document. Claude reads the extracted text + answers questions about that specific file.

Client + external portals

Branded experiences for everyone who touches the file.

Website builder (now in v0)

Publish a public-facing law-firm landing page right from inside BTL — hero, about, practice areas, and contact, served at /site/<your-slug>. Edit at /admin/website. Custom domains and multi-page support arrive next sprint.

Client portal

Clients sign retainers, pay invoices, upload documents, see file status. Magic-link login by email — no passwords.

Accountant portal

Limited-scope access for external accountants doing T-slip work, with file-by-file invitation and revocation.

Referrer portal

Referrers see attribution + revenue earned from files they sent your way. Drives more referrals over time.

LSO compliance + audit

Every regulatory checkbox, by design.

Client identification

Per-client identification + verification dates with staleness alerts. Rule 3.3-2 + LSO §22-23 compliant.

Valuable property record

Track wills, USB drives, originals — every physical item the firm holds for a client. By-Law 9 s. 18(1)(h).

Authority levels

Seniority tiers map to sensitive actions (write-offs, over-limit overrides, refunds). Lower number = higher authority.

Audit log

Every state change written to an immutable audit table with actor, timestamp, before/after.

Your fork of the software

Describe a page in plain English; the AI writes a widget that mounts into your interface. From day one your platform diverges from every other firm's.

AI-authored widgets

Tell Claude what you want to see ('a panel on the matter dashboard showing the client's last three CRA notices') — it emits a Widget DSL document, mounts it at the right place, and shows you a preview. Accept, edit, or roll back.

Mount anywhere

Widgets can pin to the home page, the matter dashboard, the Today briefing, the per-module page, the firm-wide settings — every meaningful surface exposes a mount point.

Versioned + safe

Every fork is versioned. Roll back to any prior revision with one click. Platform upgrades never break your forks — we maintain the contract; you keep your additions.

Stays in your tenant

Other firms never see your forks. Conversely, your interface never gets cluttered with the long tail of someone else's edge cases.

Already in production

Real firms are running custom CRA-notice panels, partner write-off authority charts, hearing-only Today cards, and "send to e-filing" toggles on their PDF templates — none of which existed in the base product.

Voice mode — speaks AND does

Tap the mic, say what you want done; the assistant performs the action and confirms in a studio-quality voice.

Real actions, not chat

Start a timer on a matter. Stop a timer (saves a draft time entry). Create a task with priority + due-date. Save a cleaned-up note. Compose an email and pre-fill the composer. Navigate anywhere. Search anything. All from one sentence.

Resolves the matter for you

Say 'start the clock on Smith Holdings' from anywhere in the app — the assistant matches 'Smith Holdings' against your matter index and attaches the timer correctly.

Curated studio voices

Six premium OpenAI voices (Nova, Onyx, Shimmer, Echo, Fable, Alloy) ship by default; ElevenLabs voices when you provide a key. Tenant picks a default; each user overrides on their personal page.

Multi-language voice

User's preferred language (English / French / Spanish) drives both the UI AND the voice output. Quebec French uses formal vouvoiement; Spanish uses formal usted. The voice speaks in your chosen language.

Privacy + safety

Browser fallback always available for offline / privacy-mode use. SAFE_MODE suppresses outbound voice synthesis during QA so no paid-API charges accrue during testing.

App marketplace + integrations

35+ curated platform integrations + a developer marketplace where any approved builder can ship a tenant-installable app.

Curated integration stack

QuickBooks · Xero · Gmail · Outlook · Google Calendar · Microsoft 365 · Zoom · Teams · DocuSign · Dropbox · OneDrive · Box · Stripe · Plaid · Twilio · MessageBird · ClickSend · Mailchimp · Constant Contact · Slack · Zapier · Webex · Calendly · CRA EFILE · Federal Court e-Filing · ON Civil Submissions Online · TCC e-Filing · CanLII · Westlaw · Lexis+ · OpenAI · Anthropic · ElevenLabs · Voyage AI — every one with an OAuth or wizard-driven setup.

Setup wizards, not docs

Every integration has an in-app wizard explaining exactly what to paste and where to find it. No "check your email for the docs" — the wizard walks you through.

Developer marketplace

Any approved developer can publish a marketplace app a tenant installs in one click. Apps get scoped API access (you pick the scopes), an audit log of every call, a one-tap revoke.

Build your own apps

Firms with in-house engineering can ship internal apps that integrate deep with their fork. Distribute to other tenants and share revenue, or keep them firm-only. Sign up at /developer.

Webhook + public REST API

For everything the curated catalogue doesn't cover. HMAC-signed webhooks, scoped bearer tokens, full audit log. Use Zapier or write a Node.js handler — both work.

Safety + compliance guards

Hard-stops at the layer where mistakes leave the building.

DO NOT CONTACT email guard

Flag opposing parties, adverse contacts, or PIPEDA-opt-outs at the contact level. Every outbound email (to/cc/bcc) is checked against the registry before it leaves the box — misclicks become audited blocks.

Per-matter trust floors

Each matter can carry its own $ trust floor; the Financial widget shows green/red against it, the daily briefing surfaces matters that have fallen below, and partners catch issues before clients do.

SAFE_MODE for QA

Single env switch (`BTL_SAFE_MODE=on`) suppresses every outbound side-effect (email, SMS, webhook, push) at the dispatcher level. Click through the app with zero risk of paging real clients during testing.

AI permission-scoping

AI retrievers walk the same permission set as the human; a paralegal asking the matter chat will never get back information they couldn't see in the UI directly.

Per-tenant Canadian data residency

All tenant data stored in Canada (ca-central-1 Supabase + S3). AI prompts route through the tenant's own Anthropic key when set, so customer prompts never sit in a shared logging tier.

Platform + administration

The plumbing nobody talks about until it breaks.

Multi-tenant by design

Every row is tenant-scoped at the database level. RLS enforced. No accidental cross-tenant reads, ever.

Role + permission matrix

Granular permissions per role. Audit + roll out new capabilities tenant-by-tenant.

Email + calendar OAuth

Connect Gmail, Outlook, Google Calendar, Microsoft 365. Send and receive on behalf of the firm.

SMS management

Per-tenant SMS provider config (Twilio, MessageBird, ClickSend coming). Quiet hours + per-kind templates.

Migration wizard

AI-assisted import from Clio and PCLaw. Drop a Clio export ZIP and the wizard maps your contacts, matters, activities, invoices, and trust transactions into BTL's schema — preview every mapping before commit.

Internal video calls

Camera-to-camera staff calls hosted inside BTL. The platform rings teammates, transcribes the call, and prompts you to docket the time. No Zoom required for internal work; the Zoom hub remains for client-facing meetings.

Sequenced intake automation

Drop a prospect into a stage (e.g. 'consult scheduled'), and a multi-step email sequence (welcome → 24-hour reminder → retainer prompt → no-show recovery) runs on the cadence the firm configured.

AI end-of-month billing teammate

Configure a recurring billing job; the AI assembles bills from time entries, refines descriptions, auto-approves anything under a $ threshold, and holds the rest for human review. Built-in checkpoints so a partner can monitor and approve the AI's work.