Intelligent conversation operations
Class reminders, PT session confirmations and the membership renewal — the three messages that decide whether a member stays past month four. The distinction that matters: a renewal notice about the member's own contract is utility; "bring a friend, first week free" is marketing.
The category decides everything else: the price, whether it reaches somebody who opted out, and the criteria it is reviewed against.
| Message | Category | What that means |
|---|---|---|
| You're booked for 06:30 spin tomorrow — cancel by 22:00 tonight | Utility | The member booked the class. The cancellation deadline in the message is what makes the late-cancel fee defensible when it is charged. |
| PT session confirmed, trainer running late, session moved | Utility | About a session the member paid for. The trainer's reply lands in the shared inbox, so a trainer leaving does not take the member's conversation with them. |
| Membership expires in 7 days, payment failed, frozen as requested | Utility | About the member's own account. A renewal notice with a discount attached becomes marketing and stops reaching the members who opted out — exactly the ones about to lapse. |
| New class launch, referral offer, Ramadan timetable promo | Marketing | Opted-in members only, priced higher. The Ramadan timetable itself — the hours changed — is utility; the offer attached to it is what makes it marketing. |
A member who stopped coming in February has not messaged you since, so by March the 24-hour window is long shut and the win-back has to be an approved marketing template — which only reaches them if they never opted out. Most gyms discover this when they export the lapsed list and half of it is undeliverable. The fix is upstream: the renewal notice, which is utility and reaches everyone, goes out with a reply button, and a member who taps it has opened a window in which the desk can talk freely. Zanii records each opt-out as a signed receipt, so when a member disputes a charge or a message, the consent trail is there rather than reconstructed.
Hi {{1}}, you're booked for {{2}} at {{3}} tomorrow with {{4}}. Cancel free until {{5}} — tap below if you can't make it, so someone on the waitlist can.
Category: Utility
The double braces are variables WhatsApp fills per recipient. Meta rejects a template whose numbering has gaps, and Zanii catches that before you submit it.