Project Management
/Birthday Email Automation
Birthday Email Automation
The Birthday Email Automation automatically sends personalized birthday greetings to contacts who celebrate their birthday on the current date. It works through two linked scheduler tasks in the Main Scheduler module and uses the Email Templates module for customizable messages.
1. Overview
The automation consists of two automated tasks:
- Contacts Birthdays Notifications Generation – executes the SQL function notify_birthdays_today to identify whose birthday is today and create notification records.
- Contacts Birthdays Notifications Sending – sends all pending birthday notifications by email, based on records generated by the first process.
Each contact with a valid email address automatically receives a personalized message using the configured email template.
2. SQL Function: notify_birthdays_today
The function notify_birthdays_today checks for contacts whose birthdays match today’s date and inserts new reminders into the notify_automation_reminders table.
- Looks for an email template named happy_birthday.
- If found, replaces the variable ~~name~~ in both subject and content with the contact’s actual name.
- Creates one record per contact in notify_automation_reminders with status_id = 1 and notification_key = 'birthday_reminder'.
- If the template is missing or the contact has no email, the function skips that record.
3. Email Template Setup
To activate the automation, create an email template in the Email Templates module:
- Name: happy_birthday
- Subject: 🎉 Happy Birthday, ~~name~~ — Wishing You Inspiration and Joy!
- Contents: Customizable HTML design. One variable is supported: ~~name~~.

4. Scheduler Configuration
Both automations are managed in the Main Scheduler module.
They should appear as follows:
| # | Name | Function Type | Function / Query | Interval | Dimension | Status |
|---|---|---|---|---|---|---|
| 1 | Contacts Birthdays Notifications Generation | SQLFunction | notify_birthdays_today | 1 | Days | Active |
| 2 | Contacts Birthdays Notifications Sending | IssueProcessStep | notify_automation_reminders|status_id|1|2|status_id = 1 AND notification_key = 'birthday_reminder' | 1 | Days | Active |
💡 Example schedule: generation at 13:06, sending at 13:10.
5. Example Email Result
When the automation runs, contacts with birthdays on that day will receive an email similar to the one below:

6. Summary
- Ensure an email template named happy_birthday exists.
- Verify that both scheduler tasks are active in Main Scheduler.
- The system automatically checks for birthdays daily and sends personalized greetings.
- Each message uses the contact’s name dynamically in both the subject and content.
- No manual intervention is required after setup.