SAP CPQ

How to Retract an Approval in SAP CPQ the Right Way

Business team reviewing and signing a contract at an office table, representing an approval being reviewed before it moves forward

SAP documents the Retract Approval Process action, but almost nowhere explains it as a topic in its own right. Here is what it actually does, when you need it, and how to use it without breaking what happens next.

What you will learn

  • The exact standard action behind retracting an approval, and how it differs from Cancel Changes
  • Why reassigning a quote breaks the approval queue, and the documented workaround
  • Why expired quotes get stuck sending reminder emails, and how to stop it
  • When creating a new revision beats retracting the same quote in place
  • Who can actually trigger the retract action, and how to expose it if it is missing
  • How to retract an approval from a script or integration instead of the UI
  • The three traps that catch people on the resubmission after a retract

A quote sits in Waiting for Approval, and the deal changes underneath it. Maybe the discount needs a second look, maybe the wrong approver got it, maybe the customer asked for a different bundle before anyone signed off. The rep’s instinct is to pull the quote back, fix it, and send it again. In SAP CPQ that instinct has a name: retracting an approval. It sounds like a small, harmless click, and most of the time it is. The part nobody explains is what that click actually does to the quote’s status, its approval queue, and everything configured to react to it.

I have looked through SAP’s own documentation, its support notes, and the SAP Community threads where practitioners actually ask about this, and there is remarkably little written about retracting an approval in SAP CPQ as its own topic. It shows up as a bullet in a release note, or as one line inside a support fix for a different problem. So this is the version I wish existed when I first needed it: what the action really is, when you actually need it, how to use it without setting off a chain of smaller problems, and the traps that catch people once they think the job is done.

What Retract Approval Process Actually Means in SAP CPQ

The action behind the button has an exact name in SAP’s own reference: Retract Approval Process, listed as a standard workflow action with the description “once a quote is sent for approval, this action can retract the quote and no approval is any longer needed.” That is not a paraphrase, it is SAP’s own wording from the Standard Workflow Actions reference in the CPQ Setup and Administration Guide, and it applies to both Quote 1.0 and Quote 2.0. The action carries the same name and the same description in both engines, which is worth knowing on its own, because plenty of workflow behavior in CPQ does split between the two quote engines and this one does not.

What trips people up is a second action with a confusingly similar name. Cancel Changes exists purely to undo unsaved edits on a quote, and SAP’s own documentation describes it as an action that “retracts all the changes made on the quote since the last time the quote was saved.” Same verb, completely different job. Cancel Changes never touches an approval. If you are looking for the action that pulls a quote out of an approval cycle, you want Retract Approval Process, and it helps to say that out loud before you go configuring anything, because I have seen the two get swapped in workflow planning documents more than once. We flagged the same action by its exact standard name when it turned up in scripting contexts in our notes on the 2605 release, which is one of the only places on the public web where it is named at all.

When You Actually Need to Retract an Approval

In practice, three situations send someone looking for this action, and they are different enough that treating them as one problem causes most of the confusion. All three sit between submission and a final decision, which is exactly where things get messy if nobody planned for a way back out.

Reassigning a Quote Breaks the Approval Queue

SAP documents a real limitation here, not a rumor: when a quote is reassigned to a new owner while an approval is pending, “the approver cannot find the quote in the Waiting for Approval tab, preventing the approval process from proceeding.” The official workaround, straight from SAP’s Limitations and Known Issues page, is for the new owner to retract the quote and resubmit it, which puts it back into the approver’s queue correctly. If you have ever wondered why a reassigned quote seems to vanish from an approver’s list, this is why, and our own SAP CPQ Troubleshooting reference walks through that exact symptom alongside a few others that show up the same way after go-live.

Two colleagues in an office reviewing paperwork in a folder together, discussing a document that needs a decision

Expired Quotes That Refuse to Leave the Approval Tab

The second pattern is quotes that expire without ever being approved or rejected, and then sit in the Waiting for Approval tab indefinitely, still generating reminder emails. SAP’s own support notes on this are specific: the fix is to open the workflow configuration, set the start status to Expired and the end status to Reject, and select the Retract Approval action on that transition. Manually forcing a status change through the Script Workbench is not the same thing and will not stop the reminders, since approval reminders are explicitly not sent for quotes that are already Expired once the workflow is configured correctly. If a quote submitted for approval through submit for approval never reached a decision before its validity window closed, this is almost always the underlying cause.

The third pattern, editing a quote after it is already approved, deserves a note of caution rather than a firm rule. Whether that edit automatically resets the quote’s approval status depends on configuration in some SAP quoting products, and I have not found a source confirming the exact same behavior inside standalone SAP CPQ specifically, so I am not going to state it as fact here. What I can say is that if your quote goes back into review after an edit without you retracting anything, that is expected in some setups and worth confirming with whoever owns your workflow configuration rather than assuming.

Creating a New Revision Instead of Retracting in Place

There is a fourth option worth knowing about, and it is different enough from retracting that it deserves its own mention. Rather than pulling an approval back on the same quote, you can create a new revision of it. SAP’s own documentation on quote revisions is specific about what carries over and what does not: “all the data except approval history from the source revision will be copied to the new revision.” In practice that means a revision gives you a clean approval slate on a copy of the quote, while the original keeps its own history intact, which is a genuinely different outcome from retracting the same quote in place and resubmitting it. If the reason you want to back out of an approval is a substantial change to pricing or scope rather than a quick correction, a revision is often the tidier path, since it does not depend on whichever workflow status transitions your admin happened to configure with the Retract Approval action.

How to Retract an Approval Without Breaking What Comes Next

Retracting an approval is one underlying action, but there are two different ways it actually gets used, and knowing which one applies to your situation matters more than the click itself.

Permissions and Workflow Setup, Not Just a Button

Retract Approval Process does not appear automatically once a quote is submitted. It has to be configured as part of a workflow status transition, the same way Submit for Approval or Approve are, which means someone with administrator access decided which statuses this action connects and who can trigger it from the quote screen. If your team is still mapping out that configuration, our approval workflow training for internal administrators covers the setup side in more depth than I can fit into one section here. SAP’s own use case for this, described on the Parallel Approval page, walks through exactly this: a quote violates two approval rules, gets rejected on one, the owner fixes it, and then has to click the retract action before requesting approval again. If that button is missing for your team, the workflow was never set up to expose it on that particular status, not that the feature does not exist.

Retracting From a Script or Integration

For teams running approval logic through scripts rather than manual clicks, Retract Approval Process is also one of the standard actions that can be triggered programmatically inside a workflow context, alongside Submit for Approval, Approve, and Reject. We covered the mechanics of triggering quote actions this way, including where the approval endpoints sit and where they stop, in our piece on creating quotes programmatically with the SAP CPQ Quote 2.0 API. If your integration needs to pull a batch of quotes out of approval automatically rather than one at a time by hand, that is the more useful starting point than the UI action described above.

A person taking handwritten notes next to a laptop showing code, planning a workflow automation task

None of this happens in isolation from the rest of your approval design either. If your workflow already routes quotes through several rules and multiple approvers, retracting one submission touches all of that structure at once, which is exactly why the traps below tend to show up after the retract, not during it.

Traps That Bite After You Retract

Retracting an approval feels final, but three things can go wrong quietly on the resubmission that follows, and they rarely announce themselves as related to the retract itself. These sit at the same point in the quote lifecycle where a quote moves from draft back toward a decision, so it is worth watching for them every time a retract happens, not just the first time.

  • Approval rules are evaluated by specificity, and SAP’s own support notes confirm that once the engine finds a rule scoped to a specific user or company, it stops checking the more general rule that would otherwise apply, regardless of what that specific rule decides. A quote retracted and resubmitted after an organizational change can quietly route through a different rule than the one it hit the first time, with no warning that anything shifted.
  • Approvers who have gone inactive since the original submission cause two separate failures worth knowing apart. One documented error reads exactly: “one or more approval rules pertaining to this quote have no dynamic approvers, please contact the administrator,” which blocks the approval outright. The other is quieter: an inactive user or an invalid email address on the approver list means notifications simply stop going out, with no error at all, so a resubmitted quote can sit untouched because nobody was ever told it needed a decision.
  • Teams that have built custom item level or sequential approval logic on top of standard approval rules, since SAP CPQ does not support either natively out of the box according to practitioners who have asked in the SAP Community, run a real risk that a retract resets what SAP’s engine tracks natively while leaving custom tracking fields exactly where they were. The quote looks retracted, the custom logic still thinks otherwise, and the mismatch usually surfaces days later as a quote that behaves like it is in two states at once.

None of these are reasons to avoid retracting an approval when a quote genuinely needs it. They are reasons to check who the current approvers are and how your rules are scoped before you resubmit, rather than assuming the second pass will behave exactly like the first. If your team keeps running into approval workflows that break in ways nobody planned for, that is usually a sign the underlying setup needs a second look rather than another workaround. A SAP CPQ health check is exactly the kind of review that catches this before it costs someone a delayed deal.

Frequently Asked Questions

Why do expired quotes still sit in the Waiting for Approval tab even after their status changes?
Because a status change on its own does not retract the approval. The workflow needs a configured transition from Expired to Reject using the Retract Approval action, or the quote and its reminder emails keep going.
Why can't a new owner find a reassigned quote in their approval queue?
This is a documented limitation in SAP CPQ. Reassigning a quote during an open approval does not move it into the new owner's Waiting for Approval view correctly, and the official fix is to retract and resubmit it.
What is the difference between Cancel Changes and Retract Approval Process?
Cancel Changes undoes unsaved edits on the quote itself. Retract Approval Process pulls the quote out of an approval cycle. They share the word retract in their description but do two unrelated things.
Is Retract Approval Process available in both Quote 1.0 and Quote 2.0?
Yes, it is listed with the same name and description in SAP's standard workflow action reference for both engines.
Can a retract be triggered from a script instead of the UI?
Yes, it is one of the standard approval actions available inside workflow scripting, alongside Submit for Approval, Approve, and Reject, which matters for teams automating approval handling through integrations.
Why did my resubmitted quote get approved under a different rule than the first time?
Because SAP CPQ checks the most specific matching rule first and stops there. If anything about the account, company, or user scope changed between submissions, the quote can legitimately hit a different rule on the second pass.
Why do some approvers never get notified after a quote is resubmitted?
Usually because that approver has gone inactive or has an invalid email address on the approval rule. SAP CPQ will not error out loudly, it just stops sending that notification.