One of the prominent features introduced as part of SAP Revenue Accounting and Recognition (SAP RAR), version 1.3 is to handle the foreign currency transactions (known in financial circles as forex) more efficiently, based on financial laws IAS 21/ASC 830.
Previous Forex Processing Method in SAP RAR
Through SAP RAR 1.2, the contracts used the fixed exchange rate method for the contracts with foreign currency. This method uses a fixed rate at the beginning of the contract, so the exchange rate from the contract start date is chosen and is fixed throughout the contract lifetime.
Revenue would be recognized with the same exchange rate throughout the contract life and any adjustments to the foreign exchange gain or loss would happen with fixed rate from billing. This fixed exchange rate per contract was a big limitation for many of the customers.
New Forex Processing Method in SAP RAR
With SAP RAR 1.3, SAP has introduced the actual exchange rate method for dealing with the foreign currency contracts. This method uses the actual rates and spot rates for recognizing the revenue as well as the liabilities. Revenue is realized with different rate based on the actual rate at the time of recognizing the revenue.
Version 1.3 provides an option to configure the exchange rate at an accounting principle level as shown in below. You are able to choose between Fixed Exchange Rate Method and Actual Exchange Rate Method.
Some of the customers may choose to calculate the contract asset and liability at a POB level; in this case, the invoice associated with the line item also has to be distributed to reflect the accurate balances at POB level. To accommodate this requirement, SAP is introducing the concept of distributing the invoice across POBs using a BAdI.
If the customer decides to exclude certain currencies from getting calculated in SAP RAR, they can configure to exclude the currencies as shown below.
Once the contract is set up in the system, the system will keep track of whether the contract is using the fixed exchange rate method or the actual exchange rate method as a contract header (see below).
Let's dive deeper into the actual exchange rate method. Our example contract has three different POBs (cell phone, mobile subscription, and an internet subscription) as shown in the following table. We can notice that the contract was allocated between POB1 and POB2. $300 was taken from POB2 and sent to POB1. At the time of invoice due for the subscription, the exchange rate was 0.80, and the total local currency is $100, which is distributed between POB1 and POB2.
When the contract was set up the exchange rate on the contract was 0.70. However, when the invoice was issued for POB2, the exchange rate was 0.80. At the month end when the actual accrual program runs, the program for POB2 is picked up at 0.8 and realized at $80.
As we didn’t receive the invoice yet and at the time of contract origination the exchange rate was 0.70 so, the system will pick and exchange rate of 0.70 for the third line item and recognizes the revenue—this is shown in the table below. The exchange rate difference postings will be triggered in case of the contracts with contract liability balances.
It’s important to account for gains and losses occurring from the forex market. There are two major methodologies for processing these fluctuations—the fixed exchange rate method and the actual exchange rate method. Beginning with SAP RAR 1.3, you are able to utilize either method for measuring your revenue.
With the instructions above, those running SAP RAR will be able to accurately count the money a business makes or loses with both methods.
Editor’s note: This post has been adapted from a section of the book SAP Revenue Accounting and Reporting and IFRS 15 by Dayakar Domala and Koti Tummuru.