Skip to content

--- title: Core Workflows description: Beginner-friendly end-to-end guides through the five settlement rooms, from intake to disbursement. ---

Core Workflows

Step-by-step guides through the work every beginner does in CaseSolo. Each workflow follows the five settlement rooms in order: intake → medical truth → cited demand → negotiation → fail-closed IOLTA.

Related deep-dives: Creating a Case, Case Workflow & Statuses, Parties and Timeline, Trust Accounting.

Workflow 1 — Qualify a lead and open intake

Goal: turn a new inquiry into an intake case without losing it.

  1. Open Work → Leads (the leads inbox). Native leads and intake-created
  2. LEAD cases share this inbox with converted-case dedupe, so check whether the person already exists before creating anything.

  3. Open the lead to review it. A lead opens the overview so you can convert
  4. it — medical truth cannot start on a lead.

  5. Convert the lead to intake. The matter now appears in the intake
  6. settlement room on Home, and in a /cases?room= list whose counts match the room.

  7. Assign the case to an attorney and set the next deadline (a task or calendar
  8. entry) so it shows up under urgent work.

If something looks wrong: a duplicate lead means someone already converted it — open the linked case from the inbox instead of creating a second one. See Contact Directory for merge and conflict handling.

Workflow 2 — Build medical truth

Goal: store the treatments, bills, and records the demand will cite.

  1. Open the case, then go to the Medical lane.
  2. Add each treatment, bill, or record on the chronology page itself — it
  3. writes the entry in place instead of bouncing you to a sibling dashboard.

  4. Type the provider name directly on the matter form. Treatments and bills can
  5. be added from the matter with a typed provider name; there is no bounce to a separate providers page.

  6. Confirm Active Treatment: it is owned by the first stored treatment,
  7. bill, or record. If the header still shows intake, nothing is stored yet.

Guardrail: sibling medical dashboards stay one hop away and never invent entries. If a bill or record you expected is missing, it was never stored — re-add it on the chronology page.

Workflow 3 — Generate and send a cited demand

Goal: produce a demand letter with page-level citations and an exhibit index, then record delivery.

  1. Confirm the medical file is non-empty (see Workflow 2). On an empty file,
  2. generation is refused with 409 NO_STORED_MEDICAL and the generate controls stay closed until the file has content. Sibling draft pages refuse with 409 CITED_SEND_REQUIRED instead of stamping anything SENT.

  3. Open /cases/:id/demand — this is the cited send path. Click
  4. Generate. Demand Preparation is owned by this cited generate.

  5. Review the letter: every medical claim carries a deterministic page-level
  6. citation, backed by the exhibit index.

  7. Fill in the carrier recipient and destination. Cited send fails closed
  8. without a named recipient (409 NO_RECIPIENT) or destination (409 NO_DESTINATION).

  9. Click send / record delivery. Recording delivery returns delivery confirmation
  10. (deliveryRecorded, transmitted: false) — CaseSolo records demand delivery; it does not email, fax, or mail the letter. Deliver the letter yourself through your usual channel.

Common mistakes:

Older snapshots of a demand live in the versions table (DemandVersion backfills run automatically); document revisions live at /cases/[caseId]/doc-versions — see Workflow Versioning.

Workflow 4 — Negotiate and settle

Goal: log offers and the acceptance that owns settlement status.

  1. Open the case, then go to the Negotiation lane. Negotiation is owned by
  2. the first logged offer or demand.

  3. After cited delivery, use Log offer. Every money event **requires a
  4. dollar amount** — a $0 acceptance can never unlock Settlement.

  5. Counter-offers are logged the same way. Use the settlement calculator in
  6. the lane to sanity-check authority and disbursement before responding.

  7. When the matter is negotiable, use Log acceptance. Settlement status is
  8. owned by that logged acceptance, not by changing a status dropdown — status dropdowns, kanban drags, bulk edits, imports, and the onboarding checklist cannot invent the hop.

If something looks wrong: if the room names Log acceptance but you have not logged an offer or demand yet, log the offer first — the tracker opens Negotiation from the first logged offer or demand the same way /negotiation does.

Workflow 5 — Clear liens, disburse, and reconcile IOLTA

Goal: move settlement funds through the fail-closed trust ledger.

  1. Open the case, then go to the Money lane (trust ledger).
  2. Read the ledger room banner first. After settlement it names **Clear open
  3. liens or Post IOLTA debit; after disbursement it names Reconcile IOLTA**.

  4. If open liens are named, clear them in the lien tracker — including reduced
  5. medical-bill and subrogation liens, which still block IOLTA. A debit with open liens is refused (TRUST_OPEN_LIENS).

  6. Post the IOLTA debit. Guardrails: debits cannot overdraw the trust account
  7. or the client's case balance; posting locks the account while it writes; a bank/book mismatch never stamps reconciled. A fail-closed debit on a SETTLEMENT matter moves it to DISBURSEMENT.

  8. Reconcile bank balance, book balance, and client-ledger balance. Client
  9. disbursements use the client-disbursement category.

  10. Trust history is preserved if a case is removed — transactions keep their
  11. financial record and clear the case link instead of being deleted.

Full reference: Trust Accounting.

Workflow 6 — Export a report

Goal: get a complete filtered export without silent truncation.

  1. Open Insights and build the report with the filters you need.
  2. Run the export. Exports now stream the complete filtered set — if a past
  3. export looked short, re-run it; the truncation fix ships in the current release.

  4. For advanced reports behind the toggle, enable the toggle first, then
  5. export again.

Workflow 7 — Share progress with the client (portal)

Goal: let the client see status, upload documents, and pay without phone tag.

  1. Invite or confirm the client's portal access from the case's
  2. Client Comms lane. Free claimant case-tracker accounts can follow a case check before an attorney takes it.

  3. The client can check case status and next steps, upload requested documents
  4. (medical records, receipts, photos), message your team in the shared portal thread you answer from Communications Hub, review invoices, and start secure card payment on eligible invoices.

  5. Portal sessions revoke immediately on sign-out or admin revocation, and
  6. portal pages carry CSRF protection — a signed-out link stops working right away.

Full reference: Client Portal.

Workflow 8 — Manage contacts without creating duplicates

Goal: keep one clean record per person across firms and cases.

  1. Search the Clients → Contacts directory before creating anyone new.
  2. Use the named filters to narrow by type or firm.

  3. If two records describe the same person, use merge and review the
  4. conflict screen — it now shows human-readable merge and filter selections, and invalid filter input is rejected instead of silently returning everything.

  5. Detail links are keyboard-accessible: Tab to a contact row and press Enter
  6. to open it. Cross-firm shares keep their own access rules.

Full reference: Contact Directory.

Workflow 9 — Track tasks and deadlines

Goal: never miss a deadline on a live matter.

  1. Create tasks from Work → Tasks or from inside a case so the task links
  2. to the matter. Set an assignee and a due date on every task.

  3. Reassign by opening the task, changing the assignee, and saving. If you
  4. cannot edit it, ask the case owner or an admin.

  5. Watch notifications (sidebar badges) for assignments, mentions, deadline
  6. reminders, and portal messages. Mark read in bulk when triaging.

Full reference: Task Management.

Source: docs/user/core-workflows.md