Approval Process in Salesforce
What is Approval Process in Salesforce?
Approval Process in Salesforce is an automated process that automates how Salesforce records are approved in your org. Approval Process in Salesforce is a combination of steps for a record to be approved/rejected either by a user, queue or public groups. An approval process also specifies the actions to take when a record is approved, rejected, recalled, or first submitted for approval.
For example, when an employee creates a time-off request, have Salesforce automatically sends an approval request to the employee’s manager.
Salesforce Approval Process
Here is list of steps for approval process in salesforce :
- Setup -> Create -> Workflow and Approval -> Approval Process
- Select object for approval process to be written
- Click on Create New Approval Process
- Select Standard Setup Wizard from drop down
- Enter the Process name, Unique Name and description for your process
- Specify Entry criteria
Approval Process Example
Here is list of sections to be configured in salesforce approval process:
- Process Definition Detail – Approval Process Header level details like name, email template etc.
- Initial Submission Actions – It will be executed when the user clicks on ‘Submit for Approval’ on the object record.
- Approval Steps – Details of Steps criteria and the approvers
- Final Approval Actions – It will be executed after all the approval process steps have been approved.
- Final Rejection Actions – It will be executed if one of the approval process steps have been rejected.
- Recall Actions – It will be executed if one of the approval process steps have been recalled.
Build Approval Process
Let’s build an approval process where the sales manager approves opportunities where the total opportunity amount exceeds 500K. The opportunity should reflect its approval status: Approved or Not Approved.
Make sure you preplan before you start configuring the Approval process in salesforce because this will help you design the approval process in the most optimized ways. Preplanning includes of:
- creation of required fields
- Identify the object for the Approval process
- Email Template
- Final Approval Actions like unlock record or change the status of the record
In this example, we would need below:
|In Order to…||We Need…|
|Track each opportunity’s approval status||Custom field (Opportunity)|
|Request approval from managers when an opportunity total Amount is more than 500K||Approval process (Opportunity)|
|Notify managers when an opportunity amount needs approval||Email template|
|When managers respond, update the opportunity’s approval status||Approval actions (Field Update)|
Create Approval Process
- Login to Salesforce however you can ignore this step if already logged in.
- Navigate to Setup and search for ‘Approval process’ in Quick find or navigate to ‘Create’->Workflow & Approvals -> Approval Process
- For Manage Approval Processes For, select Opportunity
- Click .The Jump Start Wizard helps you create a simple approval process by making some decisions for you.
- Configure the approval process.
Field Value Name Approve Opportunity Amount Approval Assignment Email Template Approve Opportunity Amount Specify Entry Criteria Opportunity: Opportunity Amount greater than 500K Select Approver Let the submitter choose the approver manually
- Save the approval process.
- Click View Approval Process Detail Page.
- Under Final Approval Actions, click , and configure it with these values.
Field Value Name Approved Field to Update Approval Status A Specific value Approved
- Click Save.
- Under Final Rejection Actions, click , and configure it with these values.
Field Value Name Not Approved Field to Update Approval Status A Specific value Not Approved
- Click Save.
Great job! Your Approval Process has been successfully configured.
We used only ‘Field Update’ in our above example. I would like to explain more regarding Approval Actions like Final Approval Actions, Final Rejection Actions which consists of :
- Task – If a task is selected then the user can insert a task for a record so for our example on Opportunity once the approval process has been approved/rejected.
- Email Alert – If an Email Alert is selected then the user will be notified via email once the approval process has been approved/rejected.
- Field Update – You have already seen an example in the above but again, the system will update the field to the mentioned value once the approval process has been approved/rejected.
- Outbound Message – This will help notify 3rd Party systems. Think for a scenario where you want to notify the backend system or provisioning system on the approval results so for example once orders are approved start generating the bills then this will help you to achieve the requirement.
Email to approve the request
We can set the approval process via Email, to enable email approval response use following steps
Setup -> select Process Automation Settings -> select the Enable Email Approval Response checkbox, and click Save.
While responding to an approval request, some words can be used in the first line with periods or exclamatory marks. The words like Approved, Approve, Yes used for approval while Reject, Rejected, No used for rejection.
Difference between workflow rule and approval process
Workflow triggers automatically on any DML action like Insert, Update. It consists of a single step or a single action to continue the process and workflow triggers are not visible to user.
The approval process consists of multiple steps and should be approved by different users at a specific level. It may include rejection also.
For more details on the approval Process, please refer to trailhead salesforce.
Happy Learning 🙂
Very good explanation of approval process in salesforce.
Very well explanation about Salesforce Approval Process.
I have approval process set up to allow myself as system administrator to check on the orders before letting Sales generate the or contract. But I found that some Sales Managers approved the record ahead of me. is there anyway to prevent ‘non assigned approvers to approve a record’?
what are differences between step action and final approval action? I realized some of functions do not work well when the field update in the final approval function.
You say above that you can use public groups to assign for approval. I’m not finding a way to do this. Can you please provide more information? Thanks!