The Project Billing solution (scope item 4E9) has been available in SAP S/4HANA Cloud Public Edition for a substantial period. It is extensively used for billing in professional service projects. For more information on its capabilities please refer to the Blog on Project billing for Professional services automation
Project Billing solution works on the principle of real-time billing data preparation for professional services automation (Scope item J11). When a service or expense is posted, it is immediately simulated for price and stored. However, there is complex logic behind the preparation of such unbilled revenue data that is billing relevant.
This document aims to provide an overview of the billing data preparation that works behind the scenes of the Project Billing solution.
Primarily, there are two different streams of billing data preparation.
This section describes the billing data preparation of the services and expenses relevant for resource related time and material billing. This preparation process remains the same whether the services and expenses are posted for the first time against a work package or if they are repriced via the applications Schedule Repricing for Projects or Manage Project Billing.
The process of billing preparation begins with determining whether service(s) or expense(s) are relevant for billing. This involves several stages:
The billing relevance of the services and expenses is based on the contract type of the associated sales order item linked to the billing WBS element. Only the services and expenses that fall under Time and Expense or Usage-Based Billing contract types are processed further.
Next, the services and expenses are filtered based on the General Ledger (G/L) account of the posting. Only those postings whose G/L accounts are part of the cost element group YBPS_BILL are advanced to the next stage. Therefore, customers must ensure to maintain the G/L accounts, that are relevant for billing, using the Change Cost Element Group application.
For Usage-Based Billing, only those postings whose G/L accounts are part of the YBPS_UBBT cost element group are advanced to the next stage. Any other postings related to this work package are disregarded.
The attributes of the filtered service/expense postings – G/L Account, source material (if applicable), and activity type (if applicable) – are matched against the flexible configuration maintained in the Maintain Billing Profile SSCUI/Configuration activity 103637. A significant point to note is that the sequence of the material determination configuration is crucial, as the first match is selected for the subsequent step. If no material is determined for the posting, an entry is created in the table associated with I_ProjectBillingElementEntry view, which is flagged to display as an error. For more details , please refer to Configuration for Maintaining a Project Billing Profile | SAP Help Portal and Blog on Material determination for Project Billing
The actual data preparation begins with this step, where all prerequisites for the preparation have been gathered. It comprises of two sub-steps:
Multiple entries from table associated with I_ProjectBillingElementEntry view are grouped and aggregated into a single “simulated billing document request” item based on differing values for the following set of attributes:
Items grouped by these attributes are simulated for pricing with the last date of the calendar month (when the service was performed) as the pricing date, which is also used as the exchange rate date.
Key Aspects:
As an initial step, the pricing procedure is determined using the above list of attributes. While the details of pricing simulation are beyond the scope of this document, it essentially evaluates the price against the condition records in each condition type defined in the pricing procedure. If a standard pricing procedure is determined, which is unchanged for example, for country DE, A10001, then the price evaluation runs as per the defined sequence of condition types – first PSP0, then PCP0 to find a matching condition record and consequently a net rate per unit and price. The fallback would be the PCO1 condition where the actual costs themselves become the revenue.
Upon completion of the pricing simulation, the price is provided back in the document currency of the sales order (which is also the same as the project currency) at the constructed item level. The price is then proportioned to be stored against each individual entry of the table associated with I_ProjectBillingElementEntry view that was part of the constructed item for simulation.
Alongside the pricing simulation, the revenue G/L account is determined. The determined account, along with the calculated revenue price, is stored in the finance table ACDOCA to ensure up-to-date unbilled revenue information.
In this section, we discuss the process of preparing billing data for fixed contract type usages such as Fixed Price, Periodic Services, On Account request, and Downpayment request. The trigger for the preparation of billing data is the creation/update of a billing plan item in the customer project application. An entry is then created in the table associated with I_ProjectBillingElementEntry view, with the following details derived from the billing plan items:
Key Aspects:
The diagram below provides a concise overview of the interaction of billing data preparation with billing up till the creation of billing document.
After the data preparation, user can select multiple Project Billing Elements on Manage project billing to initiate the creation of a Project Billing Request(PBR). A PBR may consist of any combination of contract types or usages, with the exception of Downpayment requests, which must be triggered in a separate PBR. Furthermore, a Project Billing Request can also be generated through an API. Please refer to API Business Hub for more details.
The user can perform housekeeping tasks such as postponement or write off and submit to generate Billing Document Request (BDR) creation. Before the BDR ID is saved, the system re-runs the simulation of Billing Document Request to ensure consistent net price unit determination.
Notably, at the time of BDR creation, it can contain different items related to different billing items with varying contract and usage types, and across different calendar months (billing item and month are grouping and aggregation attributes as stated above). Hence, the service rendered date passed varies depending on contract/usage type and month.
Up until the step of data preparation, the information from this prepared data is only available in the set of Project Billing Element views. This consists of I_ProjectBillingElement view which consists of Billing WBS element as Project Billing Element instance and the prepared data as its items I_ProjectBillingElementEntry view. Each I_ProjectBillingElementEntry instance has a reference that is linked either to a Time or expense journal entry in I_PrjBlgElmEntrJrnlEntrLink view (In case parent workpackage is associated with Time and Expense or Usage-Based Billing contract type/usage) or to a billing plan item in I_PrjBlgElmEntrBillgPlnLink view (In case parent workpackage is associated with Fixed Price, Periodic Service, Downpayment or On-Account request contract type/usage).
When a user opens the Manage Project Billing application and initiates the Prepare Billing function, a Project Billing Request (PBR) is generated and an entry is created in the table associated with I_ProjectBillingRequest view. The data used in a particular billing cycle is then stored in the table associated with I_ProjectBillingRequestItem view as items under a specific I_ProjectBillingRequest reference. Any postponements and write-offs that occur within the billing cycle are captured in the table associated with I_ProjectBillingRequestItem view.
Upon the creation of a billing document request, the reference of the partially or fully billed items from I_ProjectBillingElementEntry view, along with references to the Billing Document Request and the Project Billing Request are updated in the table associated with I_ProjectBillingElementEntrFlw view. The writte-offs are also updated in the table associated with I_ProjectBillingElementEntrFlw view.
In summary, the set of Project Billing Element views captures the billing data and its lifecycle, compiling this information in real-time in the background. The set of Project Billing Request views captures real-time changes done by the end user as part of housekeeping/preparation for billing document request creation. It subsequently preserves a snaphot of any postponements or write-offs carried out during a specific billing cycle, after the billing document request is generated.
The details of available CDS views can be found at CDS Views for Project Billing | SAP Help Portal. The relationship between the views is depicted below:
While the standard billing data preparation process mostly limits the end user's influence on material determination, especially for time and material billing, there are several customizable options that can significantly affect the data preparation process.
While the standard set of fields affecting pricing and aggregation logic are fixed, it is feasible to incorporate a custom attribute via the process extensibility options that can be configured to achieve one or combination of the below flexibilities:
The existing process extensibility option for this purpose is from Sales Order header/item to Billing Document header/item for Project Billing. For future options, please refer to Extensibility, from Journal entry through Billing, to influence Invoice Pricing and Structure
A cloud business add-in (BAdi) PROJ_BIL_MODIFY_BDR_DATA Billing Interface Field Modification on BDR item level, is accessible via the “Custom Logic” application and offers the following capabilities:
Please note, currently this BAdi is released only for key-user extensibility
In conclusion, the process of preparing data for Project Billing is a crucial aspect that significantly impacts the performance, efficiency, and accuracy of the overall billing system. A deep understanding of this process can equip organizations to identify the extensive potential of this solution. Furthermore, by fully comprehending the various flexible options that exist in data preparation for billing, organizations can tailor the process to fit their unique needs and conditions.
For more information on the Project Billing solution in SAP S/4HANA Cloud, please refer to the following links:
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
5 | |
5 | |
5 | |
4 | |
4 | |
4 | |
3 | |
3 | |
3 | |
3 |