A real notification engine,not a smtp wrapper
Edushade ships seven channels (email, SMS, push, WhatsApp, Telegram, Slack, Discord), 110 pre-wired events across the platform, and a full settings layer with quiet hours, rate limits and per-event toggles. One engine, sixteen provider integrations, every event a learner needs to hear about.
Built for the way real platforms send messages
Notifications in Edushade are their own service with their own model: templates per event, provider configs per channel with priority and failover, and a queue layer with retry, scheduling and quiet-hours awareness. The same engine drives transactional alerts, marketing campaigns and platform announcements.
Seven Channels
Email, SMS, push (APNs and FCM), WhatsApp, Telegram, Slack and Discord — each a first-class channel with its own template body field and its own provider stack.
Sixteen Provider Integrations
Four email providers (SendGrid, Mailgun, AWS SES, SMTP), six SMS providers (Twilio, Vonage, Plivo, BulkSMS24, HTTPSms, AWS SNS), two push providers (APNs, FCM) and four chat providers (WhatsApp, Telegram, Slack, Discord).
110 Pre-Wired Events
Default templates for auth, enrollment, learning progress, course management, assignments, quizzes, certificates, billing, e-commerce, engagement, bookings, cohorts, tenant admin and file events — 110 keys in total.
Quiet Hours & Rate Limits
Tenant-level quiet hours with timezone, optional marketing-only scope, and per-channel rate limits — marketing per day and per week — enforced before send.
Per-Event Toggles
Group-level and per-event toggles let admins disable a whole category or surgically turn off a single event. Group toggle is the default; per-event override wins when set.
Delivery & Open Tracking
Every send writes a delivery record. Email and push capture sent, delivered, opened, clicked and bounced events with provider, IP and user-agent on each.
Seven channels, ten provider integrations, one engine
Each channel is its own field on the Template — email_subject and email_body_html for email, sms_body for SMS, push_title and push_body for push, plus dedicated body fields for WhatsApp, Telegram, Slack and Discord. Provider configs sit on the tenant, with multiple providers per channel ranked by priority for automatic failover, plus a per-provider rate limit.
Email: SendGrid, Mailgun, AWS SES, SMTP
SMS: Twilio, Vonage, Plivo, BulkSMS24, HTTPSms, AWS SNS
Push: APNs (Apple) and FCM (Firebase)
Chat: WhatsApp, Telegram, Slack and Discord native providers
Every event the platform actually fires, already wired
Edushade does not ask you to write templates from scratch. It ships 110 default templates organised into fourteen categories — every meaningful event the platform already triggers has a sendable template behind it. Auth flows, enrollment lifecycle, course progression, billing events, certificate issuance, cohort schedule, and platform admin all covered out of the box.
Auth: registration, login, password reset, OTP, email and phone verification
Learning: course started, completed, milestones, lesson completion, learning paths
Billing: payments, refunds, subscriptions, installments, scholarships
Engagement: announcements, discussions, reviews, mentions, instructor replies
Channel defaults, quiet hours and rate limits at the tenant level
Notification settings are tenant-scoped and channel-aware. Set a default from-name and from-email for the whole platform, an SMS sender ID, default push icon and badge — applied everywhere unless a specific notification overrides them. Configure quiet hours with start, end, timezone and a marketing-only flag, and set marketing rate limits per channel so a campaign cannot accidentally hit a learner ten times in a day.
Tenant-level email from-name, from-email and reply-to
SMS sender ID and push default icon and badge
Quiet hours with timezone, overnight ranges and marketing-only scope
Marketing rate limits: per day and per week, per channel
Tracking, suppression, webhooks — the production layer
Every notification queues with a configurable max-attempts retry, every send writes a delivery log, every event lands on the notification_events table — sent, delivered, opened, clicked, bounced, failed — with provider, IP and user-agent. A suppression list captures bounces, complaints, unsubscribes and GDPR deletions. Webhook events fire on every state change so external systems stay in sync.
Queue with retries (max-attempts), retrying status, scheduled-at
Event tracking: sent, delivered, opened, clicked, bounced, failed
Suppression list with reasons (bounce, complaint, unsubscribe, GDPR)
Webhook events for notification and campaign state changes
From provider keys to first send in three steps
Notification settings live under their own admin section. Plug in providers, decide which channels are on, and the platform's pre-wired templates start firing on the events you already have.
Plug in your providers
Add provider configs for the channels you want — SendGrid keys, Twilio creds, FCM service account, Slack webhook. Each channel can carry multiple providers with priority for automatic failover.
Customise templates and channel defaults
Open any of the 110 default templates and tweak the email subject, body, SMS copy or push body. Set tenant-wide from-name, from-email, SMS sender ID and push icon. Templates are versioned, so revisions stay traceable.
Tune toggles, quiet hours and rate limits
Disable a notification group, override a single event, set quiet hours per timezone, and cap marketing volume per day and per week. Save once and the rules apply across every send going forward.
Notifications FAQ
How notifications work in Edushade — channels, providers, templates, settings, tracking and the differences from announcements.
Can't find what you're looking for?
Contact SalesStart Building Learning Your Way
Set up courses, programs, and learning experiences without forcing your process into rigid software. A connected system for students, educators, and administrators.
Build Your Academy