Dentolize · WhatsApp Paid Messages Walkthrough
On this page1. The pricing notice2. Filtering conversations by free window3. The Messages Cost report4. Setting a daily spending capWhat isn't pictured here

Walkthrough

This is a guided tour of the sandbox (mo-whatsapp-paid-messages), logged in as the owner demo user (all permissions). The sandbox's seed data doesn't include any WhatsApp conversation history yet, so several screens below are shown in their empty state — the UI shell, filters, and settings fields are all real and live in the current branch; only the sample data is missing.

1. The pricing notice

Opening WhatsApp → Conversations shows a new warning banner above the conversation list, letting staff know the pricing change is coming and linking to an explainer video.

Conversations tab with the WhatsApp pricing change banner and the new
Conversations tab with the WhatsApp pricing change banner and the new "Messages Cost" tab in the tab bar

Notice the tab bar: Conversations · Requests · Messages Cost · Message Templates · Settings — "Messages Cost" is the new tab this PR adds.

2. Filtering conversations by free window

Clicking the filter icon on the conversation list reveals a new "Free window" checkbox, next to the existing Active/Open/Disabled/Not Found filters. Checking it narrows the list to contacts the clinic can currently reply to at no charge.

Conversation filters popover showing the new
Conversation filters popover showing the new "Free window" checkbox alongside Active, Open, Disabled and Not Found

3. The Messages Cost report

The new Messages Cost tab is a company-wide table of every message the clinic has sent, with columns for Category (Service / Utility / Marketing / Authentication) and Cost (Free / Paid), plus a "Show Analytics" toggle that reveals the free/paid/unknown breakdown boxes.

The new Messages Cost tab: an empty table with Name, Details, Category, Cost, Created By and Created columns, a date range picker, and a Show Analytics toggle
The new Messages Cost tab: an empty table with Name, Details, Category, Cost, Created By and Created columns, a date range picker, and a Show Analytics toggle

Clicking a row's conversation name jumps straight into that chat, the same way the older Requests tab does.

4. Setting a daily spending cap

Under WhatsApp → Settings → General, two new fields sit right below the existing "Automatic Reply Enabled" toggle: Daily paid bot messages and Daily paid user messages. Leaving either blank means no cap; entering a number caps how many paid replies (i.e. replies sent outside a free window) that sender is allowed to send per day.

WhatsApp settings page showing the new
WhatsApp settings page showing the new "Daily paid bot messages" and "Daily paid user messages" number fields, each with help text explaining that only messages outside the free window count

Filling them in shows the values staff would actually set — for example capping the bot at 50 paid replies a day and staff at 20:

The same settings fields filled in with 50 and 20, and the Save Changes button now enabled
The same settings fields filled in with 50 and 20, and the Save Changes button now enabled

What isn't pictured here

A few states depend on live WhatsApp traffic and can't be reproduced from a static sandbox with no seeded conversations — they're covered in the feature-breakdown pages instead, with the exact file:line that renders them:

  • The chat header's Free / Paid / Free (ad) tag and countdown, on both

web (Chats.js) and mobile (WhatsAppChatHeader.js) — see Conversation Windows.

  • A populated Messages Cost report, with real rows and the analytics

boxes filled in — see Cost Reporting & Analytics.

  • The "Daily Paid Messages Limit Reached" error a staff member sees

once they hit their cap — see Daily Spending Limits.