Learn how to make the necessary configuration changes and start using the Sales and Distribution rebate functionality in your ERP environment. This step-by-step guide explains how standard functionality supports automating your rebates accrual process to achieve higher accuracy, better visibility, and real-time updates posted to the Financial Accounting module.
Key Concept
A rebate agreement is an arrangement with a particular business partner for granting rebates in a given time period. In the context of the Sales and Distribution module, a rebate agreement is assigned to a specific customer (the rebate recipient) and is based on the volume of relevant sales that have been posted via customer billing documents.
The core customer rebate functionality within SAP ERP Central Component (ECC) 6.0 is built around the
condition technique, which is an SAP proprietary technology that allows the configuration of complex decision-making
scenarios. It is used in many other areas such as pricing, output, and revenue account determination. The condition
technique ensures that proper Financial Accounting (FI) accruals are posted upon the creation of a customer billing
document.
SAP ERP also provides various scale types to accommodate numerous scale scenarios, which are common in
customer rebate agreements because companies often provide higher rebate incentives if larger sales volumes are reached.
For example, you can use a standard value base scale type to accommodate a scale scenario in which a 2% rebate is given to
a customer if his or her total sales for the year equate to less than $10,000, whereas a 3% rebate is given if the sales
for the year go beyond the $10,000 mark. Finally, standard SAP tools are provided to post retroactive accruals if the
rebate agreement was not created on time to start capturing the accruals from the starting validity of the agreement.
I’ll walk you though the necessary IMG configuration steps to enable the creation of rebate agreements
and automatic posting of FI accruals upon the creation of customer invoices. I’ll also take a close look at how SAP
determines the rate at which the FI accrual needs to be posted and compare it to a different logic that SAP uses when
coming up with the settlement value of the agreement. This step-by-step guide helps SD analysts make the required
configuration changes and start using the SD rebate functionality effectively in their ERP environment.
Note
A scale is a mechanism within a pricing condition record that allows maintenance of various price levels for different customer order quantities or values. In the context of customer rebate agreements, scale functionality allows mapping of such scenarios in which a different rebate rate is given to a customer, depending on the quantity or value of goods that he or she purchases.
Configuration Steps
Seven configuration steps must take place before the SD rebate functionality is properly implemented. These
seven steps are:
Step 1. Define the agreement type
Step 2. Configure the condition technique
Step 3. Activate rebate processing
Step 4. Define condition type groups
Step 5. Create the rebate agreement
Step 6. Create the billing documents
Step 7. Settle the agreement
Step 1. Define the Agreement Type
Sales and Distribution>Billing>Rebate Processing>Rebate
Agreements>Define Agreement Types VB/20002Figure 1Y002Material Rebate
Figure 1
Define an agreement type
Next, change the Payment procedure to C (no limits for manual payment) to
allow for greater flexibility when issuing the settlement. Setting the payment procedure to C allows the
user to manually overwrite the settlement value to be greater or less than the accrual value. Leave the default values of
the remaining settings alone. Click on the save icon to save your changes. Figure 1 shows custom agreement type
Y002.
Step 2. Configure the Condition Technique
The SD module uses the standard condition technique to determine the proper accrual rate for the customer
rebate agreement on the billing document. I defined a custom access sequence (Z001) that incorporates the
two standard condition tables 001 (customer/material) and 003 (customer). In my example,
the rebate rate is determined based on sales organization, distribution channel, division, customer, and material. You may
need to create additional custom condition tables if more factors need to be taken into account when determining the
proper rate for the rebate agreement. Use transaction code V/03 if standard condition tables do not meet
your requirements. Otherwise, follow IMG menu path Sales and Distribution>Billing>Rebate
Processing>Condition Technique for Rebate Processing>Maintain Access Sequences (transaction
V/07).
It is important to mention that condition table and access sequence maintenance require cross-client changes
in your golden configuration client. Once these changes are made, they affect all clients within the ERP system. This is
not typical of IMG changes because you must perform most configuration changes separately in each client, either manually
or through a client copy.
Click on the New Entries button to generate the screen shown in Figure 2.
Specify a valid technical name (Z001) and a description (Customer Rebate). Next, make
sure to specify value 1 (Access Sequence relevant for rebate) in the
Ty. (relevant for rebate) field. Figure 2 shows an example of custom access sequence
Z001.

Figure 2
Define the custom access sequence Z001
Select the new access sequence and double-click on the Accesses folder in
the Dialog Structure on the left side of the screen. Click on the New Entries button and
enter two standard condition tables 001 and 003. I used these
tables in my example because they cover two typical rebate scenarios. Rebate values are usually determined by sales to a
specific customer (table 003) or by sales of a material to a particular customer (table
001). Figure 3 provides an example of this assignment.

Figure 3
Assign condition tables to the access sequence
It is typical for the Exclusive indicator to be unchecked on access
sequences for customer rebates. This ensures that the system does not stop checking for possible condition records if it
has found one or more records. Instead, multiple condition types are added to the billing document item if multiple
condition records are maintained within the rebate agreement. Before exiting this configuration transaction, make sure to
select each condition table in the access sequence and double-click on the Fields node of the
Dialog Structure so that the key of each table is generated. Click on the save icon to save your
changes.
To demonstrate the functionality of SD rebate agreements, I use two condition types. Standard condition type
BO01 maintains condition records where the scale type can be manually chosen in the agreement. I created
a custom condition type Z001 that uses the less-known interval scales that can be very useful in customer
rebate scenarios. For example, a customer may receive a 5% rebate for purchases between $0 and $10,000, then an additional
6% rebate for purchases between $10,000 and $20,000, and an additional 7% rebate on purchases beyond $20,000.
Use transaction code V/06 or follow IMG menu path Sales and
Distribution>Billing>Rebate Processing>Condition Technique for Rebate Processing> Define Condition
Types. First, locate condition type BO01, select it, and click on the details icon
. In the Access seq.
field, enter the newly created access sequence (Z001). Click on the back icon and then click
on the copy as icon to generate the screen shown in Figure 4. Enter a valid technical name (Z001, in my example) for the new condition type and a useful description (%
Rebate (Interval) in my example). Change the Scale type to D to enable the
interval scale.

Figure 4
An example of the custom condition type Z001
You can use interval scales only if the condition type is specifically configured to D (Graduated-
to interval sc) in the Scale type field. You cannot manually select this scale type in the
condition record within the agreement. I’ll provide more details on how interval scales work in step 5.
In the final step of configuring the condition technique, you need to assign the two conditions types
BO01 and Z001 to all relevant pricing procedures. Follow IMG menu path Sales and
Distribution>Billing>Rebate Processing>Condition Technique for Rebate Processing>Maintain Pricing
Procedures or use transaction code V/08. Select the pricing procedure relevant to your ERP
implementation (ZPCBP1, in my example) and then click on the Control data folder in the
dialog structure to generate the screen shown in Figure 5.

Figure 5
Maintain the pricing procedure
Enter the rebate condition types in column CTyp in the appropriate pricing procedure
location, depending on your current SD pricing configuration. Although pricing procedures are different for each company,
you typically enter the condition types after all the condition types that are relevant to the calculation of the basis
for the rebate agreement are already specified.
Try to use a unique subtotal field to identify customer rebates in the pricing procedure. Figure 5
demonstrates the use of subtotal (column SuTot) 6, which stores the values of the two
customer rebate condition types in line item field KZWI6 (accessible in billing line item table
VBRP). There are six standard subtotals and you need to select one that was not previously used. This
makes it very easy to refer to the total value of customer rebates in other calculations within the pricing procedure and
makes this total available for reporting and custom ABAP development.
The use of the requirement routine (column Reqt.) 24 ensures that the
rebate condition types only appear at the time of billing and are not relevant for sales document processing. I recommend
using requirement routine 24 for all rebate agreements. Click on the save icon to save your changes.
Step 3. Activate Rebate Processing
This is a simple, yet very crucial step in your configuration process. It enables the use of customer rebates
at the sales organization level and on all relevant billing document types. Start with the activation of rebate processing
at the billing document type level. Use transaction code OVB0 or go through IMG menu path Sales
and Distribution>Billing>Rebate Processing>Activate Rebate Processing>Select billing document for rebate
processing to access this configuration. Ensure that the Relevant for rebate indicator is
selected for each relevant billing type, as shown in Figure 6.

Figure 6
Activate rebates by billing type
Follow IMG menu path Sales and Distribution>Billing>Rebate Processing>Activate Rebate
Processing>Activate rebate processing for sales organization. You can also use transaction code
OVB1 for quicker access. Make sure that the Rebate proc.active indicator is selected for
each relevant sales organization (Figure 7).

Figure 7
Activate rebates by sales organization
Step 4. Define Condition Type Groups
In this step you assign the two condition types and applicable condition tables to the new agreement type
Y002. First, define a new condition type group. To do so, follow IMG menu path Sales and
Distribution>Billing>Rebate Processing> Rebate Agreements>Condition Type Groups>Define Condition Type
Groups. Click on the New Entries button at the top of the screen and create a new condition type
group (column CTyGr) by providing a valid technical name (Y001) and a useful description
(Cust. Rebate Group). Figure 8 illustrates the configuration of condition type group
Y001. It is important to leave the Cat. (category) field blank. Make sure to save your
changes when you are done.

Figure 8
Define a new condition type group
Now define the assignment of condition types and condition tables to your new condition type group
(Y001). This may seem unnecessary at first, as you’ve already maintained a similar assignment when
you defined the access sequence in step 2. However, this particular configuration item is responsible for which condition
records can be maintained within each specific agreement type and in which order these records are displayed in the
agreement.
On the other hand, the access sequence configuration in step 2 is responsible for how the condition records
are searched during pricing determination at the time the billing document is created. Simply assign condition types
BO01 and Z001 and the two applicable condition tables 001 and
003 to the condition type group Y001, as demonstrated in Figure 9. As a
good practice, leave some space between the counter values (column Cntr) to allow potential insertion of
new entries later. Click on the save icon to save your changes.

Figure 9
Assign condition type and condition table to condition type group
Finally, you need to assign the condition type group to the rebate agreement type. Use transaction code
VB(5 or IMG menu path Sales and Distribution>Billing>Rebate Processing>Rebate
Arrangements>Condition Type Groups>Assign condition type groups to rebate agreement types. Refer to
Figure 10 for an example of this simple assignment between agreement type Y002 and
condition type group Y001. Click on the save icon to save your changes.

Figure 10
Assign condition type group to rebate agreement type
Step 5. Create the Rebate Agreement
Now you are ready to create your customer rebate agreement. Use transaction code VBO1 or SAP
Easy Access menu path Logistics>Sales and Distribution>MasterData>Agreements> Rebate
Agreement>Create. Select your new agreement type Y002 and press Enter. In the pop-up screen
that appears, specify the appropriate sales organization, distribution channel, and division. When you are finished, click
on the copy as icon to generate the Create Material Rebate screen shown in Figure 11. In
this screen, specify the rebate recipient (1022806) and the appropriate validity dates (01/01/2007 to 12/31/2007).

Figure 11
Create the agreement overview screen
Click on the Conditions button at the top of the screen. The pop-up screen that appears
depends on the assignment within that condition type group that you performed in step 4. For example, if you follow the
steps in this article exactly, the pop-up screen would look like Figure 12. A list of available condition
types and condition tables to create condition records within a particular agreement type is displayed. Now you’re
ready to maintain the condition records. First, maintain a record for condition type BO01 in table
001 (Customer/Material) with a regular base scale by selecting the first row of the
condition record pop-up and click on the New Condition Record button.

Figure 12
Select the condition type and condition table
The header section of the condition record defaults from previous information so all you need to do is
specify a valid material number (20002549) and press Enter and the screen shown in
Figure 13 appears. Now, in your new condition record, select the check box to the left of the material
number and then click on the scales icon. The Accruals value that you specify dictates the rate of the
accrual on the billing document. It is important to understand that scales functionality and the Amount
field are generally not used to determine the appropriate accrual rate at the time of billing.

Figure 13
Create the condition record for condition type BO01
For any given condition record in a rebate agreement, you must maintain a value for amount and accruals.
If you use scales, you need to maintain multiple values for the Amount field, but only one value for the
Accrual field. The accrual value is used when FI accruals are posted upon creation of the billing
document. The reason the accrual rate needs to be permanent is because you don’t want to be posting and then
reversing those accruals each time a customer reaches a new scale and a new rebate rate is in effect.
Therefore, you need to guess which scale the customer will most likely reach and set your accrual value to
reflect the amount value for that scale. Different amount values specified in scales are only used when you actually
settle the agreement, which occurs after all invoices are posted and you issue the customer credit. The settlement value
that is automatically proposed by the system can either be greater than, less than, or equal to the value of the accruals
posted to date, depending on how well the accrual value was chosen when the agreement was created.
The better your accrual rate estimate, the closer the settlement value is to the accrual amount and the
fewer variances are seen in FI during settlement. Notice that I left the Amount field blank. I will
maintain it next in the scale.
Condition type BO01 is selected in this particular condition record to use all scale types,
except interval scales, which you use to create the second condition record under condition type Z001.
However, in this example, I use a standard value base scale as opposed to an interval scale, as shown in Figure
14.

Figure 14
Maintain the base scale
The base scale information in Figure 14 should be read as follows:
1. If the total value of invoices that include this condition record is between $0 (Scale
value) and $1,000 the customer receives a 1% (Amount) rebate during settlement. This is
reflected in the first row of the Scales tab in Figure 14.
2. If the total value of invoices that include this condition record is between $1,000 (Scale
value) and $3,000, the customer receives a 2% (Amount) rebate during settlement. This is
reflected in the second row of the Scales tab.
3. If the total value of invoices that include this condition record is greater than or equal to $3,000
(Scale value), the customer receives a 3% (Amount) rebate during settlement. This is
reflected in the third row of the Scales tab.
4. The accrual rate on the billing document is 2% (Accruals) throughout the life of the
agreement because you are expecting the customer to post somewhere between $1,000 and $3,000 of invoice value with the
material that you specified
Next, maintain the second condition record with condition type Z001 that uses interval
scales. Remember, the rebate defined in this record will be compounded. This means that when material
200002549 is sold to customer 1022806, that particular sale is subjected to both
condition records — a rebate from condition type BO01 (base scale) and a rebate from condition type
Z001 (interval scale). Double-click on the back icon and then select the Customer key
combination, which is now displayed in condition type Z001. Your screen should look similar to Figure 12,
only with the addition of the Customer key combination. Now, click on the New Condition
Record button.
In the screen that appears, specify the customer number (1022806) and the expected
Accruals rate (5.333, in my example), as shown in Figure 15. Select the
new condition record and click on the scales icon.

Figure 15
Create the condition record for condition type Z001
The interval scale in Figure 16 indicates the following:

Figure 16
Maintain the interval scale
1. The customer receives a 5% rebate on all of the purchases up to $10,000
2. The customer receives an additional 6% rebate on all of the purchases from $10,000 and up to $20,000
3. The customer receives an additional 7% rebate on all of the purchases from $20,000 and up
4. You estimate that this customer will post roughly $15,000 sales for the duration of the agreement and
specify a 5.333% accrual rate. This approximation is based on the fact that the first $10,000 receives a 5% rebate and the
remaining $5,000 receives a 6% rebate.
Click on the save icon to save your changes. A screen appears and prompts
you to specify a settlement material for the second condition record. Enter a valid material number (200002549, in my example). You can either create or use a generic rebate settlement material, which
includes any billable material master data record.
Step 6. Create the Billing Documents
Because customer billing documents are created through transaction codes VF01 and
VF04, your new rebate agreement accrues the appropriate amounts on all invoices that match the customer
and material that you’ve specified in the condition records. Figure 17 illustrates the pricing
detail of an invoice that accrued against the two condition records that you maintained in the agreement.

Figure 17
Rebate accruals upon invoice creation
The total value of the invoice item is $15,000, which will be important during the calculation of the
settlement value via scales. A 2% accrual has been posted for condition type BO01 and a 5.333% accrual
has been posted for condition type Z001, based on the accrual rates that I maintained in the condition
records.
You should give special notice to standard transaction VBOF (update billing documents),
which you can use to make retroactive rebate accrual postings. Consider a scenario in which the rebate agreement is
created late and a number of customer invoices were already posted that should have accrued based on the agreement
condition records. In this case, transaction VBOF can update those billing documents. Remember that all
of the retroactive financial postings via transaction VBOF can only be posted to the periods that are
open in the FI module.
Step 7. Settle the Agreement
When you are ready to issue the credit to the customer for the rebate agreement, simply execute transaction
code VBO2 to view the screen in Figure 18. Specify the number you created in the
agreement (step 5) and press Enter. Although partial settlements are possible within SD rebate agreements, I discuss a
scenario in which the final settlement is issued and the agreement is closed. Set the agreement status field to
B and then use the top menu path Rebate Payments>Final Settlement>Automatic. Click
on the save icon to save your changes.

Figure 18
Create the final settlement
A credit memo request sales document is created. The amount of the credit is automatically calculated based
on the invoice value that has been posted against each condition record and the appropriate scale that has been reached as
a result of those values. This credit memo request can be billed via standard transaction code VF01 to
complete the process.
Anton Karnaukhov
Anton Karnaukhov is a senior IT manager at Pacific Coast Companies, Inc., in Sacramento, California. He earned an MBA degree at Heriot-Watt University and a BS/BA degree with a specialization in computer information systems at Western Carolina University. Anton has more than eight years of SAP implementation and development experience focusing on business intelligence and logistics modules in the manufacturing and resale industries.
You may contact the author at anton.karnaukhov@paccoast.com.
If you have comments about this article or publication, or would like to submit an article idea, please contact the editor.