Let’s explore how revenue accounting and reporting works in SAP S/4HANA.
The SAP Revenue Accounting and Reporting add-on solution, as well as SAP S/4HANA Sales with SAP Revenue Accounting and Reporting 1.0, became integral parts of the SAP S/4HANA core solution as of the SAP S/4HANA 1809 release. However, SAP needs to make sure that existing SAP Revenue Accounting and Reporting users are not impacted, so all revenue accounting and reporting developments are in sync between SAP Revenue Accounting and Reporting 1.3 SP 09 and SAP S/4HANA 1909. Therefore, you can expect all supported SAP Notes up to the SAP Revenue Accounting and Reporting 1.3 SP 09 version also to be available in SAP S/4HANA 1909. Similarly, all support SAP Notes available up to SAP Revenue Accounting and Reporting 1.3 SP 15 are available in SAP S/4HANA 2021 (refer to SAP Note 2386978).
Existing SAP Revenue Accounting and Reporting customers can continue to use the revenue accounting and reporting solution as before. If you want to implement a new revenue accounting and reporting solution in SAP S/4HANA 1809 or higher releases, you need to follow SAP Note 2656669 and provide necessary required information so that SAP Revenue Accounting and Reporting product development is aware of your revenue accounting and reporting implementation.
As of SAP S/4HANA 1909, SAP launched optimized contract management (OCM), an enhanced version of the existing revenue accounting and reporting (known as classic revenue accounting and reporting). OCM can work together with classic revenue accounting and reporting and hence avoid any upgrade risk. OCM can be leveraged for new contracts based on a new contract category set up in the configuration. Technically, you’ll see some changes, but you’ll find overall that existing database tables and processes remain stable.
There are changes: for example, a few business add-ins (BAdIs) are obsolete and new BAdIs are introduced, so your custom code will need to be adjusted. Overall, SAP’s OCM solution offers better performance and is also simplified if, for example, you’re integrating OCM with sales and distribution in SAP S/4HANA. In this case, as soon as you create a sales order, you’ll see that a revenue contract is now created in real time. Prior to SAP S/4HANA 2020, for revenue accounting and reporting, background jobs needed to be scheduled to transfer order and related follow-on information from sales and distribution to SAP S/4HANA’s revenue accounting and reporting solution. Now these background jobs are not needed for the integration of sales and distribution with the SAP S/4HANA revenue accounting and reporting functionality.
Another important aspect is inbound processing. Inbound processing in SAP S/4HANA 2020 and up supports real-time processing of revenue accounting items through new inbound processing application programming interfaces (APIs), unlike earlier versions in which this was batch job processing work. In SAP S/4HANA’s revenue accounting and reporting, you’ll also find changes of status and a limitation of only two statuses, postponed or processed, where before there were many statuses.
Note: This solution continues to improve, and we recommend viewing the SAP roadmap regularly (https://www.sap.com/products/roadmaps.html). We also recommend using the latest SAP S/4HANA version and support package for the revenue accounting and reporting solution. We also recommend that you review all applicable SAP Notes prior to implementing the revenue accounting and reporting solution (http://s-prs.co/v541900).
You can integrate the SAP S/4HANA revenue accounting and reporting solution with many SAP and non-SAP operational systems. The figure below shows how several operational systems are connected to revenue accounting and reporting in SAP S/4HANA in order-to-process invoices.
This architecture supports a five-step model to comply with new revenue recognition regulations:
- Identify a contract with a customer
- Identify the separate POBs
- Determine the transaction price
- Allocate the transaction price using the SSP
- Recognize revenue when a POB is satisfied
You can broadly consider four key components in this integrated architecture, which we’ll discuss in the following sections.
You can have three types of operational systems integrated with revenue accounting and reporting in SAP S/4HANA: SAP S/4HANA for billing and revenue innovation management, the SAP S/4HANA sales and distribution functionality, and non-SAP solutions. You can also have a combination of one or more of these solutions with revenue accounting and reporting in SAP S/4HANA, as depicted below.
Let’s walk through the three combinations shown above:
- Order information: Order information can be a provider contract (if the sender component is subscription order management or convergent invoicing/contract accounts receivable and payable) or sales order information (if the sender component is sales and distribution).
- Fulfillment information: Fulfillment information can be billable items (if the sender component is contract accounts receivable and payable or non-SAP) or delivery document information (if the sender component is sales and distribution).
- Invoicing information: Invoicing information can be invoicing information (if the sender component is convergent invoicing/contract accounts receivable and payable or non-SAP) or billing document information (if the sender component is sales and distribution).
You can send order, billing, and invoicing information from your operational applications to create a revenue contract relevant for revenue recognition processes in the SAP S/4HANA revenue accounting and reporting solution. You must ensure that all three elements flow into SAP S/4HANA for correct revenue recognition and revenue posting processes.
Note: In this architecture, integration of sales and distribution is optional. The architecture can be used when you have a product bundle setup, consisting of both services and goods that need to be delivered to customer premises.
Optimized Inbound Processing
Optimized inbound processing provides operational application-specific APIs and generic APIs for non-SAP operational applications (you can find more information at the SAP Help Portal: http://s-prs.co/v541901). Once the required order, fulfillment, and invoicing information flows through the operational application-specific APIs, optimized inbound processing also provides a new application to display and process partially processed and erroneous revenue accounting items through the Manage Postponed RAIs app. New database tables store processed, partially processed, and postponed RAI information:
- Processed RAIs database tables
- FARR_D_ORD_MI (processed order RAIs—main items)
- FARR_D_ORD_CO (processed order RAIs—condition items)
- FARR_D_FLFMT_MI (processed fulfilment RAIs—main items)
- FARR_D_INV_MI (processed invoice RAIs—main items)
- FARR_D_INV_CO (processed invoice RAIs—condition items)
- FARR_D_COST_MI (processed cost RAIs—main items)
- FARR_D_COST_CO (processed cost RAIs—condition items)
- Partially processed and postponed RAIs database tables
- FARR_D_INB_MI (postponed RAIs—main items)
- FARR_D_INB_CO (postponed RAIs—condition items)
- FARR_D_ITEM_PROC (inbound processing: item procurement status for account principle)
- FARR_D_INB_COPA (postponed RAIs—profitability analysis data)
Business Rules Framework Plus Enablement
Business Rules Framework plus (BRFplus) offers a specific user interface for applications and helps to create business rules. You can use BRFplus to process order, fulfillment, and invoice information for the SAP S/4HANA revenue accounting and reporting functionality. You can create a copy of a standard BRFplus template and assign your BRFplus application to your operational systems through IMG activities. You will find the following BRFplus templates for revenue accounting item classes for your operational systems:
- FARR_AP_SD_PROCESS_TEMPLATE: You must use this template for integration with sales and distribution.
- FARR_AP_CRM_PROCESS_TEMPLATE: You must use this template for customer relationship management (CRM) integration (sender component: CRM).
- FARR_AP_CA_PROCESS_TEMPLATE: You must use this template for the integration with contract accounts receivable and payable.
Revenue Accounting Engine
The revenue accounting engine is a part of the SAP S/4HANA revenue accounting and reporting functionality or the SAP Revenue Accounting and Reporting add-on solution. Revenue accounting and reporting works as a subledger, consisting of revenue postings divided into the following three transactions, which need to be either run manually or scheduled:
- Transaction FARR_REV_TRANSFER: You can calculate and transfer revenue of time-based POBs. This program doesn’t perform real-time posting; instead, it transfers revenue to be posted to the revenue accounting subledger.
- Transaction FARR_LIABILITY_CALC: You can calculate and transfer contract liabilities/assets. This program doesn’t perform real-time posting; instead, it transfers contract liabilities/assets to be posted to the revenue accounting subledger.
- Transaction FARR_REV_POST: You can run the revenue posting program. This program does perform real-time posting and provides all revenue posting based on the posting category. You also have an option to close the revenue accounting period while executing the revenue posting run. You can execute revenue posting programs in separate batch processes.
Comparison with Classic Revenue Accounting and Reporting
In SAP S/4HANA 1909, SAP introduced advanced functionalities to cater to IFRS 15 or ASC 606 compliance requirements through the latest technical capabilities in SAP S/4HANA. This is part of the SAP S/4HANA core solution. It offers the following functionalities compared to the classic revenue accounting and reporting solution:
- Day-based contract modifications
- Early termination with impairment loss
- Freeze periods for POBs
- Improved performance and stability
- Improved analytical capabilities using SAP Fiori and core data services (CDS) views
- Focus on simplifying the solution, performance optimization, and stability
You can find a comparison between the SAP S/4HANA revenue accounting and reporting functionality (or OCM) and SAP Revenue Accounting and Reporting (or classic revenue accounting and reporting) in the table below. In general, you will find these major changes in the SAP S/4HANA revenue accounting and reporting functionality, but overall the database tables FARR* and the revenue recognition processes remains stable.
Key Benefits and Capabilities
In the SAP S/4HANA revenue accounting and reporting functionality, revenue contract management and inbound processing have been optimized, which helps to improve performance. Advanced functionalities are also included, such as day-based contract modifications, an SAP Fiori-based user interface for all revenue analysis, and SAP S/4HANA-based reporting. The SAP S/4HANA revenue accounting and reporting functionality offers the following benefits and capabilities:
- Streamlined integration with optimized inbound processing
- Enhanced optimized contract management
- Enhanced disclosure support for revenue accounting
- Advanced revenue accounting and reporting features
- Use POBs
- Decouples revenue recognition rules and rules engine from order entry and billing systems
- Addresses data quality issues
- Massive scalability
- Assists customers in addressing IFRS-specific requirements and local GAAP requirements
New Features in SAP S/4HANA 2021
The following important new features are introduced in SAP S/4HANA 2021:
- Supporting the intercompany dropship process as revenue recognition events: This gives you the ability to integrate sales and distribution in SAP S/4HANA with the intercompany dropship process. In this integration, the vender invoice from other company codes (the delivered party) can be used for cost-related information. You can recognize revenue when goods are delivered from another company.
- Value-based fulfillments by amount from consumptions: You can use this feature to integrate the value contract in sales and distribution or in SAP S/4HANA for billing and revenue innovation management with revenue accounting and reporting in SAP S/4HANA. You can then recognize the revenue based on the proportion of the amount that has been consumed in the complete value contract.
- Direct posting: This feature gives you the option to post accounting documents immediately without running a revenue posting run job. Also, the accounting document is posted for each revenue contract. You can enable the direct posting feature for each revenue contract.
- Trigger time-based revenue recognition at customer invoice: With this feature, you can start the time-based revenue recognition of a POB when the customer invoice related to the POB is issued.
- Early warning mechanism for SSP: This feature allows you to verify whether the correct SSP is applied to an underlying product or service for allocation of the transaction price in multiple element arrangements. You can also evaluate past transactions to assess whether a reasonable range of prices exists. Finally, you can compare the charged prices (e.g., transaction price) to the SSPs.
- Contract balance reclassification: The Contract Balance Reclassification SAP Fiori app classifies balance sheet items related to revenue contracts into short-term or long-term items.
- Revenue catchup: The Revenue Catch-Up SAP Fiori app for business users enables you to analyze the period revenue catch-up, quarterly revenue catch-up, and yearly revenue catch-up. In the SAP Fiori app, additional dimensions are provided that help you analyze the revenue catch-up for other purposes.
- Manual price allocation: You can use the Manual Price Allocation SAP Fiori app to manually change the allocated price. You download/upload spreadsheets to change allocated amounts for many POBs. If some changes trigger allocation to occur later, the system overwrites the manually captured allocated amounts with allocated amounts determined by the system; this triggers an allocation conflict. To resolve the conflict, you can adjust the allocated amounts manually or reuse the default amount from the system.
Editor’s note: This post has been adapted from a section of the book Introducing Revenue Accounting and Reporting with SAP S/4HANA by Xin Fang and Santosh Kumar.