Financial Accounting for customer projects in SAP S/4HANA Cloud: Part 2 Enhanced activity confirmation for service industry – including intercompany margin posting
Welcome to part 2 of the blog series Financial Accounting for customer projects in SAP S/4HANA cloud.
In this blog, Birgit Oettinger and I would like to show you how S/4 HANA cloud covers the professional service industry requirements for activity allocation and time sheet confirmation. We will look at the S/4 HANA cloud capabilities for flexible cost rate definition, the processing of intercompany time confirmation, the interface between time sheet and Financial Accounting and the enhanced management reporting capabilities based on the Universal Journal.
Flexible cost rates for activity allocation in S/4 HANA cloud Financials
One major requirement in service industry is the definition of the cost rate based on Who provides the service – e.g. Junior consultant or project manager. In ERP it was based on what is provided only – e.g. senior consulting. The “What is provided” is defined by the role planned in the project work package. The role is mapped in Financials to the activity type. In case of T&M billing it is the base for billing to the customer.
To allow an employee grade dependent valuation we provide in employee master data a new attribute the “service cost level”.
Figure1: employee fact sheet
There are 20 different attributes/grades in content provided. The service cost level can be assigned to an employee time dependent. Thus, it is possible for example to value the confirmation of an employee with rate Junior in 2018 and with rate Senior in 2019.
There is no aggregation of time sheet entries in S/4 HANA cloud by transferring to Financials. For every single time confirmation, Financials gets the personal number with which we read HR master data and derive the service cost level.
To allow valuation of the time confirmation based on the service cost level and further attributes, we provide a new cost rate maintenance APP.
Figure2: new app “ Manage cost rates – Professional Services”
In contrast to ERP, where cost rates always are defined for cost center/ activity type combinations, we support many different key combinations for the cost rate maintenance in cloud.
In a professional service scenario, cost rates based on just the service cost level should be quite common.
But in exceptional cases there can be rates defined for a specific employee, for example a key resource. Or by the receiving WBS element: this could be the case if customer wants to negotiate special “purchasing like prices” in an intercompany scenario.
There is an additional attribute for confirmation provided: the work item. The work item allows us to distinguish the activities performed by an employee – e.g. training, travelling or testing. Work items can be planned in a customer project and will then automatically default to the time sheet app for the staffed consultant.
As there are now many key combinations possible, we defined an access priority – shown in figure 3
Figure3: priorities deriving cost rate
The valuation of plan costs for customer project work packages works similarly. As long there is no staffing at the employee level, the rates will be based on the role/activity type and the default cost center entered on project header. As soon as the work packages are staffed, service cost levels can be derived and then we can use the more detailed service cost level cost rates.
Please recognize that we do not distinguish anymore between cost rates only valid for actuals and for plan! The feedback we get from service industry customer that they do not use different rates for plan and actuals.
The main difference between planned activity costs and actual costs is the level of detail used for cost rate determination. For example, in an early stage of project planning no employees are assigned to the work packages and the planned costs are calculated based on rates per role (activity type), while in later stages of project planning and during actual time confirmations, cost rates can be derived based on service cost level or even based on employees.
For convenient maintenance there is a download and upload (1808) functionality provided.
Real-Time Intercompany Postings including Margin posting
In professional service industry it is very common to have a customer project staffed by resources from different companies. The requirements are: real-time update of the intercompany confirmation on the ordering customer project to allow immediately customer billing, employee should enter only one confirmation and not 2 for both companies, there should be intercompany costs allocated to the customer project including a margin.
S/4 HANA cloud supports a direct cross-company time sheet confirmation by crediting employee cost center and debiting the customer project update – including mark-up on the costs. So customer project is real-time updated.
For this purpose, there can be special Intercompany rates maintained including a margin. In figure 2 you see an example. For activity T002 “Senior Consulting” there is an intracompany (company code 1710) cost rate of 80 USD maintained, for Intercompany confirmation to company 1010 a rate of 80 EUR what is based on the currency rate of 1,25 similar to 100 USD.
Figure 4: Intercompany rate example
In the professional service industry it is very common that the intercompany rate is defined by the sending company and independent of the receiving company. For this use case there is a simplified cost rate maintenance available. If you flag “ICO rate” and leave the receiving company empty, the rate is valid for all receiving company codes maintained in the system.
In case the sending and receiving companies have different local currencies, a frequent requirement is that the receiving company expects stable “intercompany prices” – without exchange rate fluctuations. For this purpose the intercompany rate can be maintained in the currency of the receiving company. The currency maintained in the cost rate app is taken as the transaction currency.
Now we will show an intercompany confirmation example: a consultant of company code 1710 (US) enters one hour on a customer project in company code 1010 (Germany) in the time sheet. As mentioned the currency rate US to EUR is 1,25.
Figure 5 —— Time recording and follow-on margin posting in the G/L Account Line items app
In figure 5 you see the result of this confirmation: for the time confirmation two postings were created at the same time. Column 4 shows that all documents created by the same time sheet document 996.
The activity posting based on the quantity of 1h is valued with the US intracompany rate USD 80 – line 2 in figure 4. This is converted to EUR 64. Then there is a second posting created with the margin. The margin is the difference between the intercompany rate of EUR 80 and the intracompany rate of EUR 64. This leads to a margin of EUR 16.
The customer project is always debited with EUR 80, independent of exchange rate fluctuations. In this case a cost rate of EUR 64 and margin of EUR 16.
In the first block you see the postings in company code 1710 (USA): here we credit the cost center of the consultant with the activity rate and the margin. We debit intercompany clearing accounts, which are profit-and-loss (P&L) accounts.
These clearing accounts are never settled. The legal and consolidation relevant posting – including tax – will be provided in a follow-up process – see below.
The second block of posting lines illustrates how these costs were received in company code 1010.
In line 6 the receiving project SW006.1.1 in Germany is debited with the cost rate of the US consultant of EUR 64. Only this line covers the quantity of 1h, what would be relevant in case the customer project uses Time and Material billing.
As the offsetting item, the same amount is created with an intercompany clearing account – line 6.
In this line item 8 the intercompany margin/ markup of EUR 16 is posted. See figure 4: the difference between the intercompany rate of EUR 80 and the 1710 intracompany rate of EUR 64 (80 USD*1,25). This journal entry is a cost allocation without a quantity. This is important in case of T&M billing of the receiving customer project.
In case of T&M billing we will see in Billing 1h Senior Consulting for project billing item sw006.01. To assign the cost amount of EUR 80 and not EUR 64 to the billing item, we provide reference activity type “senior consulting” for this cost allocation line (column 12)
For both postings the same amount is posted offsetting to an intercompany clearing account- line 5 and 7.
Based on the activity allocation G/L account there is the margin G/L account derived. There is no self config UI available
The intercompany clearing accounts are derived by the G/L account of the activity and margin posting. There will be a self-configuration UI in 1808 – see figure 6
Figure 6 configuration for intercompany clearing accounts
Relevant for consolidation is the trading partner (the far-right column in figure 5) This is used as the basis for eliminating profits between affiliated companies during the consolidation process. As only P&L accounts are used and a balance of zero is ensured, there is no consolidation impact. For the relevant postings see figure 9.
Let’s look at the postings of the sending side, company US. You would expect to see the WBS element as the receiver of the allocation, but not in the sending lines where you credit the cost center. The WBS element is filled in all four line items as a reporting attribute. This provides the sending company complete transparency over which cost objects have received charges – even there are in different companies. There are no follow-up processes for this posting on the WBS element possible in company code 1710, only reporting.
In figure 7 the APP Projects – Actuals shows how these postings are reflected in reporting. In this example we have selected the project definition SW006. Notice the Consulting and ICO Margin accounts assigned in the sending company code 1710 to the project.
Figure 7 project reporting cross company
Please recognize that there is only a mark-up for intercompany activity postings available. There is no mark-up for intercompany expenses and intracompany activities (for example cross Profit center intracompany).
Periodic Intercompany billing
The postings in figures 5 take place whenever time is recorded (often on a daily basis). With a periodic run we select all these postings and automatically create one billing document for every company-company relationship, which is transferred to a corresponding Accounts payable posting. See process in figure 8
Figure 8 Overview real-time Intercompany resource allocation and periodic billing
It is important for the automatically calculated intercompany billing amount that the intercompany markup has already been calculated and posted based on the settings for the activity rate. The same exact amounts allocated during the period will be billed to the ordering company at period-end, there is no additional pricing.
There are no reconciliation efforts between services provided during period and billed affiliated revenues and period-end.
Example: if there were just this one posting in figure 5 between company code US and Germany, the billed amount would be EUR 80 plus taxes.
Important: we expect that all confirmed intercompany activities have to be billed intercompany – even they are not billed yet to the customer or even not billable to customer. There is an intercompany service fulfilled and has to be billed.
The periodic billing is relevant for consolidation. The affiliated revenues and expenses are posted with trading partner and needs to be consolidated. See overview figure 9
Figure 9 Posting Overview Resource related Intercompany process
Prerequisite is the staffing of the US employee in the ordering company
With the time confirmation (1) of the employee you get:
1a) the activity allocation based on costs in both companies and (1b) the margin allocation in both companies
At period end there is automatically an intercompany billing document created (3), which triggers with IDOC in the receiving company an AP document (4).
Time sheet – Financials integration
Here we will show an example in system how the information in CATS confirmation posted in Accounting.
Figure 10 – time sheet confirmation on project with note and work item
Figure 11 Fin document for time posting
In line 1 – the confirmation line item – you see text and work item is persisted in Universal Journal and available for T&M billing. Line 2 and 3 are revenue recognition documents, where the notes are provided too.
The profitability attributes customer and product sold provided for all items – see blog 1 real-time-insights-in-project-based-service-scenario
Service rendered date, time confirmation in closed periods
The use case is that a consultant creates his time confirmation very late, for example because of out of office for a long time, and the Financial accounting period and the books are already closed for the corresponding period.
To ensure correct HR utilization reporting and correct confirmation date in Time and Material billing document we allow time sheet confirmation in closed periods.
Our concept is the following.
If period is closed the time sheet documents transfer to Accounting fails and the failed documents are stored in an operation que and error log is created.
There is an APP “transfer issues” available in the role overhead accountant: here you see if there are unposted documents and with the detail view you can check what is the reason. (Please be aware that the data is sent to FIN only after their approval by the project lead.)
In this case you get the information “period Month/Year is closed. You can post these documents with the APP “Process Unposted time confirmations”:
- You need to provide a posting date in an open period
- please flag “transfer PERNR” (the employee reporting, the valuation in FIN, the billing and the subsequent attributes are dependent of this field)
A journal entry will be created including new field “service rendered date”, for which the consultant entered the confirmation. The service rendered date is stored in the journal entry and forwarded to Time and Material billing. With the service rendered date the cost rate is derived.
The consultant enters his time on March 26 for February 7, and February is closed in FIN. The confirmation will be stored in a log “transfer issues”.
An accountant can post this confirmation in the next open period by providing a posting date, for example March 1.
This will create a journal entry with:
- Document date March 26
- Posting date March 1
- Service rendered date February 7
The service rendered date is relevant for T&M billing – pricing date and service confirmation date provided on the billing document to customer.
Additional the HR Utilization report will recognize the entry for February 7.
Time confirmation for subcontractors
If you engage subcontractor employees or contingent workers on a regular basis and for a certain time frame without a concrete project assignment upfront, you can handle them the same as internal employees. See SAP note 242847
Employee master data has to exist in S/4 HANA cloud. Assignment to cost center and to service cost level is possible.
The time confirmation of a subcontractor employee leads to two value flows:
- Just as for the internal employee, a Financial activity allocation is triggered. It credits the cost center of the subcontractor and debits the WBS element. The cost rate definition is the same as above, and if maintained the service cost level will be taken in account. Intercompany posting is possible too.
- There will be a confirmation for the purchase order, which is assigned to a cost center maintained in the purchase order item.
To allow margin reporting by type of resource – own employee, intercompany employee or subcontractor, there is a new attribute derived and stored in Universal Journal – the resource.
For every posting with an employee ID on a project we read employee master data to check if it is own employee or subcontractor.
Reporting example please see in figure 12
Figure 12 – Project Profitability APP including attribute resource
In Part 3 I will cover some service industry specific reporting capabilities – including customer project margin by contributing PC
Feedback and topic suggestions are welcome.
Excellent explanation Stefan!!!
Thanks for a very clear explanation.
I have one question, the final invoice posting that you have made and for revenue Account (1710) and Affiliated Company cost account in (1010) you have said "No Account Assignments" are both of then Non Operating P&L Account? If not what is the type of account,
yes, the affiliated revenue account in 1710 and the affiliated expense/ Consulting account in 1010 can be non operating P&L accounts. They are relevant for legal reporting and for consolidation, but they should have no impact on "CO".
the CO postings already happen with the single intercompany cost accounting postings.
Technically you can apply a cost element for these accounts. in this case the affiliated revenues are posted against the Ico sales order item and the affiliated expenses needs to be account assigned by OKB9.
Great article Stefan!
To improve readability - consider adding the line numbers in Figure5 - and check the text below it on correctness when referring to line items?
Great article Stefan! thanks
Thanks Stefan very good blog.
Appreciating your explanation. But small doubt, i have seen no where EUR 80. USD 80 only shown as EUR 64 because of exchange translation (Figure 5). How we can calculate margin here as we only know intercompany cost rate but not the intercompany billing rate. suppose if 1710 giving its resource at their cost price USD80 then there is no margin at all in this transaction.
Suppose if you say just to eliminate the exchange rate fluctuations the cost rate is maintained in EUR as EUR 80 (Receiving company code currency ) instead of USD80 (sending company), then the difference is not at all margin right?
Please clarify on this.