Fatskills
Practice. Master. Repeat.
Study Guide: TECH **Salesforce Approval Processes: Zero-Fluff, Hands-On Study Guide**
Source: https://www.fatskills.com/salesforce-certification/chapter/tech-salesforce-approval-processes-zero-fluff-hands-on-study-guide

TECH **Salesforce Approval Processes: Zero-Fluff, Hands-On Study Guide**

By Fatskills Exam Guides Team — the exam nerds behind 28,500+ quizzes and 2.1M practice questions across 500+ global exams.

⏱️ ~8 min read

Salesforce Approval Processes: Zero-Fluff, Hands-On Study Guide

(For Admins Who Need to Build, Debug, or Certify—Fast)


1. What This Is & Why It Matters

An Approval Process in Salesforce is an automated workflow that routes records (e.g., Opportunities, Cases, Expense Reports) to designated approvers for sign-off. Think of it like a digital chain of command: a sales rep submits a discount request, their manager approves it, and the system updates the record—all without manual emails or spreadsheets.

Why this matters in production:
- Compliance & Audit Trails: If your org handles contracts, discounts, or sensitive data, approvals are non-negotiable. Without them, you risk unauthorized changes (e.g., a rep giving a 50% discount without oversight) and failed audits.
- Efficiency: Manual approvals waste time. Automated processes cut approval cycles from days to minutes.
- User Adoption: If approvals are clunky, users bypass them. A well-designed process keeps data clean and workflows smooth.

Real-world scenario:
You’re the Salesforce Admin for a manufacturing company. The sales team needs to offer discounts >20% on Opportunities, but only managers can approve them. You’re tasked with: 1. Building an approval process that routes discounts to the right manager.
2. Ensuring rejected requests update the Opportunity stage to "Negotiation." 3. Logging all approval actions for compliance.

If you mess this up, sales reps either can’t close deals (because approvals are stuck) or bypass the process entirely (risking revenue leakage).


2. Core Concepts & Components


? Approval Process

  • Definition: A workflow that defines who must approve a record, what happens at each step, and how the record moves forward.
  • Production Insight: If you don’t set up entry criteria, every record will trigger the approval—clogging your queue with irrelevant requests.

? Entry Criteria

  • Definition: Conditions that determine if a record enters the approval process (e.g., "Opportunity Amount > $10,000").
  • Production Insight: Use formulas for dynamic criteria (e.g., ISPICKVAL(StageName, "Proposal") && Amount > 10000). Avoid hardcoding values—it’s a maintenance nightmare.

? Approval Steps

  • Definition: The sequence of approvers (e.g., Step 1: Manager → Step 2: Finance).
  • Production Insight: If you don’t set step-level criteria, the process will route to all approvers even if some steps are irrelevant (e.g., a $50k deal skips the regional manager step).

? Approver

  • Definition: The user, role, or queue assigned to approve a record at a specific step.
  • Production Insight: Always test with real users—delegated approvers or role hierarchies can break unexpectedly.

? Approval Actions

  • Definition: What happens when a record is approved/rejected (e.g., update a field, send an email, lock the record).
  • Production Insight: Locking records prevents edits during approval—critical for compliance. But if you forget to unlock them on rejection, users can’t resubmit.

? Initial Submitters

  • Definition: Who can submit a record for approval (e.g., "Only the Opportunity Owner").
  • Production Insight: If you don’t restrict submitters, anyone can spam the approval queue (e.g., a disgruntled intern submitting 100 fake expense reports).

? Recall

  • Definition: Allows submitters to pull back a record before it’s approved/rejected.
  • Production Insight: Enable this for user flexibility, but log recalls for audit trails.

? Delegated Approvers

  • Definition: Users who can approve on behalf of the primary approver (e.g., a manager’s assistant).
  • Production Insight: If the primary approver is on vacation, delegated approvers keep the process moving—but they must be explicitly assigned.

? Email Templates

  • Definition: Custom emails sent to approvers/submitters (e.g., "Your discount request for Acme Corp needs approval").
  • Production Insight: Merge fields (e.g., {!Opportunity.Name}) make emails actionable. Generic emails get ignored.


3. Step-by-Step: Build an Approval Process for Discount Requests

Prerequisites:
- You have System Administrator permissions.
- You’ve created a custom field on Opportunity: Discount_Requested__c (Checkbox).
- You’ve set up Roles (e.g., "Sales Rep," "Sales Manager," "Finance").

Task: Build an approval process where: 1. A sales rep submits an Opportunity for approval if Discount_Requested__c = TRUE.
2. The sales manager approves/rejects.
3. On approval, the Opportunity stage updates to "Closed Won." 4. On rejection, the stage updates to "Negotiation" and the record unlocks.


Step 1: Navigate to Approval Processes

  1. Go to SetupQuick Find → "Approval Processes."
  2. Select Opportunity from the dropdown.
  3. Click Create New Approval ProcessUse Jump Start Wizard (for simplicity).

Step 2: Define Process Name & Entry Criteria

  1. Process Name: Discount Approval Process
  2. Description: Routes discount requests to sales managers for approval.
  3. Entry Criteria:
  4. Field: Discount_Requested__c
  5. Operator: equals
  6. Value: TRUE
  7. Click Save.

Step 3: Configure Initial Submitters

  1. Under Initial Submitters, select:
  2. Record Owner (only the Opportunity owner can submit).
  3. Click Add RowRole → Select "Sales Rep."
  4. Click Save.

Step 4: Add Approval Steps

  1. Click Add New Approval Step.
  2. Step Name: Manager Approval
  3. Step Criteria: Leave blank (applies to all records in the process).
  4. Approver: Select Manager (uses the role hierarchy).
  5. Click Save.

Step 5: Define Approval Actions

  1. Approval Actions:
  2. Click Add NewField Update.
  3. Name: Update Stage to Closed Won
  4. Field to Update: StageName
  5. New Value: Closed Won
  6. Click Save.
  7. Rejection Actions:
  8. Click Add NewField Update.
  9. Name: Update Stage to Negotiation
  10. Field to Update: StageName
  11. New Value: Negotiation
  12. Click Save.
  13. Click Add NewUnlock Record (so the rep can edit and resubmit).

Step 6: Configure Email Alerts

  1. Approval Email:
  2. Click Add NewEmail Alert.
  3. Description: Discount Approval Request
  4. Email Template: Select or create one (e.g., "Discount Request for {!Opportunity.Name}").
  5. Recipients: Approver (manager).
  6. Click Save.
  7. Rejection Email:
  8. Repeat for rejection, sending to the Submitter.

Step 7: Activate the Process

  1. Click Activate (top-right).
  2. Confirm activation.

Step 8: Test the Process

  1. Create an Opportunity with:
  2. Discount_Requested__c = TRUE
  3. Owner = a user with the "Sales Rep" role.
  4. Click Submit for Approval (on the Opportunity record).
  5. Log in as the manager → Approve/Reject.
  6. Verify:
  7. Approval → Stage = "Closed Won."
  8. Rejection → Stage = "Negotiation," record unlocked.

4. ? Production-Ready Best Practices


Security

  • Least Privilege: Only grant "Submit for Approval" to roles that need it (e.g., not interns).
  • Field-Level Security: Hide sensitive fields (e.g., Discount_Amount__c) from approvers who don’t need to see them.
  • Audit Trail: Enable Field History Tracking on approval-related fields (e.g., StageName, Discount_Requested__c).

Cost Optimization

  • Avoid Over-Engineering: Don’t create separate processes for every discount tier—use step-level criteria (e.g., "Amount > $50k" skips regional manager).
  • Bulkify: Test with 100+ records to ensure performance (approvals can slow down if too many are pending).

Reliability & Maintainability

  • Naming Conventions:
  • Process: [Object] - [Purpose] (e.g., Opportunity - Discount Approval).
  • Steps: [Role] - [Action] (e.g., Manager - Approve Discount).
  • Documentation: Add a description to every process/step (e.g., "Routes discounts >20% to Finance for approval").
  • Idempotency: Ensure approval actions don’t trigger workflows/flows that create infinite loops (e.g., a field update that resubmits the record).

Observability

  • Monitor Pending Approvals:
  • Create a report on Approval Process object to track bottlenecks.
  • Set up a dashboard for "Pending Approvals by User."
  • Alerts: Use Flow or Process Builder to notify admins if approvals are stuck >24 hours.
  • Logs: Check Setup → Approval Process History to debug failed submissions.


5. ⚠️ Common Mistakes & Traps

Mistake Symptom Fix/Prevention
No Entry Criteria Every record triggers approval (spam). Always set criteria (e.g., Discount_Requested__c = TRUE).
Hardcoded Approvers Approvals fail when users leave the org. Use roles/queues instead of specific users.
No Rejection Actions Rejected records stay locked. Add Unlock Record action on rejection.
Missing Email Alerts Approvers ignore requests. Use custom email templates with merge fields (e.g., {!Opportunity.Name}).
No Recall Option Users can’t pull back mistakes. Enable Allow Submitters to Recall in process settings.
Overlapping Processes Multiple processes trigger on the same record. Use Process Order to prioritize (Setup → Approval Processes → Process Order).


6. ? Exam/Certification Focus

Typical Question Patterns:
1. "Which feature allows a user to pull back a submitted record?"
- ✅ Recall (not "Reject" or "Delegate").
2. "How do you ensure only the Opportunity owner can submit for approval?"
- ✅ Set Initial Submitters to "Record Owner." 3. "What happens if a record meets the entry criteria but fails step-level criteria?"
- ✅ It skips the step and moves to the next one (or completes if no more steps).
4. "Which action locks a record during approval?"
- ✅ Approval Process (not "Validation Rule" or "Workflow").

⚠️ Trap Distinctions:
- Approval Process vs. Workflow Rule:
- Approval Process = multi-step, human approval.
- Workflow Rule = automated, no human intervention.
- Delegated Approver vs. Alternate Approver:
- Delegated = temporary (e.g., "Approve for me while I’m on vacation").
- Alternate = permanent (e.g., "My assistant can always approve").

Scenario-Based Question:
"A sales rep submits an Opportunity for discount approval, but the manager’s manager needs to approve it if the discount is >30%. How do you configure this?" - ✅ Add a second approval step with criteria Discount_Amount__c > 30 and approver = "Manager’s Manager."


7. ? Hands-On Challenge

Challenge:
Create an approval process for Expense Reports where: 1. Employees submit expenses >$100.
2. Their manager approves/rejects.
3. On approval, the Status field updates to "Approved" and an email is sent to Finance.
4. On rejection, the Status updates to "Rejected" and the record unlocks.

Solution:
1. Object: Expense Report (custom object).
2. Entry Criteria: Amount__c > 100.
3. Initial Submitters: Record Owner.
4. Approval Step: Approver = Manager.
5. Approval Actions:
- Field Update: Status__c = "Approved".
- Email Alert: Send to Finance queue.
6. Rejection Actions:
- Field Update: Status__c = "Rejected".
- Unlock Record.

Why it works:
- Uses step-level criteria to route only relevant records.
- Unlocks on rejection so employees can edit and resubmit.
- Email alerts keep Finance in the loop.


8. ? Rapid-Reference Crib Sheet

Task How to Do It ⚠️ Trap
Create Approval Process Setup → Approval Processes → New → Jump Start Wizard. Don’t skip entry criteria—it’ll spam your queue.
Set Entry Criteria Use formulas (e.g., ISPICKVAL(Status, "Submitted")). Hardcoding values (e.g., Amount > 1000) breaks when thresholds change.
Add Approval Step Click Add New Approval Step → Set approver (role/queue). Avoid specific users—use roles/queues for scalability.
Lock/Unlock Records Add Lock Record (approval) or Unlock Record (rejection) actions. Forgetting to unlock on rejection = users can’t resubmit.
Delegate Approvers User → Approver Settings → Add Delegated Approver. Delegated approvers must have "Approve" permission.
Recall a Submission Enable Allow Submitters to Recall in process settings. Without this, users can’t pull back mistakes.
Test Approval Process Create a test record → Submit for Approval → Log in as approver. Always test with real users—role hierarchies can break.
Monitor Pending Approvals Reports → Create Report → "Approval Process" object. No monitoring = bottlenecks go unnoticed.
Bulkify Approvals Use Data Loader to submit multiple records at once. Too many pending approvals slow down performance.
Debug Failed Submissions Setup → Approval Process History → Check "Errors." Common error: No approver found (check role hierarchy).


9. ? Where to Go Next

  1. Salesforce Approval Process Documentation – Official guide with deep dives.
  2. Trailhead: Approval Processes – Hands-on modules.
  3. Salesforce Approval Process Limits – Avoid hitting governor limits.
  4. Automate Approvals with Flow – Advanced use cases (e.g., dynamic approvers).


ADVERTISEMENT