Service Layer medium complexity backend
0
Dependencies
0
Dependents
1
Entities
0
Integrations

Description

Backend service that dispatches transactional email and SMS messages for events such as password resets, invitations, approval results, and certification reminders. Renders organization-configurable templates and respects per-user delivery preferences and unsubscribe choices for non-essential messages.

Feature: Email/SMS Notifications

email-notification-service

Sources & reasoning

Subprocessor list confirms Mailgun is planned for transactional email and SMS provider is explicitly tracked as not yet in use. Phase classification follows the 'planned' status - beyond MVP but part of core notification coverage, hence Core Product.

Responsibilities

  • Render transactional message templates with tenant-specific terminology and tone
  • Route messages to the appropriate channel (email now, SMS as future expansion)
  • Enforce per-user delivery preferences and unsubscribe rules for non-essential messages
  • Submit prepared messages to the Email Gateway and track delivery status
  • Log dispatch attempts and failures for audit and retry handling

Interfaces

sendTransactionalEmail(userId, templateId, payload): DispatchResult
sendSms(userId, templateId, payload): DispatchResult
renderTemplate(templateId, tenantId, payload): RenderedMessage
updateUserPreferences(userId, preferences): void
handleUnsubscribe(token): UnsubscribeResult

Related Data Entities (1)

Data entities managed by this component