Considerations & Complexities of Salesforce Approval Processes

Using Approval Processes in Salesforce for Process Compliance

Salesforce’s Approval Processes play a pivotal role in ensuring procedural adherence. Whether it’s greenlighting discounts, updating critical records, or launching campaigns, it offers a structured mechanism to get the necessary stamps of approval. Below is a guide that captures key complexities and considerations:

1. Associated Object in Master-Detail Relationship

When your approval object is a detail object in a master-detail relationship:

  • Implication: The Owner field isn’t available for approval page layouts or approval post templates.
  • Example: If you’re approving line items (detail) of an invoice (master), you cannot leverage the owner of the line item in your approval layout or post templates.

2. Approval Criteria

For both entry criteria and step criteria:

  • Consideration: Avoid referencing expressions that resolve to random values.
  • Reason: This ensures consistent evaluation of the record every time it’s re-evaluated.
  • Example: If you have a random discount percentage generator, it shouldn’t be part of the approval criteria since it can yield different values upon re-evaluation.

3. Compatibility with Other Features

  • Flows: Be cautious as flows can delete records pending approval.
  • Automated Actions: Design them to be compatible with both workflow rules and approval processes. This ensures consistency in your automation architecture.
  • Example: If an account record pending approval gets deleted by a flow, it can disrupt the approval chain.

4. Field Update Actions in Approvals

  • Re-evaluation of Workflow Rules: An approval process can specify a field update action that re-evaluates workflow rules. But cross-object field updates from re-evaluated workflow rules are ignored.

  • No Triggers for Workflow & Entitlement Processes: If a field is updated as a result of an approval action, that field update does not act as a trigger for workflow rules or entitlemnt processes.

  • Example: If you have an approval process on an opportunity that updates the Stage field, and you have a workflow rule on Stage change, that rule won’t trigger upon approval.

5. Anticipate Errors

  • Proactive Approach: Familiarize yourself with common approval errors to design a foolproof process.
  • Reason: By understanding what can go wrong, you can preemptively address those issues in your design.
  • Example: Knowing that field updates in approval can’t trigger workflows can save you debugging time later.

6. Approvals in Unlocked Packages

  • Users Aren’t Supported: Unlocked packages can house approvals with steps that cite related users or queues as approvers. However, users as standalone entities aren’t supported.

  • Include Essential Components: Queues and related user fields (lookup fields) utilized by the approval steps need to be part of the unlocked package.

  • Namespace Constraints: An Approval Process can only be integrated into unlocked packages that lack a specified namespace.

  • Example: If you’re deploying an approval process in an unlocked package, ensure related queues are part of the package to avoid deployment issues.

7. Parallel vs. Sequential Approvals

  • Consideration: Decide whether you need all approvers to approve simultaneously (parallel) or in a specific order (sequential).

  • Example: For a budget approval, you might want the department head and finance head to approve simultaneously. But for project sign-offs, you might need sequential approvals from various teams.

8. Reminder Settings

  • How-To: Use reminder settings to send notifications to approvers if they haven’t acted on a request within a specific timeframe.

  • Example: If a contract hasn’t been approved within 48 hours, a reminder can nudge the legal team to expedite.

9. Approval Steps with No Approver

  • Consideration: Salesforce allows approval steps with no designated approver, which auto-approves the step.

  • Example: For minor updates on a record, an auto-approval step could suffice after initial checks, reducing manual intervention.

10. Dynamic Approval Routing

  • How-To: Utilize user fields on the record (like Manager) or custom lookup fields to dynamically determine approvers.

  • Example: For travel requests, the approval might be routed to the requester’s direct manager, as listed on their user record.

11. Handling Record Edits During Approval

  • Consideration: Decide what should happen if a record is edited while it’s pending approval. Lock the record or allow edits?

  • Example: For discount approvals, you might want to lock the record to prevent changes to the discount percentage during the approval process.

12. Delegating Approvals

  • How-To: Configure delegate approvers so that when a primary approver is unavailable, another designated user can step in. This prevents bottlenecks.

  • Example: During a manager’s vacation, their second-in-command can be set up as a delegate to approve time-off requests.

13. Initial Submission Actions

  • How-To: Configure actions that occur once a record is initially submitted for approval, like field updates or outbound messages.

  • Example: Set the Approval Status field to “Pending” when a purchase order is submitted for approval.

14. Rejection Behavior

  • Consideration: Decide the behavior on rejection. Should it stop at the first rejection or continue seeking approval from all approvers?

  • Example: In sensitive financial approvals, a single rejection might be enough to halt the process and send it back for revision.

15. Recall Actions

  • How-To: Set up actions that take place if the submitter recalls the approval request. This could involve field resets or notifications.

  • Example: If an employee recalls a leave request, the Leave Status could auto-update to “Recalled.”

Closing Thoughts

Approval Processes are indispensable for institutionalizing process compliance. However, the interplay with other Salesforce features and the inherent complexities necessitate a strategic approach. By being aware of these nuances and architecting with foresight, you can deploy robust, error-free approval processes that reinforce compliance.