Notifications
Three channels: Gmail drafts you review and send yourself, real emails the product sends for invites and billing, and in-app bell notifications for case activity. Only the real-email channel leaves the product automatically.
A lot of confusion lands here: a client gets added to a case, a teammate sees a bell light up but no email, the client never opens the app, and nobody knows what was supposed to happen. The outbound model is intentional (different events use different channels), but the lines aren't obvious until you see the whole picture.
The three channels
| Channel | Triggered by | Who sees it | Email leaves the app? |
|---|---|---|---|
| Compose a Gmail draft | The Compose share button on a case (or Compose Draft in the batch action bar) | The To/Cc recipients you enter | No. A draft is created in your own Gmail and opened in Gmail's compose view for you to review and send. (The single-file Share button uses your device's share sheet instead, no Gmail.) |
| Real email | Inviting a teammate; adding a collaborator (worker or client) to a case; billing lifecycle (upgrade, receipt, cancellation) | The invited person; the email on the Stripe account | Yes. Sent directly, no human review step. |
| Bell-icon notification | Workspace activity (case edits, file attachments, autofill runs, collaborator changes, portal form submissions, case creation) | All workspace members (workers + owner) | No. Lives in the app, lights up the bell. |
Channel 1: composing a Gmail draft
Clicking Compose share on a case (or Compose Draft in the batch action bar) never emails on your behalf. It creates a real Gmail draft in your own mailbox with recipients, subject, body, and attachments pre-filled, then opens Gmail's compose view in a new tab. You review, edit, and click Send from inside Gmail.
This needs two things: your own Gmail connected (the Gmail toggle in Settings → Account), and the Compose Emails capability granted by your admin at Settings → Account → Team. Owners always have it; workers default to not having it.
The single-file Share button in the file review modal is a different path: it hands the file URL to your device's OS share sheet via the Web Share API, no Gmail involved. Use it to share one PDF without composing an email.
The human-review step is deliberate insurance against wrong recipient, attachment, or tone. See Send templates.
Channel 2: real emails sent by the product
Three things trigger an actual send, none through your Gmail:
- Adding a collaborator to a case (the per-case Team or Clients panel) sends a templated SendGrid email with a sign-in link to
/portal/cases/{ownerUid}/{caseId}; the recipient signs in with the matching email. You can't edit subject or body. See Per-case collaborators. - Inviting a workspace member from Settings → Account → Team sends a templated email with a one-time invite link. See Workspace roles.
- Billing lifecycle (Stripe) fires three best-effort emails against the Stripe customer address: Welcome when a paid plan starts, Receipt at the same time with line items and amount, and Cancellation on cancel. If they fail, the underlying action still completes. No resend button today.
Channel 3: bell-icon notifications (in-app only)
Most workspace activity fires an in-app notification on the dashboard header bell. No email goes out, only the bell lights up. Triggers: adding/editing/deleting a case note, attaching a file, running autofill or generation, adding/removing a collaborator, a client submitting a portal form, a case being created.
Notifications fan out to every workspace member (owner plus active members). The author of a change usually isn't notified of their own edit, since that's pure noise.
Unread activity also surfaces on the dashboard: a case with unseen activity shows a small red dot next to its name; opening the case clears it. Clear an individual thread with the check button that appears on hover in the bell dropdown, or clear everything with Mark all read in the dropdown header.
Important: a worker who hasn't opened the app in three days won't know about any of these. No push, no email digest, no SMS: the bell is the entire channel. For real-time delivery, add the person as a collaborator (Channel 2) or compose a draft yourself (Channel 1).
Troubleshooting
Client says they didn't get the collaborator email. Check spam: it's sent from a product domain and strict mail servers may flag it. Paste the /portal/cases/{ownerUid}/{caseId} URL directly; they sign in with the email you added.
A teammate got the bell notification but no email. Correct, not broken. Bell events are workspace-internal and never email. Only collaborator-add, team-invite, and billing send real emails. To reach a teammate directly, use Compose share.
I need a daily activity digest emailed. Not supported: activity is always in-app. File feedback; it's a known gap.
Can I send a custom email from the app? Only via the Gmail-draft flow: Compose share lets you edit subject and body freely, then finish from inside Gmail. There's no direct arbitrary-send path, by design.
A billing email never arrived. Best-effort, no resend. Confirm the email in Settings → Account matches Stripe and check spam; if the Stripe customer email is wrong, fix it there first.