Notifications
The Notification module sends transactional messages — emails and WhatsApp — through queued, retryable delivery. Configuration is under Platform Settings → Email Configuration and WhatsApp Configuration.
Design
Messages are enqueued with a template + payload, then a background job polls and delivers. Delivery runs on an interval and retries failures, so the platform is resilient to transient provider outages.
| Email Setting | Purpose |
|---|---|
EnableEmailDelivery |
Turn on outbound email |
EmailProvider |
smtp (current) |
SmtpHost / SmtpPort |
SMTP server & port |
SmtpUsername / SmtpPassword |
SMTP auth (password encrypted) |
SmtpUseSsl |
SSL/TLS for the connection |
FromEmail / FromName |
Sender identity |
EmailJobIntervalMinutes |
How often the delivery job runs |
EmailMaxRetries |
Delivery retry cap |
Email job flow
Enqueue(EmailMessage) → Job runs every EmailJobIntervalMinutes
→ deliver SMTP → on failure retry up to EmailMaxRetries
Note: Nothing is actually sent until
EnableEmailDeliveryis on.
| WhatsApp Setting | Purpose |
|---|---|
EnableWhatsAppDelivery |
Turn on WhatsApp outbound |
WhatsAppProvider |
meta (current) |
WhatsAppBusinessAccountId |
Meta Business Account ID |
WhatsAppPhoneNumberId |
Sender phone number ID |
WhatsAppAccessToken |
Meta access token (encrypted) |
WhatsAppWebhookVerifyToken |
Verifies inbound webhook |
WhatsAppJobIntervalMinutes |
Delivery cadence |
WhatsAppMaxRetries |
Delivery retry cap |
Message lifecycle
Every message model carries:
- Type (email/whatsapp), globally
"notification" - To (email address / WhatsApp number)
- Data (template variables) + template identifier
What notifications does the platform send?
- Temporary password on onboarding
- Activate/active confirmation emails (via site activation business rules)
- Invoice & payment updates from the Billing module
- Password reset flows via the Identity module
- Operational alerts for backup & restore
Related
- Platform settings reference — Email / WhatsApp configuration
- Architecture — Notification module