Submit for Approval Is Not Showing in SAP CPQ

The action is gone from the quote, the deal cannot move forward, and nothing on the screen explains why. We find the workflow row, the permission, or the approval rule that is actually making that decision.

The Action Is Hidden Far More Often Than It Is Broken

Submit for Approval is a standard workflow action in SAP CPQ. It carries action ID 25, and SAP describes it as the action that sends the quote for approval when an approval rule is violated. That one sentence explains most of the tickets that reach us. The action is not meant to sit on every quote at every moment, and a missing button is usually the system doing exactly what somebody configured it to do.

Three separate layers decide whether it appears, and they are administered in three different places. The workflow grid decides whether the action exists at all for the current tab and for the move from the current status to the next one. The condition formula on that row, normally <*APPROVALREQUIRED*>, decides whether it is relevant for this particular quote. Workflow Permissions decide whether this user type may use it. Two of the three can agree and the action will still stay hidden, because all three have to.

So the question worth asking is never why the button vanished. It is which layer is saying no right now, and whether that answer matches the policy your business actually wants. We work through them in that order on your tenant, name the one that made the decision, and show your administrators how to read the same trail next time. Approval actions are one of the four symptom groups we see most often on SAP CPQ tenants, and they are the group where the cause is most likely to be configuration rather than a defect.

No Approval Rule Was Violated

This is the intended behaviour, not a fault. SAP recommends putting the condition formula <*APPROVALREQUIRED*> on the action so that users cannot submit quotes that break no rule. If nothing on the quote crosses a threshold, the action stays hidden and the quote is free to move on without sign-off.

The Status Pair Has No Action

Workflow is a grid. Start statuses run down the left, target statuses run across the top, and the action exists only where the intersection was ticked. Submit for Approval normally runs from Open to Waiting for Approval. Move a quote into a status nobody mapped and the action has nowhere to appear.

The User Type Has No Permission

Workflow Permissions is a second and separate gate. SAP states that users will be unable to use any of the actions defined in the Workflow section unless they have been given permission there. When an administrator sees the action and a sales rep does not, this is almost always the reason.

The Quote Has Already Moved On

Available actions change with quote status, so the ones tied to an earlier stage disappear once the quote advances. If two rules were triggered and AND logic applies between them, the quote stays in Waiting for Approval even after one of the approvers has approved it.

How We Work Through a Missing Approval Action

We start by reproducing the problem exactly as the user sees it. The same user type, the same quote tab, the same status. That sounds obvious, and it is the step most often skipped, because an administrator checking the quote from their own account is testing a different permission set and sometimes a different tab altogether. Workflow is configured separately for My Quotes, Waiting for Approval and Other Quotes, so an action that behaves perfectly for the quote owner can be absent for a colleague looking at the same record. Other Quotes can be filled in by copying the settings across from My Quotes, which is convenient, and it is also why that tab is so often left empty on tenants that grew quickly.

Next we read the approval rules rather than the button. Rules are not evaluated as a flat list. SAP documents that the system first evaluates and triggers the rules that are most specific for a user type or a company, and continues to the more general rules only when no specific rule exists. A tenant that has collected company specific rules over several years will therefore suppress the general rule you expected to fire, and the quote passes without ever needing approval. Nothing is broken there. The precedence is doing its job, and the correction belongs in the rule set rather than in the workflow grid.

Then we follow the approver side of the path. Approvers are ordinary SAP CPQ users, and SAP is direct about what happens when an inactive one is left in a rule: the quote is assigned to somebody who cannot log in, it gets stuck, and this behaviour is by design. Custom approver selection logic adds a second way to fail, because when the expression cannot resolve to a real user the quote returns the message Approver couldn't be identified. Please contact your SAP CPQ Administrator. To a sales rep both look the same, and both are quick to confirm once you know where to look. If the rule design itself is the problem rather than one assignment, that work sits in our page on building approval paths that match your discount policy.

We also check what happens after submission, because a large share of reported approval problems are really retraction problems. Retract Approval Process is its own standard action, ID 53, and SAP documents it as the way to pull a quote back so that approval is no longer needed. If that action is not mapped for the statuses your quotes actually reach, expired ones included, quotes accumulate in the approval queue with no way out. SAP publishes a knowledge base article on precisely that scenario, and the resolution there is a workflow row rather than a support fix.

Two further things shape the answer. If you run Quote 2.0, SAP notes that not all standard workflow actions are supported in it, so a configuration carried over from a Quote 1.0 tenant will not always behave identically. And custom scripting or interface customisation can change what a given user sees, which is why the Developer Console lets an administrator temporarily disable UI customisations and IronPython script execution and switch on Trace with Full Mode. Alongside that, the Audit Trail records the actions that administrators and users perform, including changes made through the API, so a workflow row that was edited last quarter is usually still traceable. Deep work of this kind on scripting and workflow is led by our technical analyst, who has worked on the product since it was built at CallidusCloud. Where reading this trail becomes a recurring need rather than a single incident, we hand the method over through training built for internal administrators instead of keeping it with us.

What We Check When an Approval Action Disappears

  • Whether an approval rule is genuinely violated on this quote, for this user and this company
  • The condition formula on the workflow row, and how it evaluates for the record in front of you
  • The exact start status and target status pair the action has been mapped to
  • Which quote tab the user is working in, and whether that tab has workflow rows of its own
  • Workflow Permissions for the user type raising the quote, not for the administrator testing it
  • Rule precedence, where a narrower company or user type rule suppresses the general one
  • Whether every approver in the resolved path is an active user
  • Custom approver selection logic that cannot resolve to a real person
  • AND logic between two triggered rules that keeps a quote waiting after one approval
  • Scripts and interface customisations, switched off temporarily so standard behaviour is visible
SAP CPQ for sales teams improving sales quoting process and CPQ sales efficiency

What Changes Once the Approval Path Is Correct

1.

A cause you can name

You get the specific layer that made the decision, whether it was the rule, the workflow row or the permission, together with the evidence behind it. Not a list of things it might have been.

2.

Quotes that stop getting stuck

Retraction, expiry and multi rule paths are mapped properly, so quotes have a route out of the approval queue instead of sitting there until somebody notices.

3.

Sign-off that matches your policy

Approval appears when your thresholds say it should and stays out of the way when it should not, which is what keeps sales teams using the process rather than routing around it.

4.

Fewer tickets for your administrators

We document the path we followed so your team can repeat it on the next symptom, which is usually a variation of the same three layers in a different order.

Submit for Approval Questions We Get Asked

Why is Submit for Approval not showing on my SAP CPQ quote?
In most cases because no approval rule is violated, which is the intended behaviour when the action carries the <*APPROVALREQUIRED*> condition. If a rule is violated and the action is still missing, check that it is mapped for that exact tab and status pair, and that the user type has permission for it under Workflow Permissions.

Where is Submit for Approval configured?
In the workflow grid, where start statuses run down the left side and target statuses across the top. The action normally runs from Open to Waiting for Approval, and it is configured separately for the My Quotes, Waiting for Approval and Other Quotes tabs.

Can one user be missing the action while an administrator can see it?
Yes, and it is common. Workflow Permissions control which user groups may perform which action, and SAP states that users cannot use an action defined in the Workflow section unless permission has been granted there. Testing from an administrator account will not reproduce the problem.

Why does a quote stay in Waiting for Approval after it was approved?
When two approval rules are triggered on one quote and AND logic applies between them, approval against one rule is not enough on its own. The quote stays in Waiting for Approval until the second one is resolved, and a rejection under either rule moves it to Rejected.

What happens if an approver is inactive?
The quote is assigned to a user who cannot log in and it gets stuck. SAP documents this as by design, so the fix is to keep approver assignments on active users and to review them whenever people change roles or leave.

How do we pull a quote back out of approval?
Retract Approval Process is a standard action with ID 53, and it removes the approval requirement from a quote that has already been submitted. It has to be mapped in the workflow for the statuses your quotes actually reach, otherwise there is no route back and the quote waits until it expires. I walk through the full mechanics, including the script and API paths and the traps that follow a resubmission, in a dedicated guide to retracting an approval.

Is a Quote Waiting on an Approval That Never Arrives?

Send us the quote, the user type and the status it is sitting in, and we will tell you which layer is holding it and what has to change so it does not happen again.

WHAT OUR CLIENTS HAVE TO SAY ABOUT US

Recent testimonials from our clients

Need help with your SAP CPQ project?