All features Communications
Communications

Patient communications, how it works

All outgoing communications, across every channel, flow through a single notification queue with retry logic and delivery logging. This means a failed WhatsApp message can be retried and logged in the same way as a failed email, and the communications log gives a unified view of everything sent.

Twilio SMS API WhatsApp Business API Meta HSM templates Web Push (VAPID) Telegram Bot API

Email

How email is sent

Email is sent via SMTP using the clinic's configured mail server, Gmail SMTP, Mailgun, AWS SES, or any standard SMTP provider. TLS/STARTTLS is enforced. The From address uses the clinic's own email, not a shared system address.

Delivery logging

Every outgoing email is logged with the recipient address, subject, send timestamp, and status (sent or failed with error detail). Open events from patients are tracked and visible in the communications log.

White-label sending

With white-label enabled, the clinic can configure any sending domain. Correct SPF and DKIM records must be set in DNS to ensure deliverability, the admin settings screen provides the required values.

SMS (Twilio)

How SMS is sent

SMS is sent via the Twilio REST API using the clinic's configured Twilio account (Account SID, Auth Token, and sender number). Indian 10DLC numbers for transactional messaging are supported.

Delivery status

If a Twilio Status Callback URL is configured, Twilio sends delivery status updates (delivered, failed, undelivered) which are logged against the original message record.

WhatsApp

How WhatsApp is sent

WhatsApp messages are sent via the WhatsApp Business API through a configured WABA provider (Twilio, D7Networks, or any provider with a WhatsApp Business API endpoint). The clinic's provider credentials are stored in settings.

Template messages

Outbound WhatsApp messages use Meta-approved message templates (HSMs). Templates must be registered and approved in Meta's Business Manager before use, the platform sends messages by calling the approved template by name. This is required by Meta for any business-initiated WhatsApp message.

Outbound only

The current WhatsApp integration is outbound only, for appointment reminders and notifications. Inbound patient WhatsApp replies are not routed into the portal messaging system.

Push notifications

How push works

Web Push Notifications are sent via the standard Push API using VAPID (Voluntary Application Server Identification) keys. Patients who grant notification permission in their portal browser receive push notifications for new messages, appointment reminders, and assessment requests.

Subscription management

Each device a patient uses to access the portal can independently subscribe to push notifications. Subscriptions are stored per device and cleaned up automatically when a subscription becomes invalid.

Telegram

How Telegram works

Patients who use Telegram can link their account to the portal via a bot-start link. Once linked, the clinic can send documents (prescriptions, lab reports, invoices as PDFs) directly to the patient's Telegram chat.

Primary use case

Telegram integration is primarily used for document delivery, sending a prescription or lab report directly to a patient's chat as a PDF, rather than for general messaging. This is the channel most useful for patients who don't use email regularly.

Unified communications log

Single view of all channels

The communications log shows every outgoing message across all channels, email, SMS, WhatsApp, push, Telegram, in a unified, searchable timeline. Searchable by patient, channel, date range, and delivery status.

Retry logic

Failed notifications are retried automatically with exponential backoff, the delay between retries grows with each attempt. After a configurable number of retries, the message is marked as permanently failed and the failure is logged for review.

Ready to see it in action?

The demo comes pre-loaded with real sample data, so you can click through actual appointments, patients and prescriptions.

Try the demo ← All features