Naveen20
ServiceNow Employee

Try this.

all 3 approvers are created simultaneously in Requested state. They need to be sequenced so Stage 2 only activates after Stage 1 is approved.

Setup

1. Catalog Item → Approval Rules (3 rules):

Rule Approver Order
Stage 1 Natasha Ingram 100
Stage 2 Change Manager 200
Stage 3 Chuck Tomasi 300

The Order field is the key — the platform will only request Order 200 after all Order 100 approvals are complete.

2. Flow (simplified):

 
 
Trigger: RITM Created
Wait For Condition → sc_req_item.approval = "approved"
Fulfillment steps...

Add a parallel branch with Wait For Condition → approval = "rejected" for the rejection path.

3. Remove all "Ask For Approval" actions from the flow entirely.

Thank you.
However, I noticed that when we apply approval rules to a group, the approval request is sent to all group members and waits until everyone approves. Is it possible to configure this so that approval from only one member is required instead of all members?

Naveen20
ServiceNow Employee

Yes — controlled by the "Approval" field on the Group Approval record, not on the approval rule itself.

Go to Group Approvals tab on the RITM (or the sysapproval_group table) and check the Approval field. It has two options:

Value Behavior
Everyone All group members must approve (your current setting)
Anyone First member to approve is sufficient

Where to Set This

Option A: On the Approval Rule directly In your catalog item's approval rule, set the Approval field to "Anyone" when defining the group approver.

Option B: Via Business Rule (dynamic control) If the approval rule doesn't expose this field in your version, add a Before Insert Business Rule on sysapproval_group:

(function executeRule(current, previous) {
    // Target specific catalog item approvals
    if (current.parent && current.parent.getTableName() == 'sc_req_item') {
        current.approval = 'anyone';
    }
})(current, previous);

To validate

After submitting a request, check the Group Approvals tab on the RITM. You should see the group listed with Approval = Anyone. Once any single member approves, the group approval resolves as approved and the next stage (Order 200) kicks in.

Ryota
Tera Guru
Hi @Naveen20 -san
Thank you for your response. Unfortunately, the flow has higher priority, so the approval engine is not able to run.

Naveen20
ServiceNow Employee

The flow fires on RITM creation and proceeds before the approval engine has a chance to create records from the approval rules.

Fix: Add a Flow Logic Wait

At the very start of your flow, before the "Wait For Condition" step, add a brief pause:

 
 
Trigger: RITM Created
Flow Logic: Wait → 5 seconds      ← add this
Wait For Condition → approval = "approved"
Fulfillment steps...

This gives the approval engine time to process the approval rules and create the sysapproval_approver records.

If Not — Use a Trigger Condition

Instead of triggering on RITM creation, trigger the flow after the approval outcome:

 
 
Trigger: Updated
  Table: sc_req_item
  Condition: Approval CHANGES TO "Approved"
Fulfillment steps (no wait needed)

Then create a separate flow or trigger for rejection:

 
Trigger: Updated
  Table: sc_req_item
  Condition: Approval CHANGES TO "Rejected"
Handle rejection...

Summary

Approach Pros Cons
Wait 5 sec Simple, keeps one flow Slight delay, fragile if engine is slow
Trigger on approval change Reliable, no race condition Two flows needed (approved/rejected)