Skip to content

Email Notifications

Overview

This user story covers the functionality for customizable email templates for credential offers with branding options and dynamic content insertion, enabling staffing companies to maintain their brand identity in communications.

User Stories

Customize Email Templates for Credential Offers

As a staffing company administrator,
I want to customize the email templates for credential offers,
So that they reflect our company's communication style and branding.

Acceptance Criteria: - Given I am logged in as a staffing company administrator - When I access the email template customization interface - Then I should see a template editor for credential offer emails - And I should be able to customize the email subject line - And I should be able to customize the email body content - And I should be able to insert dynamic content placeholders: - {{candidate_name}} - Candidate's full name - {{credential_type}} - Type of credential being offered - {{company_name}} - Staffing company name - {{job_title}} - Job title from the credential - {{offer_link}} - Link to claim the credential - {{qr_code}} - QR code for mobile claiming - {{expiration_date}} - When the offer expires - And I should be able to apply company branding (colors, logo) - And I should be able to preview how emails will appear to recipients - And I should be able to save templates for future use

Apply Company Branding to Email Templates

As a staffing company administrator,
I want to apply my company's branding to email templates,
So that credential offers maintain consistent brand identity.

Acceptance Criteria: - Given I am customizing an email template - When I access branding options - Then I should be able to: - Upload and position my company logo - Select brand colors for headers and buttons - Choose fonts that match my brand guidelines - Add a custom footer with company information - Include social media links - And the branding should be automatically applied to all email templates - And I should be able to preview the branded email - And the branding should be consistent with other platform communications - And the system should enforce image size and format requirements for logos

Preview Email Templates

As a staffing company administrator,
I want to preview email templates before they are used,
So that I can ensure they look correct and professional.

Acceptance Criteria: - Given I am editing an email template - When I click "Preview" - Then I should see how the email will appear to recipients - And the preview should show the email with sample data - And the preview should display correctly on both desktop and mobile views - And I should be able to send a test email to myself - And I should be able to make edits and preview again - And the preview should include all dynamic content properly formatted

Send Credential Offer Emails

As a staffing company user,
I want to send credential offer emails to candidates,
So that they can be notified about available credentials and know how to claim them.

Acceptance Criteria: - Given I have created a credential offer - When I choose to send the email notification - Then the system should use the customized email template - And the email should be sent to the candidate's email address - And dynamic content should be properly populated - And the email should include a clear call-to-action to claim the credential - And the email should include multiple claiming options (QR code, web link, mobile link) - And the email should include instructions for first-time users - And the system should track email delivery status - And I should receive confirmation when the email is sent

Track Email Delivery Status

As a staffing company user,
I want to track the delivery status of credential offer emails,
So that I know whether candidates have received their notifications.

Acceptance Criteria: - Given I have sent credential offer emails - When I check the email status - Then I should see delivery status for each email: - Sent - Email was successfully sent - Delivered - Email was delivered to recipient's inbox - Opened - Recipient opened the email - Clicked - Recipient clicked the credential link - Bounced - Email delivery failed - Spam - Email was marked as spam - And I should be able to resend emails that failed to deliver - And I should receive alerts for high bounce rates - And I should be able to export email delivery reports

Handle Email Delivery Failures

As a staffing company user,
I want to be notified of email delivery failures,
So that I can take alternative action to contact candidates.

Acceptance Criteria: - Given an email delivery fails - When the system receives a bounce notification - Then I should be notified of the delivery failure - And I should see the reason for the failure (invalid email, mailbox full, etc.) - And I should be able to update the candidate's email address - And I should be able to resend the email to the corrected address - And I should be able to use alternative contact methods (SMS, phone) - And failed deliveries should be logged for reporting purposes

Manage Email Templates

As a staffing company administrator,
I want to manage multiple email templates,
So that I can use different templates for different types of credentials or situations.

Acceptance Criteria: - Given I have access to email template management - When I view my templates - Then I should see a list of all saved templates - And I should be able to create new templates - And I should be able to edit existing templates - And I should be able to duplicate templates as starting points - And I should be able to delete unused templates - And I should be able to set a default template for credential offers - And I should be able to organize templates by category or type - And template changes should be versioned for audit purposes

Technical Notes

Integration Requirements

  • Integration with email service provider (SendGrid, AWS SES, or similar)
  • Template storage in the database with versioning
  • Dynamic content rendering engine
  • Email delivery tracking and webhook handling
  • Integration with the EmailTemplate entity

Email Service Configuration

Required environment variables:

EMAIL_SERVICE_PROVIDER=sendgrid  # or aws-ses, mailgun, etc.
EMAIL_API_KEY=your-email-service-api-key
EMAIL_FROM_ADDRESS=noreply@yourcompany.com
EMAIL_FROM_NAME=Your Company Name
EMAIL_WEBHOOK_URL=https://your-platform.com/webhooks/email

Template Variables

Standard template variables that should be available: - {{candidate_name}} - Full name of the candidate - {{credential_type}} - Type of credential (e.g., "Past Employment") - {{company_name}} - Name of the issuing company - {{job_title}} - Job title from the credential - {{employment_period}} - Start and end dates of employment - {{offer_link}} - Web link to claim the credential - {{qr_code}} - QR code image for mobile claiming - {{expiration_date}} - When the credential offer expires - {{support_email}} - Contact email for support - {{company_logo}} - Company logo image

Dependencies

  • Organization onboarding and branding configuration
  • Email service integration
  • Credential issuance functionality
  • Template storage system

Priority

Medium - Important for company branding and user experience, required for first project drop