There may be several instances in your business when certain actions need an approval from one or more senior decision-makers. For instance, sales reps offering product discounts to customers need the approval of their manager before they do so. Marketers planning a campaign may need the approval of the Marketing head as well as the Finance head to go ahead with the campaign.
In your CRM database when there are loads of decisions to be approved, it becomes a tiresome task to sort through records and send them for someone’s approval. Zoho CRM’s workflow approval process makes this easier by automating the entire approval process.
Users with the Manage Workflow profile permission can set up approval process by specifying criteria based on which records will be sent for approval. You can also include a set of actions that will be performed on approval and rejection.
Permission Required: Users with Manage Workflow permission can access this feature. The Approvals tab will be available to all.
Add an Approval Process
Each approval process is associated to a rule that defines the process. You need to specify the rule criteria, the approval authority and also actions that need to be carried out on approval or rejection.
To add an approval process
- Go to Setup > Automation > Approval Processes.
- In the Approval Process List page, click AddApprovalProcess.
- In the New Approval Process page, do the following:
- Select the Module to which you want to apply the approval process.
- Specify a Name and Description for the approval process.
- Select the following option(s) based on which the approval process will be executed.
- Record Creation - Approval process will be triggered when a record is created.
- Record Edit - Approval process will be triggered when a record is edited.
- Click Add Rule to this Process.
- Specify the RuleCriteria. Approval process will be applicable to the records that meet the criteria.
Adding criteria is mandatory. You can edit the criteria pattern manually, if required.
- Under Who should Approve, select Users, Roles, Groups or Levels from the drop-down lists.
Levels are listed based on the number of levels defined in your organization's role hierarchy. When you select levels, the approving authority is applied for the record based on its owner's level in the role hierarchy. For example: The user who is the record's owner, has three superior roles and the Approval Process asks for 2 levels of approval. In this case, the record needs to be approved by a user each from the immediate two superior roles.
- Click the Add icon to include more users who need to approve. On adding more than one entry for approval, you will get the following options:
- Anyone - Select this option if you want any one of the members to approve.
- Everyone - Select this if your want all the members to approve. You can either set the multiple approvals to be parallel or sequential.
- Sequential - All the users need to approve in a sequence. Only after first user approves will the second user be able to approve.
The user mentioned first, on the top of the list, will be the first person to approve the record followed by the next user and so on.
- Parallel - All the users need to approve. They can approve simultaneously. There is no sequence in which they need to approve.
- Specify the Action on Approval that includes adding a task, updating fields, sending email alerts, calling webhooks and custom functions.
- Specify the Action on Reject that includes updating fields, sending email alerts, calling webhooks and custom functions.
- Click Done and then Save.
- You may create multiple rule entries for an approval process. Make sure you reorder the rule entries based on its priority. The first rule entry that matches the record will be applied to the record.
- For each module, a maximum of 10 approval processes can be active. In each approval process, you can add up to 5 rule entries.
- Under Who should Approve, you can select 10 entries. You can either select users, roles, groups or levels. If you select a role with no users associated to it, the record will be automatically marked as approved in that particular level.
- When a role is selected as the approval authority, the manager of the role is the one who can approve the record. In case there is no manager assigned to the role, the record can be approved by the first user listed in that role. For Groups, the case is similar. The first user listed in the group needs to approve the record.
- Users with Administrator profile can view all the records that are waiting for approval in the organization. Administrator can also approve or reject the records at anytime.
- You can create a set of actions on approval and rejection. These actions include sending email alert, updating field, assigning task, calling webhooks and calling custom function.
- When a record is waiting for approval, the Convert, Delete and Edit options are disabled. The record will be marked as Waiting for approval and an option to Respond (Approve, Delegate or Reject) will be available in the record's details page.
- You can view the locked records in the list view.
- When a couple of records are waiting for approval, and the approval process is modified, the changes made to the process along with its actions will not be applicable to those records that are already for approval.
- If records are waiting for approval based on an approval process, you will not be able to delete that approval process. If required, you can deactivate it.
- If a record meets more than one rule entry, it will be submitted for approval based on the first rule entry that it matches in the given approval process.
- Records that are rejected can be submitted again for approval from the record details page.
Associate Actions on Approval/Rejection
With each approval process, you can associate some actions such as adding a task, updating fields, sending email alerts, calling webhooks, etc. that will be executed on approval or rejection of a record. When you set multiple stages of approval that involves more than one user to approve the record, you can assign a task and also update a field after each approval. Whereas, email alerts, webhooks and custom functions can be added only to be triggered after the final approval.
Actions on rejection do not include all the 5 of them. You cannot associate a task on rejection. The Assign Task option is to set a task for the next user who needs to approve the record. The task ideally is to check the records waiting for their approval. In case of a record being rejected, assigning a task is not required.
- While creating an approval process, under Actions on Approval, click on the AssignTasks section.
Already created tasks, if any, will be listed. You can select one to associate it and skip to step 4.
- Click NewTask.
You can also select one from the already existing tasks and associate it.
- In the Assign Task popup, do the following:
- Enter a Subject for the task.
- Select the number of days from the drop-down list to set the DueDate for task.
- Select the Status and Priority of the task from the respective drop-down lists.
- Select the Notify Assignee checkbox, if required.
A notification email, informing the user about the task, will be sent only to active and confirmed user.
- Specify a Description for the task.
- Click Save & Associate.
- While creating an approval process, under Actions on Approval/Reject, click on the Update Fields section.
- In the Update Fields popup, do the following:
- Choose a field to update from the drop-down list.
- Specify the Value that you want to update on each level on approval.
- Click Done.
- While creating an approval process, under Actions on Approval/Reject, click on the Send Alerts section.
Already created alerts, if any, will be listed. You can select one to associate it and skip to step 4.
- Click NewAlert.
- In the Send Alert popup, do the following:
- Enter a Name for the alert.
- Select the Email Recipients for the alert email from the drop-down list.
You can select persons associated to the record, users, roles, rolesandsubordinates and groups.
- Specify AdditionalRecipients for the email alert in the text box.
Use comma to separate more than one email address.
- Select the Email Template that you want to use for the alert or create a template.
After selecting the template, you have to enter the From and Reply toemail addresses. Here you can choose from
- Your email address
- Your organization email address
- Current user email address
- Record owner's email address
- Other user's email address
- For Reject: The Email Template will be automatically sent as a notification from the email address email@example.com.
- Click Save & Associate.
These alerts will also be listed under Setup > Automation > Workflow > Alerts.
- While creating an approval process, under Actions on Approval/Reject, click on the Call Webhooks section.
Already created webhooks, if any, will be listed. You can select one to associate it and skip to step 4.
- Click New Webhook.
- In the Call Webhook popup, do the following: See Also Creating Webhooks
- Enter a Name and Description for the webhook.
- In the URL to Notify text box, specify the REST API URL of the third-party application.
- Select POST or GET as the type of API Method.
- Under URL Parameters - Append Entry Parameters, do the following:
- For Parameters in Standard Format, specify the Parameter Name and the corresponding Parameter Value.
This is the request parameter sent while triggering the webhook notification to third-party application.
- For Parameters in User Defined Format, specify the Parameter Name and the corresponding Value Description.
- Under URL Parameters - Append Custom Parameters, do the following:
- Specify the Parameter Name and the corresponding Parameter Value.
- Check the PreviewURL.
- Click Save & Associate.
These webhooks will also be listed under Setup > Automation > Workflow > Webhooks.
Call Custom Function
- While creating an approval process, under Actions on Approval/Reject, click on the Call Custom Functions section.
Already created custom functions, if any, will be listed. You can also select one from the already existing custom functions and associate it.
- To create custom functions and associate to the approval process, refer to Creating Custom Functions
These custom functions will also be listed under Setup > Automation > Workflow > Custom Functions.
- Once a record has been submitted for approval, a system generated notification email will be sent to the user who has to approve the record(s).
- On the approval of the record, the record owner (the user who sumbitted the record for approval) will receive an email as per the email alert configuration in the approval process. In the absence of an email alert for the record owner, a system generated email regarding the record approval will be sent to the record owner.
- In case of multiple stages of approval, you can assign a task and also update a field after each approval.
- You can associate one email alert, webhook and custom function each. It will be triggered only after the final approval, if there are multiple approval stages.
- While adding alerts, webhooks or custom functions, those created for Workflow Rules will also be listed and vice versa. You can associate them to the approval process.
Approve/Reject from the Approval Tab
Records that are lined for approval can be viewed in the Approval tab. From this tab, you can approve or reject the records that are waiting for your approval. If needed, you can also delegate the record's approval to another user. Only after the approval, you can convert, edit or delete the record.
Users with Administrator profile can view all the records that are waiting for approval in the organization. Administrator can also approve or reject the records at anytime.
To approve/reject from the Approvals tab
- Click the Approvals tab.
You will be able to see the list of records that are waiting for your approval.
- Click on a record to view the following details:
- Details of the record - You can view the details of the user who owns the record that is waiting for approval, the criteria based on which the record was sent for approval and the users who need to approve.
- History of the user's requests - This section provides the history of all the approval requests for records owned by a user.
- Click the Approve, Delegate or Reject link.
- If you click on the Approve link, specify any comments for approval and click Approve.
- If you click on the Reject link, specify any comments for rejecting and click Reject.
- If you click on the Delegate link, select a user to whom you want to transfer the record for approval and click Delegate.
- It is possible that the user who needs to approval a record does not have access to the record. In such cases too, the users will be able to approve the record.
- The tab will also list the last 5 approvals or rejections under the RecentActivities section.
- There is no set time frame within which the users need to approve/reject the record.
Reorder Approval Processes and Process Rules
When there are multiple approval processes for a module, the system checks if a record matches the criteria in an approval process in the same order in which it is listed. By default, the approval processes are listed in a chronological order with the first process created, on the top of the list. If a record meets the criteria of more than one rule entry, it will be submitted for approval based on the first rule entry that it matches in the given approval process. So based on your requirements, you can reorder the approval processes. The same is the case with the Rules in an approval process.
For example, you create an approval process (Big Deals A) for potentials with expected revenue worth 5000 USD or more. When you create another approval process later (Big Deals B), for potentials with expected revenue worth 8000 USD or more, it is listed after the first process that you created.
So when a record with expected revenue is 8500 USD is created, it will be listed for approval based on Big Deals A criteria as this approval process is listed first. Ideally, it should be available for approval based on Big Deals B. In such cases, you may need to reorder the approval processed based on its priority.
To reorder approval processes
- Go to Setup > Automation > Approval Process.
- In the Approval Process List page, approval processes for all modules will be listed.
- Click on the Module header and select the module whose approval processes you want to reorder.
- Click ReorderProcesses.
- Drag and drop the approval processes and click Save.
To reorder rules in an approval process
- Go to Setup > Automation > Approval Process.
- In the Approval Process List page, select an approval processes.
- Click ReorderRules.
This option will be available only when you have multiple rules for the approval process.
- In the pop-up, drag and drop the rules and click Save New Order.
View Approval History
Approval History gives you a list of records that were submitted for approval.
To view the Approval History
- In your Zoho CRM account, click the Approvals tab.
- In the Awaiting your Approval page, click Approval History.
The Approval History page displays all the approval-related records in a chronological order.
Since the Approval History could get exhaustive over a period of time, it could be quite tiresome to sift through the entries if you are looking for a few specific details. For example, if you wish to see only the records submitted for approval by a particular user or a list of records submitted for approval in the last 7 days, it could be difficult to find those specific entries among a huge list. In such a case, you can use the Filter options offered to you and narrow down on the record(s) you are looking for.
To filter the records in the Approval History page
- Select a Module, in order to view Approval History of records in that particular module.
Choosing All Modules will display Approval History in all modules.
- Select a User, in order to view Approval History of a particular user.
Choosing All Users will display Approval History of all the users in your organization.
- Select an Action, in order to filter the entries based on the actions performed on the records.
- You can choose an action among Approved, Rejected, Delegated and Submitted depending on your requirement.
- Choose All Actions to view the approval history of records based on all the four actions.
- Select a Time, in order to view the Approval History of records in the chosen timeframe. Choose among the following options.
- Last 7 Days
- Last 30 Days
- A Specific Date
- A Date Range
For example, if you wanted to view all the records submitted for approval by a specific user in the Leads module in the last 7 days
- Choose Module as Leads.
- Choose the desired User.
- Choose Action as Submitted.
- Choose the Time as Last 7 Days.
The Approval History will be displayed according to the above filters.
1. Is there a limit to the number of approvers that can be chosen per approval process?
Yes. The limit on the number of approvers depends on the limit on the number of entries. You can create up to 10 entries under “Who should approve”. Note that “10” is the limit to the number of entries and not people.
The number of entries will equal the number of people in case each entry is for an individual user. For example, you have created 10 entries. This equals 10 users. You cannot create any more entries as 10 is the limit for the number of entries.
But when you work with levels, there is a difference. In the case of levels, one user per level is chosen as the approver. There are 2 ways in which you can work with levels. For example,
- You have created 10 entries of which 9 are individual users and the last one says “3rd level”. If there are 4 users in the 3rd level, one among the four is selected as the approver. So the total number of people is (9+1=10).
- You have created 10 entries of which 9 are individual users and the last entry says “Upto 3rd level”. In this case one approver per level will be selected, regardless of the number of users in the level. So the total number of approvers will be (9+3 = 12) and not 10. Here the number of entries is 10 and the people is 12. This is possible as the limit applies only to the entries and not the people.
Note: One user per level is selected based on who is listed first.
2. Why do some records that match an approval process are not submitted for approval?
Records that are created/modified and match rule criteria of a process after creation of a workflow process are the ones that will be submitted for approval.
If you find that records that match the criteria set but are not submitted for approval, it means that they were created/modified before creation of the workflow process.
3. A few records are locked for editing and waiting for approval, the Approval Tab says “No pending approvals”. How is that?
The Approval Tab only shows records waiting for your approval. If a few records are shown as locked for editing, it might be that they are waiting for the approval of other users in your organization. The records details page has information about whose approval the records are waiting for.
4. No one has approved a certain record but the record is marked as 'approved'. How?
Records submitted for approval will be auto-approved in the following cases.
- You have chosen Roles under “Who to approve” when you have no users associated with the specified role.
- You have chosen Groups under “Who to approve” when you have no users associated with the specified group.
- The user you have chosen as the approver has been deactivated.
5. What are the consequences of deactivating an approval process?
If you deactivate an approval process, the records that were created/modified and match the rule criteria of the approval process before deactivation will be pending approval. They can be approved by the users selected to approve them.
The approval process, once deactivated, will not be applicable to records that match its rules after deactivation.