This article lists the different transaction types that are compatible with ZoneApprovals and how to enable approval routings on the different transaction types.
Introduction
ZoneApprovals can be used to enable approval routings on specific transaction types. By default, the SuiteApp isn't deployed to any transaction type. This document explains how a user can deploy the approval logic to specific transaction types.
NetSuite Dependencies
ZoneApprovals uses for specific transaction types NetSuite's default approval routing and configuration settings. The deployment tool is designed to guide the end user if specific routing or features aren't enabled. When the "Deploy" button is greyed out the user can hover over it to get more detailed information that identifies what must be changed in NetSuite.
More information regarding NetSuite dependencies can be found on the page NetSuite Dependencies.
Deploying Approval Scripts
General Information
ZoneApprovals comes with an automatic deployment feature. We recommend using the automated deployment so that all the logic and steps are set and deployed correctly. By default, the SuiteApp doesn’t deploy any scripts and the user must deploy the approval logic to each transaction type individually. It is recommended to only deploy the logic to the transaction types on which the logic is actually needed to reduce the potential footprint and be assured that no additional logic or processing power from NetSuite is used.
Automated Deployment
To deploy the ZoneApprovals logic to a transaction type navigate to SETUP->ZONE APPROVALS->DEPLOYING. The page that opens shows the user a table with all the supported transaction types and the current deployment status.
To deploy the approval logic to a transaction type simply press the button "Deploy". If the button is colored in a greyish color instead of a green color it means that deployment isn't possible. In this case, hover over the button to get guidance on why deployment isn't possible.
When the button is pressed the page will directly show that ZoneApprovals is deploying the logic and the status updates in realtime. Depending on your NetSuite environment it could take a while before completed.
Automated Un-Deployment
To undeploy the approval logic that is active on a specific record type simply press the button "Undeploy". If the button is colored in a greyish color instead of a blue color it means that undeployment isn't possible. In this case, hover over the button to get guidance on why undeployment isn't possible.
When the button is pressed the page will directly show that ZoneApprovals is undeploying the logic and the status updates in realtime. Depending on your NetSuite environment it could take a while before completed.
System Notes
The deployment page allows the user to quickly and easily see the system notes from the deployment. When the user presses the plus icon at the beginning of the page the table will expand and show the system notes from that particular transaction type. To close the system notes simply press on the minus icon.
Supported Record Types
The following transaction types are currently supported by ZoneApprovals:
- Expense Reports
- Purchase Orders
- Vendor Bills
- Customer Invoices
- Journal Entries
- Sales Orders
- Credit Memos
- Advanced Intercompany Journal Entry
- Requisitions
Micro Training Video: Enable & Deploy Approval Routing on Additional Transaction Types
<Warning
Do not include the predefined keywords in the email template to avoid unexpected behavior with approving or rejecting a transaction
Below is an example how a potential template could look like. Make sure the subject holds the special transaction.id tag and should look for example like this:
#${transaction.id} is waiting for your approval
Important
When creating a custom template the subject must include the tag #${transaction.id}. When this tag is not included the approval by mail will not work.
Boiler Template
Below you will find a boiler template that is a fully responsive email template where as an end user you only need to change the company logo and if needed the social media hyper links. To use the template open it in a regular text editor and copy the contents of the file and past it into the NetSuite design. Do not forget to set the NetSuite editor to HTML.
Template Preview |
Template Code |
Advanced template with HTML code | |
See "Approvals Basic.html" at the bottom |
|
Standard template with plain text | |
Hello NEXT_APPROVER, A ${transaction.type} with the ID #${transaction.id} has been entered in NetSuite that needs your approval. Please, review it and reply with your keyword for approval or rejection as quickly as possible. You can add your approval/rejection reason between #tags Example: YES #this transaction is valid# Why this email. The internal processes have decided that for this transaction your approval is needed. How you can take an action is explained below. Reply to this email with the predefined keywords Login to NetSuite and view the record here: ${transaction.url} If you have questions, please, contact the system administrator. Kind Regards Zone&Co |
Default Tags
NetSuite offers some default tags that can be used to further enhance the email template. The most common options are listed in the table below with the HTML code that can be used in the email template.
Tag | Explanation |
To view and approve the record in NetSuite, <a href="${transaction.url}">Click HERE.</a> | This provides a clickable hyperlink that directs the receiver directly to the transaction inside NetSuite. |
Template Data
ZoneApprovals comes with some special automation that can populate specific data based on “Special Tags” that are defined in the template. When a special tag is inside the template it will be replaced with the actual data it represents. Below is a list of the existing special tags and their purpose.
Special Tag | Explanation |
NEXT_APPROVER | This tag will be replace with the full name of the next approver that receives the email |
Approve by Email
When a user receives an email to approve a transaction then this employee can respond to the email with a magic keyword to approve or reject the transaction. It is also possible to provide a reason for the approval or rejection. The user should wrap the reason between hashtags (#). For example a response could look like this: Rejected #The rate on the invoice is incorrect and should be 124#. ZoneApprovals will always store a potentially provide reason, but does not respect the option to make a reason mandatory.
Forwarding Approval Emails
The system has a build in protection that will not allow to forward the approval email to another employee to approve. If this will happen 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.