External Contingent Workforce for Customer Projects
Relevant for SAP S/4HANA Cloud 2208, public edition.
Co-authored by Miraculix and Fankurve.
External workers play an important role in service centric industries as companies have an increased demand on different talents beyond their traditional internal workforce. SAP S/4HANA Cloud, public edition, offers two ways to procure these external contingent workers for customer projects in the Professional Services scenario. An external worker can be either procured directly on a project or pool-based on a cost center. Both scenarios come with its advantages and disadvantages, which will be elaborated in this blog post in addition to a generic introduction and explanation.
The terms external workforce, contingent worker, subcontractor, and service performer are used synonymously.
Creation of external workforce
External workforce can be handled in multiple ways along the Recruit to Retire scenario. To give an example, they can be procured via SAP Fieldglass and fully integrated with SAP SuccessFactors Employee Central and SAP S/4HANA Cloud. Alternatively, external workers can also be created through the Manage Workforce or Import Employees app, or replicated through an API from an external HR system to SAP S/4HANA Cloud.
Independent of the above possibilities, the following facts are the most important prerequisites to use external workers in the project-based services scenario:
- The external worker is created as business user and business partner
- The worker type of the workforce is BBP005 (contingent worker)
- The external worker needs to be maintained as contingent worker of a domestic supplier
- A cost center needs to be maintained for the subcontractor if s/he is procured on cost center
Figure 1: Contingent worker factsheet
Overview of end-to-end process
Figure 2: End-to-end object flow for subcontractors
The contingent worker process starts with a released customer project that is in stage “In Execution” and a fully approved Purchase Order. For each time record of the external consultant, the system automatically creates one service entry sheet and one goods receipt. These documents are always created – independent of the account assignment of the Purchase Order item. Additionally, depending on this account assignment, there is an additional activity allocation posting to the Universal Journal (ACDOCA) through a direct interface from the cross-application timesheet, when the procurement is done on cost center.
The main advantage of this direct creation of the service entry sheet and goods receipt with the time recording is to allow the direct update and deletion of time recordings without the necessity to revoke and delete the service entry sheet manually before. See also deprecated note 2461101.
When the automatic creation of a service entry sheet fails, an error log will be written. This log can be checked with the app “Monitor Service Entry Sheets Generation Log”.
Figure 3: Application log for automatic service entry sheet generation
The give an example below, the work package was blocked for financial postings from procurement by using the blocked function “Other Expense Posting”.
Figure 4: Example of detailed log entry if automatic service entry sheet generation fails
After solving the issue, the automatic service entry sheet creation can be re-triggered with the app “Schedule Purchasing Jobs” (Advanced) using the job template “Automatic Creation of Service Entry Sheets from Time Recording”. The same can be also used for time recordings in previous periods, in which goods receipts cannot be posted anymore. Here, the field “Posting Date for Goods Receipt” allows the goods receipts to be created with a posting date, on which procurement processes are still allowed. The field Service Rendered Date is always updated in ACDOCA for these goods receipts, meaning that in the Journal Entry item and in the subsequent billing processes, there is the information available on which date the services were provided.
Purchase Requisition and Purchase Order
Depending on the business needs and processes within the company, purchase requisitions can be used as preliminary documents to get internal permissions before actually ordering the services with a purchase order. Additionally, purchase requisitions can be created without a direct project or cost center assignment or specification of the service performer. It is recommended to exclude purchase requisitions from automated sourcing runs so that no wrong supplier or service performer is determined.
The purchase order can be created with or without relationship to a purchase requisition. With the first option, all attributes are taken over from the purchase requisition and only missing information on supplier or service performer need to be added manually. With the second option, all relevant data must be maintained on header and item level of the purchase order. To give some examples:
- Supplier (which determines other mandatory attributes like purchasing organization or company code)
- Material with material group P001 Services
- Order Quantity
- Net Order Price
- Service Performer
- Account Assignment Category: Cost center (K) or Project (P)
- Start and End of Performance Period
- Account Assignment: Cost Center or WBS Element (work package ID), and G/L Account which is important for Project Billing
The available and selectable service performer needs to be assigned in its master data to the supplier when uploading the contingent worker. If supplier and service performer do not match, the system will give an error message that the service performer is not valid for this supplier.
Procurement on cost center (recommended scenario)
In the recommended pool worker scenario, the external worker is procured on a cost center. Thus, the purchase order item has account assignment category cost center (K) maintained. The cost center should be the same cost center, which is assigned in the employment data of the subcontractor.
Figure 5: Subcontractor is planned in the purchase order that is account assigned to a cost center
Additionally, a material is maintained in the PO item, which reflects the grade of the subcontractor – for example junior consultant. This should be equal to the planned role in the project resource planning:
Figure 6: Subcontractor is planned as resource in the customer project
The subcontractor is planned in the customer project with the role T001 Junior Consulting, which maps to the material T001 planned above in the purchase order. In the S/4HANA Cloud Timesheet, the subcontractor gets all work packages proposed for selection, on which s/he is staffed as a resource. The proposed selections always include the combination of these work packages, and the purchase order items, in which the subcontractor is maintained.
The next figure shows an overview of the subsequent processes.
Figure 7: Value flow for subcontractors procured on cost center
With the approval of the time recording the following business transactions are created:
- A service entry sheet is created, which triggers a goods receipt for the selected purchase order item. The goods receipt calculates the expenses by multiplying the purchasing price with the confirmed hours. The expenses are posted on the cost center and the GR/IR G/L account is credited.
- An activity allocation is created in a same way as the time confirmation of an internal employee. The maintained activity rate is multiplied with the confirmed hours to get the allocation amount. With this, the project that is selected in the time sheet is debited and the cost center assigned to subcontractor is debited.
In this process the project is debited with the internal cost rate rather than the purchasing price. The cost center itself is credited with the internal cost rate, but at the same time also debited with the purchasing price. Thus, the responsible cost center shows the differences between purchase price and the allocation to the projects. It obtains the procurement risk.
To ensure that the activity allocation has the same rate as the purchase price you can maintain a subcontractor specific rate, or even a WBS Element specific rate. In this case the project is debited with the same rate, which is maintained as purchase price.
Figure 8: Subcontractor specific cost rate
Line one shows an option to provide a subcontractor process specific cost rate. We follow in our example the pool worker idea and use the standard rate of 55€ for activity type T001 and no purchase order specific rate.
More information about cost rates in the professional service scenario can be found in this blog.
When the purchaser order is account assigned to a cost center, the time recording is automatically enabled through a prefilled task as soon as the external worker is staffed on any project that is in execution stage. Using multiple POs with overlapping performance periods for the same service performer in the cost center scenario can lead to many selectable items in the task list of the external worker’s timesheet. Based on the above example scenario, the subcontractor posts one hour on the project.
Figure 9: One hour time recording of subcontractor in the SAP S/4HANA Cloud Timesheet
Once the time recording is approved, the follow-on documents service entry sheet and goods receipt are created automatically as shown in the figure below.
Figure 10: Process flow of automatically created service entry sheet
The following postings are created once the time recording is approved:
Figure 11: Journal entries created by the time confirmation of the subcontractor (cost center)
In contrast to the procurement on project process, we debit here with an activity allocation, business transaction type RKL, the WBS Element (second journal entry), and thus there are additional information on the project available. All details that are entered during time recording are directly transferred to the universal journal: activity type, work item, billing control category (if applicable), and long text note field. This is one of the main advantages when external workers are procured on cost center. Additionally, the blocking functions, that you can apply on the customer project, work correctly during time confirmation – meaning that a time recording would not be possible, if the blocked work package is selected in the time sheet. In the other scenario (procurement on project) this blocking functionality does not work as there is no activity allocation created.
The third journal entry is the additional document created by the service entry sheet / goods receipt, for which the GR/IR account is credited, and the cost center is debited with expenses.
Additionally, the plan/actual comparison in the app “Project – Plan/Actual” works fine as both plan and actual have the activity type information available – see the last row, consulting, in the report below.
Figure 12: Project plan-actual comparison for subcontractor procured on cost center
In a same way, the mapping of actuals to the plan in the “Review Customer Projects” app works perfectly fine.
Figure 13: Review Customer Projects app for subcontractor procured on cost center
In the subsequent resource related billing all information such as activity type are available.
Figure 14: Project Billing for subcontractor procured on cost center
In Project Billing, the same information for the subcontractor purchased on cost center is available as for the time confirmation of an internal employee. Especially, it is possible to include the complete long text note from time sheet as the journal entry item, which refers to the timesheet, is available here. In the other scenario (procured on project) the note field is truncated to 40 characters.
Procurement on project
As an alternative to the procurement on cost center, the purchase order item can be account assigned to a project. The corresponding account assignment category in the purchase order item is project (P). In this process, the time sheet only creates the service entry sheet, which post a goods receipt to the purchase order. There is no additional CO activity allocation. As a result, the project is debited with the hourly price (net order price / order quantity) of the purchase order item with material as information that was planned in the purchase order item. As offset journal entry the GR/IR clearing account is credited. This possibility to easily get the purchasing price as a basis for internal cost transfer and to get all actual costs including supplier invoice differences on the project, is the main advantage of procurement on project. In this process, the responsible project managers obtain the risk of procurement.
Figure 15: Purchase order/item with account assignment category project
The main disadvantage of project procurement, which is also mentioned in the official Release Restriction Note of SAP S/4HANA Cloud, is that some attributes and functionalities get lost in the end-to-end process. These are for example the activity type and the billing control category alias receiver accounting indicator. Additionally, the note field is restricted to 40 characters and the blocking functionality on work package level is not supported. The reason or technical background is easily explained: The financial posting to the universal journal, which is relevant for billing, is processed in procurement, so essentially the goods receipt. Here, the above attributes are not known and also not forwarded to the follow-on journal entry.
Figure 16: Value flow for subcontractors procured on project
Thus, the billing material that is later on available in resource related billing, is determined by the material that is specified in the purchase order item. The activity type that was originally planned in the work package of the customer project does not have any impact. Example:
- Planned role in work package of customer project: activity type T001 (Junior Consultant)
- Specified material in purchase order item: T002 (Senior Consultant)
- Material in journal entry, which is posted on the project and taken in consideration as criteria for billing: material T002 (Senior Consultant)
We leave this example aside for now and continue the process with material T001 (Junior Consultant) in the purchase order item. The net order price of the purchase order item is 70 EUR with an order quantity of 1 hour. The costs are debited on the WBS Element (work package) through the goods receipt with business transaction type RMWE. The two TBRR revenue recognition postings are generated simultaneously with the source documents as explained in this blog.
Figure 17: Journal entries created by the time confirmation of the subcontractor (project)
The plan/actual comparison in the app “Project – Plan/Actual” does not fit nicely together: planned costs are visible with cost element consulting and activity type T001, but actuals are visible with cost element purchased service time and material T001.
Figure 18: Project plan-actual comparison for subcontractor procured on project
The mapping of actuals to the plan in the “Review Customer Projects” app works fine.
Figure 19: Review Customer Projects app for subcontractor procured on project
As explained above, in the subsequent resource related billing there are some information such as activity type missing.
Figure 20: Project Billing for subcontractor procured on project
Please note: If the supplier invoice in reference to the purchase order includes differences by quantity, price, taxes, or currency, this needs to be handled separately and manually in Project Billing and subsequent Event-Based Revenue Recognition.
Project Billing and the impact on its profile configuration
As briefly mentioned in this blog on resource related billing, the different ways of external service procurement have an impact on the Project Billing Profile (SSCUI 103637). The reason is again the existence of attributes in the journal entries that are relevant for billing. When procurement on cost center is used, the activity type is available and line 1 below is sufficient (similar to internal employees). However, when procurement is done on project, it is only the material that is available in the journal entry. Therefore, line 2 might be also necessary as configuration in the Project Billing Profile.
|PB Profile||Line||Mat. dir.||Qty/Costs||Billing Material||Field Name||Set Name||Value|
|CMPRJBL001||1||Transfer Costs and Quantity||T001||G/L Account||YBPS_T000|
|2||Transfer Costs and Quantity||T001||G/L Account||YBPS_T000|
Please be aware that cross-company purchasing for contingent workers is only allowed in the purchasing scenario with cost center. It is not possible to directly purchase on the project/WBS Element from another company code.
There are two scenarios available to procure external contingent workers for customer projects in the Professional Services scenario – purchasing on cost center or on project. The option with purchasing on cost center is recommended, because more details are available in the journal entry posted with the additional CO activity allocation on the project. Thus, more details are provided in the complete end-to-end scenario including review processes and billing.
More information on external contingent workforce in SAP S/4HANA Cloud
@Andreas Hammerschmidt Well elaborated on the 2 possibilities for getting the external workforces resourced for Customer Projects.
Great and very useful blog!
However I´d like to add that there´s a downside to the cost center assignment as well:
When we have multiple POs and multiple assignments for the same contingent worker the system cannot properly determine which assignment should go where and we end up with the permutation of POs and assignments in the time sheet app.
Do you know a proper workaround for that? Would be highly appreciated.
Thanks a lot for your feedback and question.
Using multiple POs with overlapping performance periods for the same service performer in the cost center scenario is not expected. If this is done anyway, there is certainly a permutation of prefilled and selectable items in the task list of the external worker’s timesheet. Why is one PO in this pool scenario not sufficient?