To comply with the latest bookkeeping principles and current regulations, such as US-Generally Accepted Accounting Principles and the Sarbanes-Oxley Act, companies are required to post revenue according to a time period. This means that the revenues must be realized in the posting period in which the service was carried out or goods were actually delivered. The R/3 revenue recognition functionality, which you configure in Sales and Distribution (SD), helps to fulfill this requirement of separating the revenue recognition process from the billing process.
Key Concept
Revenue is the sum of invoiced sales without sales tax. You record this in the general ledger — the company reports revenue periodically in an income statement. When you issue invoices for the booked sales, but the service or goods are not yet delivered, the related expenses are not booked. This inflates your profit margin. For this, the revenue recognition process is important to reflect a true picture of the income statement.
The revenue recognition functionality in R/3 separates the revenue recognition process from the billing process. This functionality is available with Release 4.6C and in mySAP ERP Central Component (ECC) 5.0 and ECC 6.0. The setup of the revenue recognition function is a joint task by Sales and Distribution (SD) and Financial Accounting (FI) teams, although the configuration setting in SAP falls in the SD area.
SD processes set up and initialize revenue recognition. Therefore you assign the revenue recognition method to an item category in SD customizing. Revenue recognition then affects FI by account postings. This is a deviation from the way standard SAP was initially developed for billing and transferring revenue to FI, which makes implementing revenue recognition trickier. As a result, although the capability has been around for some time, many companies do not take advantage of it. The configuration is poorly understood because has several peculiarities. The process I describe shows you how to navigate through this configuration.
I’ll take you through the four steps of SD and FI customizing to set up revenue recognition. To separate the billing process from the revenue recognition process, you create two additional balance sheet accounts in the FI module for the grouping and monitoring of revenues. To explain the process, I’ll use the example of a service and maintenance contract that is valid for 12 months. For more information about the concept of revenue recognition, see the sidebar “Understanding Revenue Recognition.”
Before you can configure revenue recognition, you must contact SAP to activate it. Refer to SAP Note 779366 (“Revenue Recognition in the SD Module”) for more details. You must activate this functionality on the client system. Only then can you complete the setup tasks. If you do not contact SAP first, you may run into implementation issues and data discrepancies may arise.
Customizing Steps in SD and FI
You can use this revenue recognition functionality for typical business processes such as service or rental contracts valid for a long time with a periodic billing plan using a time-based revenue recognition method. You also can use this functionality for sales orders that are delivered in a different time period than when you create and release the invoice. Service contracts with a related call-off order using a service-based revenue recognition method are another area in which you could use the revenue recognition functionality.
To explain the SD and FI customizing to activate revenue recognition, let me give you an example of a time-based revenue recognition method for a rental contract valid for 12 months with a periodic billing plan. In this case, you must maintain the following customizing settings:
- Step 1. Customize the SD item category WVN (maintenance contract item)
- Step 2. Assign the revenue recognition type to item category WVN
- Step 3. Set up FI accounts
- Step 4. Set up deferred revenue (D/R) and unbilled receivables (U/R) account determination
Step 1. Customize the SD item category WVN. For revenue recognition, no additional customizing is required on the sales document header level for the sales order document type or contract. For the example of a time-based revenue recognition method, I used the service and maintenance contract as a sales document. This contract is an agreement between the service provider and the customer to service and maintain equipment for 12 months.
The SAP standard sales document type for this example is WV (service and maintenance contract). The item category for this sales document type in standard SAP is WVN. To activate the revenue recognition function, maintain the WVN item category by following IMG menu path Sales and Distribution > Sales > Sales Documents > Sales Document Item > Define Item Categories (Figure 1).

Figure 1
Maintain item category WVN
For this example, enter I in the Billing Relevance field to indicate that the billing is with reference to the contract and according to the billing plan. Enter 02 (periodic billing) in the Billing plan type field. You can also create your own billing plan type in customizing. If you need to set the billing start date, end date, and horizon differently from the standard billing plan type, then you can create a new billing plan type with reference to standard billing plan type.
Step 2. Assign the revenue recognition type to item category WVN. You cannot assign the revenue recognition type directly in the item category maintenance transaction. In the item category maintenance screen, the revenue recognition fields are deactivated. To assign the revenue recognition type to the item category, follow IMG menu path Sales and Distribution > Basic Functions > Account Assignment/Costing > Revenue Recognition > Set Revenue Recognition for Item Categories or use transaction code OVEP (Figure 2).

Figure 2
Maintain revenue recognition for item category WVN
For this example, enter A (time-related revenue recognition) in the Rev. recognition field. Also enter A (proposal based on contract start date) in the Acc. period start field. With this setting, revenue recognition proposes the start date of the sales contract for the item as the accrual start date.
Step 3. Set up FI accounts. You need the following accounts for the revenue recognition functionality:
- Revenue account for booking recognized revenues
- Receivables account (customer account)
- D/R account
- U/R account
The revenue account and receivables account (customer account) can be the same as the accounts you use for the standard billing process. These accounts are profit and loss (P&L) statement accounts, which allow posting without tax codes. Create the D/R and U/R accounts by following menu path Financial Accounting > General Ledger Accounting > G/L Accounts > Master Records > G/L Account Creation and Processing > Edit G/L Account (Individual Processing) > Edit G/L Account Centrally or use transaction code FS00. For my example, I created the G/L account 99000 for the D/R account and G/L account 145030 for the U/R account. Configure the following settings in the Change G/L Account Centrally screen (Figure 3).

Figure 3
Configure the G/L account 99000 for the D/R account
In the Type/description tab, select the Balance sheet account option in the Control in chart of accounts section. As a part of the year-end closing process, the system carries forward balances from the D/R and U/R accounts to the next fiscal year.
In the Control data tab (Figure 4), uncheck the Only balances in local crcy option in the Account control in company code section. This ensures that the revenue recognition process is active for postings in currencies that are different from the local currency. The system updates balances in all currencies — not just the local currency.

Figure 4
Configure the Control data tab for D/R account 99000
In the Tax category field, enter a plus sign + (only output tax allowed) or an asterisk * (all tax types allowed). Generally, you use an asterisk. You use the plus sign when only receivables are relevant.
If you have foreign customers, check the check box for Posting without tax allowed so you can post both taxable and non-taxable items to an account. Usually you set a separate tax code for the non-taxable transactions. When you enter taxes using jurisdiction codes, you cannot use this separate tax code because you cannot specify jurisdiction codes for foreign customers. In this case, you post items without tax codes in the corresponding expense and revenue accounts.
Next, in the Account management in company code section, select the Open item management check box. This ensures that the system marks the items you post to these accounts as open or cleared. In this case, however, you cannot use document summarization in the SD invoices. Document summarization means that when you have multiple line items in the billing document, this appears as the single item in the accounting document. However, when the account uses open item management, this does not happen and each line item in the billing document appears as a separate line item in the accounting document. This is applicable for all scenarios and is not specific for the service contract example I’m using.
Finally, select the Line item display check box. With this setting, the system stores an entry per line item in an index table that contains the link between line item and account.
In the Create/bank/interest tab, select the Post automatically only check box in the Control of document creation in company code section (Figure 5). This setting ensures that manual posting is not allowed to these accounts because manual posting does not change the revenue recognition tables. The system can post these accounts only by using account determination tables.

Figure 5
Update the Control of document creation in company code section for D/R account 99000
Step 4. Set up D/R and U/R account determination. You perform account determination for D/R and U/R accounts by using a condition technique in the revenue account determination part of the SD customizing. Follow IMG menu path Sales and Distribution > Basic Functions > Account Assignment/Costing > Revenue Recognition > Maintain Account Determination or use transaction code VKOA (Figure 6). Click on Assign G/L accounts for revenues and deferred revenues to maintain D/R account determination (Figure 7).

Figure 6
Assign G/L accounts

Figure 7
Use Table 001 (customer group, material group, and account key table)
For my example, I use table 001 (customer group, material group and account key) for account determination. I’m using this table for my example because it is the one you use most often for account determination. It considers the three most important aspects on which revenue accounts are generally determined — customer group, material group, and account key, which separates various types of revenues. In practice, you could use other standard SAP tables, depending on the revenue account determination needs of the organization. Alternatively, you can define a new table for specific requirements.
Double-click on table 001 and enter revenue account 800000 in the first G/L Account No. field (Figure 8). Next, enter D/R account 99000 in the second G/L Account No. field. The accounts are maintained for the relevant account key. For the revenue recognition process, account key ERL represents all sales revenue accounts. By default, this account key appears in the first row for account determination. When the system creates the invoice, it posts to the deferred revenue account. The system posts to the actual revenue accounts only when you perform revenue recognition.

Figure 8
Enter revenue account 800000 and D/R account 99000
Return to the screen in Figure 6 by clicking on the back arrow icon and click on Assign account for unbilled receivables. Here you maintain the U/R account determination in combination with the reconciliation account for the customer and the associated chart of accounts. Use transaction OVUR to maintain the U/R account only, as shown in Figure 9.

Figure 9
Maintain account determination for the U/R account
You derive the reconciliation account from the payer’s customer master record. The chart of accounts relates to the company code attached to the sales organization in which you booked the revenue. In my example, I entered 140000 for the reconciliation account in the Recon.acct column and INT for the chart of accounts in the ChAc column (Figure 9). Finally, enter the U/R account 145030 in the NonBldRec. (non-billed receivables) field.
Note
If the reconciliation account determination is active for the billing type you assign to the sales document, then the system performs a reconciliation account determination within the revenue recognition process.
Now the customizing required for activating the revenue recognition process is complete. In standard revenue recognition, as soon as you release the invoice to accounting, the revenue recognition category is blank when you post billing revenues in FI. The system does not update revenue recognition tables or post accounts postings to the D/R and U/R accounts.
Understanding Revenue Recognition
The fundamental revenue recognition concept is that companies should not recognize revenues until they realize and earn them. A basic framework for analyzing revenue recognition involves focusing on four bedrock principles established in US-Generally Accepted Accounting Principles (GAAP). These principles state that revenue generally is realized and earned when it meets all of the following criteria:
- Persuasive evidence of an arrangement exists
- Delivery has occurred or the company has rendered services
- The seller’s price to the buyer is fixed or determinable
- You can reasonably expect to collect the revenue
To put this more simply, a company can recognize revenue from a transaction when the buyer of the company’s good or service agrees to a purchase and the company and buyer determine the amount that the buyer is going to pay. In SAP terms, this means that the revenues must be realized in the posting period in which the goods were actually delivered or the service was carried out — not in the posting period in which the billing documents were set up. Revenue recognition helps fulfill these requirements.
Ajay Pande
Ajay Pande is a senior consultant with the Enterprise Solutions Group of Infosys Technologies Ltd. He has experience in SAP implementation, configuration, and project management at Fortune 500 companies. He has also worked on integrating finance and logistics modules. Ajay holds a bachelor’s degree in mechanical engineering and a master’s degree in industrial engineering.
You may contact the author at ajay_pande@infosys.com.
If you have comments about this article or publication, or would like to submit an article idea, please contact the editor.