General Information
ZoneApprovals provides the option to enable approval by email, allowing employees to approve or reject transactions without logging into their NetSuite environment. The feature's enablement is described on the Approval Configuration page. This article explains the email approval process, focusing mainly on the email message sent and its customization options.
The email approval process is defined by two key elements in the Approval Configuration:
- Predefined approve and reject keywords: These strings allow the system to recognize whether an action is an approval or a rejection.
- Email template selection: This determines the look and functionality of the notification email sent to the approver.
Email Approval Process Flow
When an approval email is sent, the approver can complete the action in two ways, depending on the email template used:
- Using Action Buttons (Recommended): The approver simply clicks the Approve or Reject button directly in the email. This automatically generates a reply email with the correct predefined keyword included. The approver only needs to click Send to finalize the action.
- Manual Typing: The approver clicks Reply and must manually type the exact predefined approve or reject keyword into the body of the email before clicking Send.
Once the reply email is successfully sent, the ZoneApprovals system processes the transaction, approving or rejecting it in NetSuite on behalf of the approver.
Approval Email Setup and Templates
Which email template is used is defined in each Approval Configuration record in the Email Template field.
Default Basic Template
If no template is selected, the application sends out a basic email notification. This is the default option and requires the approver to use the manual typing method.
Template with Action Buttons (Recommended)
ZoneApprovals comes with a sample template, FFA E-Mail Approval Request Template, that includes the action buttons for a faster, error-free approval process.
How Button Approvals Work
This template includes two clickable action buttons: Reject and Approve.
- The approver clicks the Approve (or Reject) button in the notification email.
- A reply email is auto-generated by their email client, with the corresponding predefined approve (or reject) string already present in the body.
- The approver can optionally add a reason or comment, and then clicks Send to confirm the action.
This method eliminates the need to manually type or memorize the predefined keywords.
Customizing Email Templates
The scriptable email template uses FreeMarker code that allows for interactive data to be sourced dynamically from the transaction requiring approval.
The below image shows the FreeMarker syntax and other special tags such as NEXT_APPROVER that are utilized in the provided email template.
Customizing the FFA E-Mail Approval Request Template
The provided FFA E-Mail Approval Request Template contains placeholders for your company logo and social media links, in addition to the transaction information, approval instructions and the Approve/Reject buttons.
To customize this template, it is strongly recommended to create a new template record to preserve the original sample provided with the application.
To customize the email template:
- Go to Documents > Templates > Email Templates.
- Click the name of the template "FFA E-Mail Approval Request Template".
- Hover over Actions and click Download Template. Save the HTML file to your preferred location.
- Hover over Actions again and click New.
- Enter Name, ID, and Description for the new custom template.
- Click the Template subtab.
- In the Subject field, enter the email subject.
Note: ZoneApprovals automatically adds the transaction ID to the email subject. - Select Text Editor and switch to the Source Code mode (<>).
- Copy the code from the saved template file (from Step 3) and paste it into the source code editor.
- Customize the template as desired (e.g., replacing logo links, updating text strings).
- Click Save.
Customization Examples
-
Company Logo: To insert your company logo, substitute the link in line 54 with the link to your company logo (e.g., stored in the File Cabinet).
-
Social Media Links: To adjust a social media link, substitute the LinkedIn link in line 133 with the desired URL. To enable other social media links, remove the comment tags (highlighted in orange).
-
Clickable Transaction Link: The following code can be included in the template (in Source Code mode) to provide a clickable link that takes the approver to the transaction in NetSuite.
To view the record in NetSuite, <a href="${transaction.url}">Click HERE.</a> -
NEXT_APPROVER: This tag, provided by ZoneApprovals, is replaced with the employee name (first name and last name) in the sent email notification. It can be placed also anywhere else within the template.
Note: If Auto-Generated Numbers are enabled for Employee records, only the Employee ID record number is displayed.Template code Actual email notification Hi NEXT_APPROVER,
A new transaction with the ID...
Hi John Doe,
A new transaction with the ID...
Guidelines for Approving by Email
Predefined Keywords
When a user receives an email to approve a transaction, the system checks for a predefined keyword in the body of the reply email.
- Using Action Buttons: This is handled automatically.
- Without Action Buttons: The user must reply to the email with the predefined keyword.
Warning
Do not include the predefined keywords in the email template to avoid unexpected behavior with approving or rejecting a transaction.
Reply Email Subject
The subject of the reply email is generated automatically by ZoneApprovals and ensures the reply email will be captured by the system regardless of the email template used.
Warning
Do not remove or rewrite the auto-generated subject of the reply email. Doing so will result in the approve or reject action not being recognized by the system.
Reason for Approval or Rejection
It is also possible to provide a reason or comment for the approval or rejection. The user needs to wrap the reason between hashtags (#). For example, a manual reply could look like this:
Rejected #The rate on the invoice is incorrect and should be 124#
Approved #I approve this message#
ZoneApprovals will always store the reason if provided, but does not respect the option to make a reason mandatory when approving via email.
Forwarding Approval Emails
The system has built-in protection that will not allow the approval email to be forwarded to another employee for action. If this happens, the system will ignore the email from the forwarded employee and will not provide a notification that the request was not processed due to security reasons.