Email Template Builder
- Accessing Email Template Builder
To use the Email Template Builder, users must log in to the HRMS application using valid credentials. After successful login, users need to navigate to the Admin Configuration section available in the left-side menu and select Email Template Builder (ETB). The system ensures that only authorized users with appropriate permissions can access this module. Once selected, the ETB page loads with all required UI components such as dropdowns, workflow tree, template editor, and template list.

- Understanding the ETB Interface
The system ensures that breadcrumb navigation, page title, and organization selection are always visible and remain consistent even after page refresh, allowing users to navigate easily and maintain context.
The ETB interface is designed to provide a structured and intuitive experience. It includes fields such as Module, Module Page (Event), Type, Workflow, Name, Description, Status, Subject, and Body editor. A Template Variables panel is available on the right side for inserting dynamic placeholders. The lower section displays a list of templates with options such as Edit, Preview, Delete, Search options.

- Creating a New Email Template
To create a template, users must select a Module, Module Page (Event), and Approval/Notification Type. Based on these selections, the system determines whether a workflow is applicable. If a workflow exists, users must select it and choose specific workflow nodes.
The system enforces validation rules to ensure that templates cannot be created unless all mandatory fields, including Subject and Body, are completed. If any required field is missing, validation messages are displayed and the Save action is restricted.

- Auto-Population of Name and Description
The system automatically generates the Name and Description fields based on the user’s selections, including workflow, type, and node selection. This auto-generation ensures consistency and reduces manual effort. If a workflow is not available, the system constructs the name using the selected module and event. Additionally, the name updates dynamically whenever the user changes workflow or node selections, ensuring that the template name always reflects the latest configuration.
Example Scenario:
- Module: Leave & Attendance
- Event: LeaveRequest
- Approval & Notification Type: Notification Only
- Workflow Name: Leave request
- Select Nodes: Initiator, HR
Generated Name:
Comp-Off request by Leave request_Notification Only_I_H
Generated Description:
Leave request_Notification Only_I_H
System Behaviour:
- Name updates dynamically when nodes are selected/deselected
- Node initials are appended automatically
- If workflow is not available, system generates:
Leave request_Notification Only

- Workflow Handling and Tree Structure
When a workflow is selected, the system displays it in a tree structure, where each node represents a stage in the process. These nodes are visually represented as workflow bubbles for better clarity. Users must select one or more nodes to assign templates. The system ensures that nodes already associated with an existing template are automatically disabled and cannot be selected again, preventing duplication. If all nodes within a workflow are already used, the system disables node selection entirely and restricts template creation with same data.
Example:
Workflow Name: Leave request.
Structure:
- Level 1 Approver > --
- Notifications > Initiator, HR
System Behavior:
- Used nodes > Disabled (non-selectable)
- Available nodes > Selectable
- Expand/Collapse supported
- Workflow updates reflect immediately

- Template Assignment to Workflow Nodes
The system ensures that each email template is mapped specifically to the selected workflow node. This means that only the selected node will trigger the associated email template, while other nodes continue to use their respective assigned templates. Users can create separate templates for different nodes, enabling flexibility in communication design. If an existing template is deleted, the associated nodes become available again for reuse, ensuring efficient template management.
Example:
- Level 1 Node > “Request Initiated” email
- Level 2 Node > “Request Approved” email
System Behavior:
- Templates are node-specific
- Updating one node does not affect others
- Deleting template frees node

- Template Variables and Dynamic Content
Template variables are dynamically loaded based on the selected module, workflow, and type. These variables are displayed in alphabetical order within a dedicated panel and can be inserted into the subject and body of the email. The system ensures that the variable count updates automatically when selections change. During preview, all variables are replaced with sample values to provide a realistic representation of the final email. This helps users validate content before saving.
Example Variables:
- {{EMPLOYEENAME}} > John Doe
- {{CREATORNAME}} > HR Admin
- {{REQUESTDATE}} > 10-Apr-2026
Example Email:
Subject:
Leave Request Submitted by {{EMPLOYEENAME}}
Preview:
Leave Request Submitted by John Doe
System Behavior:
- Inserted at cursor position
- Preview replaces variables
- Undo restores deleted variables


- Template Editor (Design, HTML & Preview Tabs)
The Email Template Builder provides three main tabs: Design, HTML, and Preview. The Design and HTML tabs are fully synchronized, ensuring that any changes made in one tab are reflected in the other without data loss. The system preserves all formatting, including fonts, colours, tables, and layouts, when switching between tabs. The Preview tab displays the final version of the email with sample data, ensuring accurate representation of content, images, and tables. The preview mode is read-only, and editing is not allowed in this mode.
System Behavior:
- Design - HTML sync without data loss
- Formatting persists (font, colour, tables, images)
- Preview is read-only
Example:
Design Input:
Dear {{EMPLOYEENAME}}
Preview Output:
Dear John Doe



- Template Actions (Save, Edit, Delete, Reset, Preview)
The system provides multiple actions for managing templates. The Save action allows users to create a new template after completing all validations. The Edit action enables users to modify existing templates, including subject, body, and workflow nodes, while retaining the template’s status (Active/Inactive). The Delete action removes the template and frees associated workflow nodes for reuse. The Reset action clears all entered data, restoring default values. The Preview action displays the final email output in read-only mode, allowing users to verify content before saving.
System Behavior:
- Data persists after save
- Status retained (Active/Inactive)
- Nodes updated dynamically



- Managing Templates from Workflow Dashboard (Workflow Dashboard Integration)
The system allows users to manage templates directly from the Workflow Dashboard. If a template is already defined, users can update it seamlessly. If the status is “Not Defined,” users can create a new template directly from the dashboard. In cases where templates fall under “Notification Only,” selecting the option opens the template in update mode with pre-filled data, allowing quick modifications.
System Behavior:
- Defined > Editable
- Not Defined > Creatable
- Notification Only > Opens in update mode



- Validations and Restrictions
The system enforces strict validation rules to ensure data accuracy. Mandatory fields must be completed before saving a template. Validation messages are displayed below the respective fields and are cleared automatically once valid inputs are provided. The system prevents saving templates without a body and ensures dropdown fields accept only predefined values. If workflow selection is required and not provided, template creation is blocked.
Example Scenarios:
- Missing Workflow > Save blocked
- Missing Body > Save blocked
- Invalid input > Not allowed
System Behavior:
- Errors shown below fields
- Cleared after correction

- Template Data Behavior and Persistence
The system ensures that the latest created templates appear at the top of the list for easy access. In view mode, the subject and body are displayed accurately with proper binding of content. Any updates made to templates are saved successfully and persist when the template is reopened. The system also ensures that the selected status (Active/Inactive) is retained during editing and after saving.
The system ensures:
- Latest template appears at top
- Subject & body displayed correctly
- Updates persist after save
- Status retained
Example:
Template with Subject “Leave Approved” remains unchanged after reopening
- UI Behaviour and Usability Enhancements
The system enhances usability through various UI features. The selected template is highlighted during edit or view actions for better visibility. Tooltips are displayed for key elements such as buttons and fields to guide users. Scrolling is restricted to specific sections like the workflow tree to maintain layout consistency. Additionally, when a popup is displayed, background scrolling is disabled to keep user focus on the active action.
The system enhances usability through:
- Highlighted selected rows
- Tooltips
- Restricted scrolling
- Disabled background on popup
- Stable page refresh



- Search and Number List.
The Email Template Builder provides robust search and clearing capabilities. Users can perform quick searches and apply filters based on Name, Module, Workflow, and Status to locate templates efficiently. Number list is provided to manage number of List of large datasets and ensure smooth navigation.
Users can:
- Search templates quickly
- View the number of Templates and scroll accordingly.
System Behaviour:
- Search Works efficiently
- Easy to navigate through list of templates by scrolling.

- Workflow Creation and Special Scenarios
If workflow is not available:
Example:
Module: My Details
Event: EmployeeRetirementNotification
System Behaviour:
- User creates workflow
- Workflow becomes available in ETB
Workflow Creation and saving.
Displayed in workflow Name dropdown option after creation.



- Node Control and Duplicate Prevention
The system strictly controls node usage.
Example:
Node HR already used > Disabled
Duplicate creation > “Template Already Exists”
System Behaviour:
- Save disabled if all nodes used
- Save > Update when editing
