Governance & platform

Notifications

The event-driven, templated email delivery pipeline.

Updated 2026-06-238 sections3 min readFor the marketing team

1In one sentence#

The Notifications module is LumosCRM's outbound messaging pipeline — when something important happens (an event reminder is due, a document signature is requested, a vendor brief goes out), it turns that event into a templated, queued email, tracks whether delivery succeeded, and records every message sent.

It's the plumbing that makes the CRM reach out — reliably, on template, and auditably.

2Who it's for#

Mostly invisible to end users — they experience it as the emails that just arrive at the right time. It matters to:

RoleWhat they get
OperationsConfidence that reminders and notifications actually go out.
ComplianceA record of every message sent, to whom, and whether it landed.
EngineeringA clean, event-driven delivery layer other modules hook into.

3The core idea: events in, tracked messages out#

Other modules don't send emails themselves — they raise an event, and the Notifications module handles delivery:

   A module fires an event
   (reminder due · signature requested · brief sent · …)
                 │
        Notification listener
                 │
     Templated email, queued for delivery
                 │
   Sent ──▶ delivery status tracked ──▶ message recorded (audit)

This keeps every other module simple ("just announce what happened") while delivery, templating, tracking, and logging live in one place.

4Capabilities at a glance#

CapabilityWhat it means
Event-drivenModules raise events; notifications are sent in response — no module sends mail directly.
Templated emailMessages are rendered from templates for consistent, branded output.
Queued deliveryEmails are sent via the queue, so the app never blocks waiting on mail.
Delivery trackingEach message's delivery status (sent/failed) is tracked.
Message recordEvery notification is stored as a record, with an audit log.
DeduplicationA dedup key prevents the same notification being sent twice.
Classification-awareSensitive notifications are handled according to their classification.

5What triggers notifications today#

The pipeline responds to key business events across the CRM, including:

  • Event reminders becoming due (the pre-event brief, day-of reminder, feedback request, etc., from the Events module).
  • Document signature requests and reminders.
  • Vendor briefs being sent to shortlisted suppliers.
  • Other module events wired to announce themselves after their data is safely committed.

Each is delivered as a templated email to the resolved recipient (client, staff, or vendor), and the outcome is tracked.

6Reliability & governance#

  • After-commit dispatch: notifications fire only after the triggering change is safely saved, so a message is never sent for something that didn't actually happen.
  • Status tracking: the pipeline records whether each message was sent or failed, using the mail framework's delivery signals.
  • Deduplication: a dedup key stops duplicate sends.
  • Audit: every message is logged for accountability and compliance.

For marketing: the live delivery channel today is email. Other channels (WhatsApp, SMS, push, in-app) are referenced by the modules that schedule reminders and are designed to activate as those delivery integrations come online — describe non-email channels as planned, not live.

7Use cases & scenarios#

Use case A — The reminder that just arrives#

An event manager schedules a "pre-event brief" reminder. The Events module fires it when due; the Notifications module renders the templated email and sends it to the assigned staff — tracked and logged.

Use case B — Chasing a signature#

A document needs signing. A signature reminder event triggers a templated nudge to the signer, and the message is recorded.

Use case C — Briefing vendors#

A sourcing team sends a brief to four shortlisted vendors; each receives a tailored, templated email, and the pipeline records the four sends.

8Glossary#

TermMeaning
Event-drivenSending in response to a business event rather than a direct call.
Templated emailA message rendered from a reusable template.
Queued deliverySending via a background queue so the app stays responsive.
Delivery statusWhether a message was sent or failed.
Dedup keyA guard that prevents the same notification being sent twice.

This document describes the Notifications module as currently built: an event-driven, queued, templated email delivery pipeline with delivery tracking, deduplication, and a full message audit log. Non-email channels are planned, not live.