Reply to a waiting fan
Open the longest-waiting thread from the Chat tab and send a reply through the firewall and engine pipeline honestly.
Open the Waiting tab
The Chat tab's default view is Waiting — fans with an open thread, an unread message from them, and no reply from you yet, sorted longest-wait-first (not newest-first). The chip on the tab is an exact count over your whole inbox, not just the rows on screen, so it never undersells how many people are actually stuck.
If a fan already replied and you haven't answered, but they have nothing unread (you opened it and moved on), they show up under Unanswered instead — a separate tab so a deliberately ignored fan doesn't crowd out someone truly forgotten.
Open the thread
Selecting a fan re-reads their messages live — the panel keeps no copy of the conversation text, so what you see is always the current state of the chat, not a cached snapshot. A ★-badge next to a fan's name is their lifetime spend tier; a 🐳 marks a whale.
Write and send
Type your reply and press send. The request goes through two checks before anything happens:
- The content firewall screens the text for banned categories (off-platform payment requests, contact-info leaks, and similar). A refusal shows as "Not sent: …" with a concrete, actionable reason where one exists — nothing is queued and nothing is logged when this happens.
- The engine attempts delivery. What you see next depends on whether live sending is turned on for this workspace:
| What you see | What happened |
|---|---|
| Sending… | Accepted by the engine; delivery is in progress. |
| Delivered to the fan | Confirmed sent. |
| Saved — it goes out once sending opens | Passed every check, but live sending is off account-wide; the intent is logged, nothing left. |
| Not sent: the previous message is still going out. Tap Retry | You (or the account) sent something a moment ago and the engine only holds one in-flight request at a time. |
| Not sent: sending is stopped for this account right now | An operator-level emergency brake is down for every workspace — retrying won't help until it lifts. |
A held message is not lost
"Saved — it goes out once sending opens" is the expected state for most workspaces today — see Shadow sends and the kill switch. Your reply is recorded and the thread moves out of the waiting queue exactly as if it had gone out live.
Sending requires the right grant
Three separate capabilities gate what a team member can do from the composer: send (plain text), send_ppv (attach a price), and attach_vault (attach media). A grant with only the first can read and reply in plain text but can't price a message or pull in vault content — the composer reflects this rather than failing silently at send time.
What's next
- Send a priced PPV message — once a fan is worth pitching, price and send an attachment.
- Retry a failed message — what to do when a bubble shows "not sent."
- Get an AI-drafted reply — generate a starting point instead of writing cold.
Check a fan's spend before you pitch a PPV
See lifetime and 30-day spend, what a fan already unlocked, and their last purchase without leaving the thread.
Send a priced (PPV) message
Attach vault media, set a price the fan will actually pay, and mark part of it as a free preview without losing the lock or mis-pricing the send.