By Fatskills Exam Guides Team — the exam nerds behind 28,500+ quizzes and 2.1M practice questions across 500+ global exams.
(For Admins Who Need to Build, Debug, or Certify—Fast)
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).
ISPICKVAL(StageName, "Proposal") && Amount > 10000
{!Opportunity.Name}
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").
Discount_Requested__c
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.
Discount_Requested__c = TRUE
Discount Approval Process
Routes discount requests to sales managers for approval.
equals
TRUE
Manager Approval
Update Stage to Closed Won
StageName
Closed Won
Update Stage to Negotiation
Negotiation
Discount Approval Request
Discount_Amount__c
[Object] - [Purpose]
Opportunity - Discount Approval
[Role] - [Action]
Manager - Approve Discount
Approval Process
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."
Discount_Amount__c > 30
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.
Amount__c > 100
Status__c = "Approved"
Status__c = "Rejected"
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.
ISPICKVAL(Status, "Submitted")
Amount > 1000
Join 4M+ learners. Unlock unlimited quizzes, wrong-answer tracking, flashcards + reminders, study guides, and 1-on-1 challenges.