This blog post continues a series of Controlling related topics, which circle around showcasing new functionalities in S/4HANA Cloud, comparing functionalities between S/4HANA Cloud and SAP S/4HANA, as well as general topics to be considered from Management reporting/Controlling point of view when implement S/4HANA.
Focus of this blog posting is to discuss new functionality of intercompany allocations using Universal Allocation. This functionality was released to SAP S/4HANA as of release 2021. This means that there is no need for a modification for updating trading partner in the postings, which was relevant in SAP ECC (see note 1630884 ). That type of modification is also no longer allowed in SAP S/4HANA, as there are no totals records updated and reporting is based on the Universal Journal, the single source of truth.
Intercompany cost allocations can be required to distribute costs, that occur at one legal entity, but belong to multiple legal entities, e.g. services provided by a centralized shared service center. It can also be a case of costs, which should be recharged. The universal allocation focuses on distributing the costs across legal entities, after this process, there is still typically a need for actual invoicing for both parties (e.g. to get correct tax bookings).
To enable the intercompany allocations there are a few steps that are needed from master data and system configuration.
- Master Data
- General Ledger Accounts
- Allocation (assessment) accounts need be created
- Intercompany clearing accounts, each allocation account needs to be mapped to an intercompany clearing account, these must be of the G/L account type Nonoperating Expense or Income
- Cost objects
- Cost centers are always senders, but receivers can be either Cost centers or WBS. Cost center groups can be beneficial for selecting the receiving cost All cost objects (and company codes) should belong to the same controlling area in SAP S/4HANA.
- General Ledger Accounts
- The configuration is found in the following path: Controlling -> Cost Center Accounting -> Intercompany Postings
- A) You need to decide whether to allow Intercompany allocation postings for all company codes or only for selected companies. The “Allow only listed ICO postings” can be beneficial when dealing with countries or companies, where cross-company allocations are not allowed (either due internal controls or country specific legal requirements).
- Below is seen the “Allowlist” configuration (used when Intercompany allocations are only allowed for certain company code “pairs”):
- B) There is a need to maintain the Cost/Revenue Accounts (the allocation accounts) for the intercompany allocation, as well as their respective Clearing account (Debit / Credit). Here you pair the allocation accounts with specific intercompany clearing accounts. This means, that these accounts are used instead of “traditional” OBYA configured accounts (which are used in other intercompany processes, e.g. intercompany stock transfers). This way you can also control what type of costs can be allocated. E.g. by maintaining separate Intercompany allocation accounts and clearing accounts for IT, R&D or audit costs. Then opening the accounts only in the company codes where relevant functions are available.
- C) Lastly, you need to maintain posting keys that are used in the journal entries created by the intercompany allocation.
Creating an Intercompany allocation cycle is done using the “Manage Allocations” Fiori app. The process is similar as creating any other allocation cycle with this app. The main difference is that you need to select Allocation Type “Intercompany Allocation”, as seen in the figure below. The two other allocation types for cost centers (Overhead Allocation and Distribution) allow allocation only within one company code. If you are not familiar with the Universal allocation or creating cycles, I recommend checking this previous posting (Link: Allocations & Universal Allocation | SAP Blogs).
The intercompany allocation can be done for both plan and actual figures. Once you have created the header, you create the Segments, which contain the details for the allocations.
- For each segment you need to select the allocation account (which you need to have mapped in the configuration mentioned previously).
- Sender rules can be maintained as: Posted Amounts / Fixed Amounts / Fixed Rates
- Receiver rules can be maintained as: Fixed percentages / Fixed portions / Variable portions
For each segment there should be only one company code as sender, but on the receiver side, you can have one or multiple company codes. In this example there is one sending cost center, which sends fixed amounts.
The below figure shows the cost center receivers, which are maintained as a cost center group, but it could also be a range.
- The cost center group is created with (Manage cost center groups Fiori app in SAP S/4HANA.
- In case you use cost center ranges, instead of groups, you should be careful when maintaining ranges, as those cost centers can belong to many different company codes
- The receivers can be cost centers or WBS’s
The receiver basis is maintained under the last tab.
Once the segment is saved, the allocation is ready to be executed, by pressing the “Run” button in the Manage Allocations Fiori, this will transfer you directly to the “Run Allocations” Fiori, for selecting further settings for running the cycle (E.g., for which dates the allocation should be executed). Then, the “Run Allocation” transfers you directly to “Allocation Results”, to view the results. In case there are errors (e.g., cost center is closed for postings), you can re-run the cycle directly from “Allocation results” (assuming you made your corrections before), as shown in figure 11 below.
The network graph gives an overview of the allocation results. In the below example, the allocation is done from company code 1010 and distributed to company 1210 and 1710 (according to the portions maintained in the cycle).
The values posted to the leading ledger are copied to other ledgers (2L in in this example). Furthermore, under the Journal entries tab, (in the Allocation Result Fiori app) you can see the 3 journals created, one in each company code.
From the above view you can select any of the journal entries and drill down to them. The below picture is showing the journal entry in company 1710. The line items in the journal entry, has the posted amounts on the receiving cost center, as well as from the sender (1010). In SAP ECC this required a modification, but now it is standard functionality.
The related allocation documents can also be seen under the “Related documents” tab
Manage cost center group fiori app can be used for maintaining the required cost center groups for the allocation.
When setting up the intercompany allocation you usually need to remember, to take care of invoicing as well, this can be automated e.g., by configuring the sales intercompany billing functionality, taking benefit of the Intercompany clearing accounts used by the allocation (e.g., DIP profile configuration).
Also, it is good to note, that the intercompany allocation of universal allocation does not have a functionality for mark-up. In case mark-up is relevant for you , then I suggest you to familiarize the alternative process for Intercompany Cost Allocations presented by Stefan Walz and Sebastian Doll in their excellent blog (Link) (DIP profile can also be used with this second approach, by mapping the activity types to relevant billing items).
This blog post was focusing on how to setup intercompany allocations using the “Manage Allocations” Fiori, showing how it can be easily setup and hopefully giving some food for thought on what to consider when setting it up. In short; it is simple and quick to setup.
- What are your experiences with Intercompany allocations? Please share and let me know in the comments below.