Procurement Approvals – S4 Flexible Workflow
Sourcing and Procurement as a concept in any industry has evolved with time. It is no longer being looked at as only a cost center, but it can add value to your supply chain. Vendors are business partners and part of your extended value chain. Their growth is your growth. When we deal with business partners, it generates lot of purchasing documents in system e.g., Long term contracts, Purchase Orders etc. Each of these documents are binding on both vendor & buyer. It involves an agreement to purchase a certain SKU at a certain price for a particular period for certain quantity. There are also other kind of purchasing which are not long term in nature but ad-hoc purchases to deal with overall operations which are sometime called Indirect Procurements. In those scenarios, a group of buyer raises an internal request within the organization to request the goods which may be charged to a cost center or a project.
All these kinds of procurement processes need approvals e.g., depending on a value of a purchase contract OR purchase order, it can either go for a single level or multi-level approval. For indirect procurement scenarios, internal request (sometimes called purchase requisition) need approval from owners of cost centers or projects.
In a consumer industry this approval process is prevalent like any other. Number of SKUs are quite large there. Almost all kinds of procurement occur. And for a big organization, approval matrix can be quite complex leading up to CEO or Senior VP. SAP has taken a note of this and have been trying to simplify this approval process of purchasing documents. Earlier, solution used to be “release procedures” in ECC world where an approver had to approve by using an SAP GUI transaction which were not end user friendly. They had to navigate thru config jargons to do that. Other option is to create a custom business workflow to deal with it but that has higher cost as it involves development.
In S4 HANA, SAP has come up with flexible workflow concept for purchasing document workflows. The whole idea here is to simplify the set up and make the approval process user friendly. Almost everything is configurable in this. SAP has provided step by step guidelines for configuration to set up these workflows in their help website. Following links are very useful: –
Purchase requisition Workflow: –
Purchase Contract Workflow: –
Purchase Order Workflow:
- This workflow is based on a pre-defined set of workflow scenario ids and tasks e.g., Purchase contract workflow Scenario Id – WS00800304 and Purchase Order workflow task – WS00800238.
- This gives you an option to define condition-based workflows for different procurement processes. There are Manage Workflow Apps where you can configure single or multi-level approval based on conditions.
- Workflow approval tasks are made available in My Inbox Fiori App which is used for other kind of approval too in other processes e.g., leave approval etc. Hence, it establishes a single window of approval for the organization for various kind of approvals.
- Approver determination (called Agent in Workflow Parlance) is integrated with Successfactor i.e. HR Mini Master. Standard SAP supports Approver determination either based on user OR role. In case of User, we can directly specify user Log-on Id in SAP as approver. For role based approval, following agents are available to be configured:
- Manager of Last Approver
- Manager of Workflow Initiator
- Manager of Workflow Initiator’s Manager
- Person Responsible for Specific Accounting Object with Highest Debit.
- Approval statuses of purchasing documents can be seen in various Fiori reports available e.g., Manage Purchase Order, Manage Purchase contract etc.
- Standard Email notifications can be sent to approver/Buyers to their email ids with approval links. They can use those links to log-in My Inbox Fiori Apps to approve/Reject. Standard Email templates are available for this in system. A custom Email template can be configured as per organization need.
- Deadline Monitoring is supported from SAP S4 HANA 2020 Version. This helps to set up a deadline by which an approver should approve the documents. If the deadline is breached, email notifications can be sent to approver or the manager to remind him to approve.
- Substitution or delegation is supported in flexible workflow. In absence of actual approver, he/she can assign a substitute OR delegate who can approve in his/her absence.
Important Fiori Apps to set up Flexible Workflow
2. Manage Workflow App –
Setting up approvers in manage workflow app –
By Role –
By User –
Setting up Deadline ( Available from S4 HANA 2020 Version onwards)
Maintain Email templates –
SAP has provide Pre-delivered Email templates in various languages which can be used to send emails to approvers –
Email templates for deadline monitoring : –
Based on implementation experience of Flexible Workflow in a large CPG client, there are certain points that need to be considered before we embark on this journey.
- Although most of the steps in flexible workflow are configurable and standard, we should have a workflow consultant to oversee this. BASIS and Functional Consultants play major role in configuring these too.
- For a large organization, standard agent determination may not work which in standard is very simple. In those cases, we will have to use standard BADI (MMPUR_WORKFLOW_AGENTS_V2) to determine agents. ABAP consultant help will be required for this.
- Steps provided in SAP help are all configured in standard already. But, we should re-validate again in case something is missing e.g. Standard scenarios should be activated if already not done.
- BASIS needs to set up RFC destinations, activate SAP_WFRT users. They need to set up standard batch jobs for email notification like SWN_SELSELN.
- Workflow Admin transaction SWIA is quite useful for consultants to learn. This helps to analyze the tasks for workflow in case of exceptions. It clearly specifies where the task is lying in case of errors.
Improvement points suggested in Flexible Workflow
- Currently, an approver can delegate a task to another approver in his/her absence. But, it does not look at the approval authority of the person to whom it was delegated. Hence, there can be controls issue in such cases where the delegated person does not have authority for the approval limit.
- Email notifications are not very consistent and take time too. We have to constantly check if email is already sent for the task. Improvement in this area is going to be very helpful.
- In case approver rejects a purchasing document, he/she can add a comment in “My Inbox” App to specify reason for rejection. But, that is not passed over in the rejection email notification to the buyer. This message if passed over to buyer will help him/her to take corrective actions quickly.
- Approvers must log-in to SAP & Fiori App “My Inbox” to approve tasks. For senior approvers like CEO, they may not be very conversant with SAP. It will be good to be able to approve from an outlook email without logging in SAP with safeguards in place.
- A manager/buyer level Fiori report to showcase the number of workflow tasks generated by him/her for a specific period, how may are pending for approval & for how long, how many are rejected with rejection reasons, which tasks are substituted & how many tasks are overdue etc., will help. Current reports do not give an overview from a business user perspective. These data will help lot in optimizing workflow or business process.
Above all, this is a very good tool to approve purchasing document. This is seamlessly integrated with ‘ My Inbox’ App which is generally used for other approvals too. I hope this blog is very helpful for all the functional consultants out there who has to talk to business to gather requirements and get their head around this new piece. Why should only workflow consultant have all the fun 🙂 Functional consultants who are customer facing don’t have just testing role here. They can contribute much more than that if they know the facts, configuration steps and gaps in this solution. And this blog gives them just that overview what to expect from flexible workflow and where to look for help.
Please feel free to leave comments and feedback. You can follow SAP Business Workflow tag to receive updates on blog posts. Readers can find Q&A and post questions in SAP S4 HANA OR SAP Business Workflow community. I plan to write more on my implementation experience on various topics in last 17 years.
Thanks and Regards
Senior Manger/ SAP S4 HANA Supply Chain Architect
Great blog as usual Dinesh and right on point.
I would also add that from experience the standard email template for extended workflow notifications (SWN_SELSELN) is a not UI/UX friendly and by today standards customers usually ask for it to be customized, for example the links generated in the email will direct the user to the SBWP transaction and not to My Inbox app (in S/4HANA 1909).
Also, some of the reasons why I still not recommend flexible workflows to my clients are:
1) Flexible workflows are not triggered for POs created from the GUI
2) POs subject to flexible approvals cannot be approved from the GUI, so the workflow work item becomes a single point of failure.
3) If you are using a BADI to determine the approvals, there is no way to display a preview of approvers in the PO Fiori App similar to the release strategy tab in ME23N (this is a killer one).
4) If a workflow has multiple approval steps and you would like to send a notification email once the workflow is finally approved, then it cannot be done using flexible workflows unless you create a custom code to be triggered on the release event.
Hi Manaf Abu Rous
Are you sure about your point 1? In the company I am working for we normally create POs through SAP gui (or Webgui) and they trigger flexible workflows. We are on S/4HANA 1909 OP (S4CORE 104).
Thanks Manaf for your reply. I will suggest you start recommending clients to use flexible workflow. SAP has come a long way on this. We have been using it for one of our client and it has improved by leaps & bound. There are some issues still which i had pointed out. Now, coming to your specific points : -
Hope these clarifies open points. We can discuss further if you want to. Good to engage with you again : )
Thanks Dinesh for sharing your feedback, it is always a pleasure to listen to your insights.
Seems like I will be doing some research on points 1, 3, and 4 to see what was introduced in the latest releases.
Manage all types of Approval Workflows at one Place. No Coding. Drag & Drop. Try for Free.
Customizable Workflows. Ad-hoc Approvals. Process Transparency. Easy Integrations.
Dinesh Agarwalla Thanks for the great blog. I have a question related to approval levels. In classic release strategy, max 8 levels are supported for approval. In flexible workflow, when it says multi-level approvals, does it mean it can be any number of levels? Even more than 8 will be supported?
Yes. In Flexible Workflow, it allows more than 8. We have used more than 10 for one of our client. It allowed us. So, i think it should at least allow minimum 99 level.
Dinesh Agarwalla Thanks for clarifying. One more question on conditions to restart the workflow. Classic release strategy has % tolerances based on which restart condition can be defined. In flexible, is that option possible? I only see fields on which restart is possible.
This is possible. Restarting of workflow based on certain fields or attributes is configurable. In SPRO, you can go to "Manage Conditions to Restart Flexible Workflow" to define the conditions. For example, for purchase requisition, you can say if quantity of items OR purchase requisition price is changed, restart the workflow. For purchase orders, there are other attributes like changing vendor, company code & Total net order value, workflow will retrigger.
Some important OSS notes on this topic : -
2800331 - Fields which trigger a re-start of Flexible Workflow for PO
2846174 - BAdI "Define Conditions to Restart Flexible Workflow for Purchase Requisitions"
Thanks for the great info. I just wanted to check if there has been any update on the ability to check authority levels of users who tasks are delegated to? My understanding is currently if the CEO mistakenly delegates their approvals to the janitor (yes a dramatic and unrealistic example, but hopefully illustrates the point), then the janitor inherits the CEOs approval levels.
No. Unfortunately that is still not available. In latest 2021 upgrade too, it is missing. Hope to see it in future releases.
I have been searching for information regarding manager approvals. Where should the relationship between employee and manager be maintained?
Rules & Responsibilities - the old HR (PPOME) - or a third place?
The entries in PPOME result in entries in the HRP1001 table. These relationship information is used to determine the "Manager of Last Approver" or "Manager of Requestor".
It is possible to use functions from Teams & Responsibilities as a role. You can select this role in the workflow setup as the receiving Agent.