Email Notification Service
Component Detail
Service Layer
medium complexity
backend
2
Dependencies
2
Dependents
4
Entities
0
Integrations
Description
Dispatches transactional and operational emails to users via a configurable email provider (SendGrid or Resend). Applies organization-specific sender addresses and HTML/text templates, enforces GDPR unsubscribe mechanisms for non-transactional messages, and records delivery status.
email-notification-service
Responsibilities
- Compose and send transactional emails (invitation links, password reset, activity confirmation, reimbursement confirmation)
- Apply organization-specific branding, sender address, and template variables
- Enforce GDPR unsubscribe links for non-transactional email categories
- Report delivery status and bounce events back to the notification log
- Check user notification_preferences before dispatching to respect opt-outs
Interfaces
sendTransactional(userId, templateId, variables): Promise<DeliveryResult>
sendMarketing(userId, templateId, variables): Promise<DeliveryResult>
handleBounce(webhookPayload): void
handleUnsubscribe(userId, category): void
resolveTemplate(templateId, orgId): EmailTemplate
Relationships
Dependencies (2)
Components this component depends on
Dependents (2)
Components that depend on this component
Related Data Entities (4)
Data entities managed by this component