REBATESRebates functionality in SAP uses the concept of condition technique as is used in Pricing (butwith rebate specific features), which is explained below:Let’s see how rebates work in SAP first. • Glen wants to give customer a 3% discount on everything he or she buys (condition type ZB03). • In addition, Glen provides another 1% discount if the customer reaches a certain amount of gross sales for the year which (turnover discount), for a specific group of products (ZB01).After all these rebates are set up, the rebate conditions will apply on applicable invoices asaccruals instead of off-invoice discounts. The rebate agreement tracks the applied amounts,which can be reviewed at anytime in the rebate agreement. Once pay out of any rebate amountto the customer is decided, there will be a rebate settlement represented by a credit memorequest. This reverses accrued amounts and pays the actual amount to the customer either inform of a check or a credit memo.Rebate process in SAP is separated into three components: 1) Configuring Rebates 2) Setting up the Rebate Agreements 3) Managing Rebate Agreements and Payments1) Configuring RebatesPrerequisites1. The Payer partner needs to have the “Rebate” field checked in the Customer master on the Sales Area>Billing Document tab.2. The billing type must be marked as relevant for rebates (IMG Sales and Distribution>Billing>Rebate processing>Activate Rebate Processing>Select billing documents for rebate processing).3. The sales organization must be marked as relevant for rebates (IMG Sales and Distribution>Billing>Rebate processing>Activate Rebate Processing>Activate rebate processing for sales organizations).The system will issue respective messages when you are trying to process any rebate-relatedtransactions with any of these settings missing.
Condition Technique for RebatesTo create rebate-related access sequencesIMG path Sales and DistributionBillingRebate processingCondition technique for rebateprocessing>Maintain access sequences.Access Sequence for Rebates
Condition Tables in a Rebate Access Sequence
Rebate-related condition types are identified by condition class “C” (Expense Reimbursement).When you create a new rebate condition type (IMG path Sales and Distribution>Billing>Rebateprocessing>Condition technique for rebate processing>Define condition types) and you changethe class to “CIf the “Rebate proc.” field is blank, accruals will be posted on each applicable invoice. Entering an“A” will prevent the automatic generation of accruals on invoices. The latter would make sense ifyou don’t base your rebate payment on actual sales, but on the specific performance of thecustomer (such as a display in a store or an advertisement in the paper). These rebates would bepaid out as a lump sum and would require the creation of a manual accrual. For example, youwant to give the customer a $5000 rebate if he displays your product at the entrance of his store.You then would create a one-time manual accrual of $5000. Once you have proof of complianceby the customer, you can create a lump sum payment in that amount, which would reverse theaccrual and pay the amount to the customer.With the “Provision con.” Field, you determine if you want to reverse your accruals at time ofpartial payment (we will cover payments later in that paper). Leaving this field blank will reversethe accrual; a value of “A” will not reverse it.Rebate Condition Type Definition
Now that we defined our rebate conditions, we can add them to our regular pricing procedure(IMG path Sales and Distribution>Billing-Rebate processing>Condition technique for rebateprocessing>Maintain Pricing Procedures. Alternate condition type “AltCTy” and Alternatecondition base value “AltCBV” will not let you do any manipulations on how the rebate iscalculated. Also, you will not be able to do any manual changes to rebate conditions. Therequirement “24” in column “Reqt” prevents the rebate condition from displaying on any documenttype but the invoice. Simply take this requirement off if you want to have visibility of rebates atorder entry time as well.A very important setting for the rebate conditions in the pricing procedure is the account keys. AtInvoice creation, accruals are being created that post to accounting, to give you visibility on howmuch you owe your customers. The posting of this accrual is done by accounts assigned to theaccount key in column ‘Accrls’ (Accruals); usually a sales deduction and an accrual account. Thesettlement document (in form of a credit memo) uses the accounts assigned to the account key incolumn ‘ActKy’ (Account key), which reverse the accrued amounts and credits the customer.It is also imperative that any sub-total line a rebate condition refers to needs to be stored in one ofthe seven available sub-total fields (KZWI1-KZWI6 and BONBA in column “SubTo”). If you areusing multiple pricing procedures, you want to keep the sub-total designations common (i.e., 1 forgross price, 2 for net price).Rebate Conditions in a Pricing ProcedureConfiguring the Rebate AgreementTo maintain rebate agreement types, use IMG path Sales and Distribution>Billing>Rebateprocessing>Rebate agreements>Define Agreement types. Select “New Entries” to create a newagreement type.Default valuesThe first section (Default values) serves to define the defaults that apply for every rebateagreement of that type. You can define the default start and end date of the agreement. Thedefault start date is important in regards to whether or not you want to allow retroactive rebates.For example, if you set the start date of a rebate agreement to today’s date, all invoices from that
moment on are eligible for the rebate and will apply on the invoice itself. However, if your defaultis the beginning of the current year, the system will calculate rebates for all invoices in the past,from that date on, even if they did not apply on the invoice. These rebates are called retroactive.The other default in this section allows you to set a payment method, which is freely definable tosuit your individual situation. Every rebate settlement will create a credit memo request in SAP;however, if you set your default to “C” for check, it will carry this flag forward to FI, to later let youcut a check. Of course, all of these defaults can be overwritten during creation of the actualrebate agreement.Control dataThe “Condition type group” is linked to the rebate agreement type in a different configurationtransaction, which we will get into a little bit later. This condition type group defines which rebatecondition types are allowed for the rebate agreement type.The “Verification levels” field is also a default that defines the level of detail you see when youreview the applied invoices within a rebate agreement. You can change this default whilereviewing the verification level in the rebate agreement.The “Different val. period” option lets you define whether or not the rebate condition records youcreate out of the rebate agreement can have validity dates outside of the ones of the agreement. Isuggest you leave this field unchecked.If you want to allow manual accruals (we will get into what these are for), you need to indicate thisand define the respective order type. “B4” is the standard SAP order type for manual rebateaccruals.You are able to create the same rebate agreement automatically in regular intervals with thesame data (but different validity dates). To turn on this feature, utilize the “Arrangement calendar”field to do that. You can add a standard SAP calendar, or your own defined one, to schedule theautomatic creation of rebate agreements. In a separate step, schedule job RV15C005, which canalso be accessed via transaction “VB(D” (yes, that’s the left parenthesis in the transaction code),to automatically extend your agreements.Manual paymentThe “Manual payment” section of the rebate agreement defines how much can be paid out duringa partial settlement. You would use partial settlements if, for example, the rebate agreement isdefined for a full year, but the payouts are supposed to happen on a monthly, quarterly, or anycustom defined schedule.You can choose whether you want to allow partial settlements only in the amount of what youaccrued so far. This is a good idea if you don’t want to pay out more than what the customer isentitled to. However, you can also allow any payment amount, if you choose so. As with manualaccruals, you need to define the partial settlement order type, which is “B3” in the standard SAPsystem. If you don’t want to wait to reverse your accruals until the final settlement, you can do sofor the partial settlement by checking the “Reverse accruals” box.Just as with agreements, you can also schedule regular payments by entering the appropriatecalendar in the “Settlement periods” field. Use program RV15C001 (accessible throughtransaction “VB(7”) to schedule your payment runs. This will create automatic paymentsaccording to the defined schedule.The reversal of the accruals is independent from the payment amount of the final settlement. Forexample, if you accrued $10,000 over a given period, but the customer did not reach their salesgoal, you might want to pay only half that amount or nothing at all. No matter what the paymentamount is going to be, the total remaining accrued amount for the agreement is reversed.SettlementThe “Settlement” section defines the final settlement order type (“B1” in standard SAP) and theminimum status that needs to be set in the agreement before it can finally be settled. This willbecome more clear when we cover the actual settlement of a rebate agreement later in thispaper.
The standard correction order type “B2” is needed if the statistical and actual accrual amounts aregetting out of sync. This is mostly the case for retroactive rebates.Definition of a Rebate AgreementCondition Type GroupsI mentioned the assigned condition type group in the definition of the rebate agreement. With IMGmenu path Sales and Distribution>Billing>Rebate processing>Rebate agreements>Conditiontype groups>Define condition type groups, you can freely define your rebate condition type group(see Figure 6). Make sure that you leave the “Cat.” (Category) field blank. This defines theCondition Type Group as relevant for rebates. Sales deals share this configuration transactionand would be identified with a category of “A”.
Definition of Condition Type GroupsAssigning Condition Types to Condition Type GroupsIn this configuration step (IMG Sales and Distribution>Billing>Rebate processing>Rebateagreements>Condition type groups>Assign Condition Types/Tables To Condition Type Groups),you define which condition tables, of which rebate condition types, you allow for a specificCondition Type Group, and in which order they appear in the rebate agreement (see Figure 7).Since the standard SAP rebate functionality does not allow exclusions in the access sequence,the order of condition tables can be freely defined here. You can assign multiple condition typesthat can have different access sequences.
Assigning Rebate Conditions to Condition Type GroupsAssignment of Condition Type Groups to Rebate Agreement TypesFinally, we are able to link the Condition Type Group to the Rebate Agreement Type through theIMG menu path Sales and Distributions>Billing>Rebate Processing>RebateAgreements>Condition Type Groups>Assign Condition Type Groups to Rebate Agreement TypesAssignment of Condition Type Groups to Rebate Agreement Types
2) Setting up Rebate Agreements The rebate agreement is the central point for processing rebates. Here are the main tasks that can be done out of this transaction: • Define the payment method and validity of the rebate agreement. • Define the condition records with rates and scales for which rebates should apply. NOTE: You cannot create rebate condition records with the regular pricing transaction VK11 or VK31. (This is due to the condition class of “C” as indicated in the section above about condition types.) • Review all applied invoices to a specific rebate agreement. • See which payments were already made and how much you accrued. Generate partial and final settlements, as well as manual accruals. NOTE: If you attempt to create any rebate credit memo manually with VA01, you will get an error. The reason for this is the same as the one for the condition types. In order to track all payments within the rebate agreement, they have to originate from that rebate agreement.To create a rebate agreement execute transaction VBO1
On the next screen (Figure 10), enter the description of the rebate, the rebate recipient, thecurrency in which the rebate payments are going to be made, the payment method, and thevalidity period of the agreement. Here are some comments to the individual fields:The rebate recipient has to be a payer partner. You also need to make sure that the payer partnertype that you are using (“RG” in standard SAP) is linked to the account group you are using forthe sold-to (“0001” in standard SAP). As we can see later, the rebate recipient becomes the sold-to in the rebate settlement credit memos.The payment method defaults from the rebate agreement type configuration setting and can beoverwritten here. The same applies to the validity period. Originally the valid from date isdefaulted to today’s date (as set in the agreement type). Since our sales department was (asusual) late to give us the agreement information, we need to back-date the start date to the first ofthe year. We assume that the rebate agreement is valid for the whole calendar year, but if youwant to do it by fiscal year, just adjust the dates to your liking. Once all this data is entered, clickon the ‘Conditions’ button to create rebate condition records.Rebate Agreement Overview Screen
You can see that the validity period for the condition record defaults from the validity period of therebate agreement. As we defined in the agreement type, an attempt to change the validity period(to one outside the agreement validity period) would result in an error. However, you can changethe validity period to one within the range of the agreement period. For example, if you set up theagreement for the whole year and you pay out on a monthly basis with different amounts, itmakes sense to create multiple condition records with monthly validity dates.If you enter a rate in Figure 12 and hit Enter, the same amount applies in the “Accruals” column. Itis important to remember, that the rate represents what you are going to pay to the customer, andthe accrual is what you accrue over time on invoices. This becomes very clear when you areusing scales. Although you are able to maintain different rates based on different scale levels ofsales achievements, you can only maintain one accrual rate.The accrual rate applies on each invoice, at which time you don’t know if a customer will reachthe next scale level over the time of the agreement. You might want to maintain an averageaccrual rate (for example, if you have scale rates of 1, 2, and 3%, your accrual rate might be themedian of 2%). However, based on your accounting guidelines, you also might either over- orunder-accrue.You also have the choice not to accrue at all (for example, for a lump sum payment) and can takeout the accrual rate entry. However, if you are trying to create partial settlements and configuredthe agreement to not allow higher payments than what you accrued, you will have to createmanual accruals in order to do so.
Rebate Pricing Record RatesSelect the condition record and click on the “Details” button.At the bottom of the “Control Data” section of the details screen (see Figure 13), you can see thatthe condition record was created retroactively. This means that not only will invoice line itemsapply from this day forward, but also the ones that were created from the valid from-date of thecondition record, until today’s date.Since a rebate settlement in SAP is reflected as a credit memo request, a material number isneeded to generate the credit. The material for this credit memo is stored in field “Matl. f. settl.”(Material for settlement). Since the key combination we choose is by customer, we need to definea material of our choosing. For most of my clients, this always causes an issue with reporting,since the materials that are actually being accrued on cannot be easily tied to the material of thesettlement. You will always have to choose a material if the material number is not part of yourcondition table. In the latter case, the material number defaults as the settlement material.If you like to create more condition records, use the green back-arrow to go to the “ValidCondition Types and Key Combinations” screen (see Figure 11). However, if you are done withall your rebate pricing maintenance, you can now save the rebate agreement. At this point, Iwould like to give some insight on the number of condition records you create per rebateagreement. Although we allowed three different condition types to be maintained withinagreement type “ZSRB”, it does not mean that we have to maintain it in one and the sameagreement. It makes sense to distinguish multiple rebate agreements based on the type of rebateyou want to give. For our example we will create three separate rebate agreements: One for allthe items a customer purchases throughout the duration of the rebate, a second can be createdfor the performance based (scale). and a third agreement for the material promotion.
This way, if you want to see the status of one of your rebate programs, you can look at it withouthaving to dissect other rebate conditions. It also improves performance since the system does nothave to read every invoice line item every time.Another common mistake I often see is that instead of creating new rebate agreements (forexample, yearly renewals), clients just extend the validity end date of the agreement. Theproblem with that scenario is that when you want to look online to see which invoice line itemsapplied to the rebate, the system has to look back at two or more years worth of data. Get yourmocha latte while the program is running. When you come back, you will realize that you timedout of the transaction. Instead of increasing the validity period, it takes the same amount of timeto create a new rebate agreement with reference by clicking the button (see Figure 9). You canalso use the automated rebate agreement renewal transaction “VB(D”.Rebate Condition Record DetailFigure 14 shows you our condition record for condition type BO01 for which we wanted to set asales goal. The customer needs to buy $100,000 worth of Health Foods (represented by Volumerebate group “01” of the material master) in order to get an additional 1% rebate. We will alwaysaccrue 1% on all applicable invoices since we don’t know at that time if the customer will reachthat goal. Once we create the final settlement, all applicable sales will be accumulated andcompared with the scale value. If the threshold is not met, nothing will be paid out, but all accruedvalues will be reversed.NOTE: The scale levels are always only applicable to the condition record they were created for.You can’t comply with a request like: “If you buy $100,000 worth of item A, B and C …,” if A, Band C are not in some kind of grouping.
Scale View of Rebate Condition RecordAfter we have created our rebate agreement, we can check an invoice that has rebate conditions applied.The service rendered date (not the pricing date!) of the invoice line item is used to determine the validity ofa rebate condition record. All rebate conditions are line item conditions, so go to the “Conditions” tab ofone of your invoice line items.
You see in Figure 15 that two rebate conditions applied. BO02 for our material promotion with a $1.00/EAallowance and the 3% of condition type BO03 for everything the customer buys. It is possible that the samerebate condition type applies several times, unlike regular pricing conditions. You could for example have aHeadquarter rebate that pays 3% of all sales of a payer (BO03). In addition you have a rebate agreementthat pays an additional 1% for a specific sold-to customer (for example, a new store promotion). This isalso set up as a BO03 condition record. You would see both BO03 records, one with 3% and one with 1%.Applied Rebate Conditions on an InvoiceNext, select one of the rebate condition types and click on the “Details” button.You can see that, although not specified explicitly in the rebate condition type configuration, the rebatecondition is automatically an accrual. The rebate agreement number to which the condition record belongsto is also shown in the rebates section of this screen (see Figure 16). It is also indicated if the condition isretroactive or not.
3) Managing Rebate Agreements and PaymentsVerification levelsAfter several invoices are created, we can access the rebate agreement either in change(Transaction VBO2) or display mode (VBO3). To see which invoice line items applied, select the“Verification level” button shown in Figure 10. Items that show accruals of 0 are invoice line itemsthat applied retroactively. Since the rebate agreement did not exist when they were created, noaccrual could be made. You can drill down to an individual invoice by clicking the invoice numberonce. If you would like to change the level of detail shown, select the button on the “VerificationLevel” screen shown in Figure 17. Remember that we set the verification level in customizing theagreement type to “Open”, meaning every line item shows. It might make sense (if you havethousands of invoice line items and you would like to just see totals by customer) to selectverification level “D”. One annoying thing to note is that the month displayed is always thecalendar month, even if you set up your condition records by your fiscal month. This can lead tomisinterpretation of the data. This issue was addressed with SAP, but the answer was that thesystem works as designed and that there are no plans for an enhancement.As mentioned above, it can happen that the system times out if you are trying to review theverification level online (due to the large number of applicable invoice line items). In this case, usetransaction “VB(8”, which lets you run a verification report in background
Creating Partial SettlementsAs mentioned before, you can automate periodic creation of rebate payments. You need todecide, based on the number of rebate agreements you have, and their complexity, if this optionmakes sense. For example, it makes sense to schedule regular payments for rebates where thecustomer gets a certain percentage for everything he buys. However, rebates that check scalesor need manual calculations or adjustments should be handled manually. In this paper, I willexplain how to create manual settlements.In order to create any kind of settlement, you need to be in change mode (Transaction VBO2) ofthe rebate agreement. Clicking the ‘Pay’ “Create Manual Rebate Payment” button will open thepartial settlement screen as seen in Figure 18. All condition records of this agreement aredisplayed (in our example just one). In the “Max amount” field you see the accrued amount as oftoday, which, by our configuration setting, is the maximum amount we are able to pay in a partialsettlement. If we would enter a higher amount, we would get an error. Enter the amount you wantto pay in the “Amt. to be paid” field. Note that the amount you enter always defaults as a negativeamount. Save your changes.
Partial Settlement Amount ScreenAn information message is displayed that a partial rebate settlement was created.NOTE: You cannot create a final settlement until all open settlement requests are posted toaccounting. The reason for that is the actual payments are updated in the rebate agreement onlyat accounting time, to determine what is left to pay.You can process the settlement request with transaction VA02. You need to release the creditmemo billing block before the request can be invoiced. Looking at the line item pricing screen(see Figure 19), you see that only the rebate condition type appears, although the same pricingprocedure as the one on the invoice is used. There are two entries. One is to actually credit thecustomer with the specified amount, the other one to reverse the accrual. Since we configuredthe partial settlement in the agreement type to always reverse the accrual (See Figure 5), theamounts are always the same in a partial settlement. Save the credit memo request and invoiceit.If you realize you made a mistake before you invoice the credit memo request, you can delete thecredit memo request with transaction VA02, which will increase the available accrual amount inthe rebate agreement again. In case you already invoiced the settlement, you will need to cancelthe credit memo. Since you then cannot delete the credit memo request, you have to reject all theline items.
Pricing Screen of Partial Settlement Credit MemoGoing back to the rebate agreement itself, you can see which settlements were already createdfor this agreement. Select Rebate Payments>Rebate Documents and select the type ofdocument you would like to see. Partial and full settlements can be accessed separately. Sincewe only created a partial settlement so far, this is the only option that is available. Click the checkmark and you will see all (in our case just one) partial settlements that were created for thisrebate agreement. Figure 20 shows the settlement amount (what was credited to the customer)and the reversed accrual amount. If you would like to see the actual credit memo, click on theinvoice number (to select it) and the “Display” button. If you have a credit memo request that isnot invoiced yet, you will see the credit memo request number here. This helps if you try todetermine if you have any “open” settlement documents for this rebate agreement.
Rebate Documents of a Rebate AgreementAnother view of payment data can be accessed from within the rebate condition record. Go intothe “BO03” condition record for your customer specific rebate and select “Goto-Payment data”.This view (see Figure 21) shows you the total accrued dollars, how many accrual dollars werereversed, and how much money was paid to the customer already. In the lower section of thescreen, it is indicated how much accrued money is left to pay out. From here you can also initiatea partial settlement by entering a payment amount in field “Amount to be paid”, just like we’vedone in Figure 18. The same check (process) for maximum accrued value occurs here.Payment Data for a Rebate Condition Record
Manual AccrualsAs I mentioned before, sometimes manual accruals need to be made in order to increase the accruedamounts for a given condition record. The most likely scenario is when you create a rebate agreement in themiddle of the year, but set it retroactively valid for the whole year. The system will take previous invoicesinto consideration, but no accruals for these invoices are accounted for. If we want to make partialsettlements, we would not have accrued as much as we would like to pay out. So we need to increase theaccrual amount by creating a manual accrual. In order to know how much we need to accrue in addition,click the “Sales volume” button on the Agreement Overview screen. The resulting screen (see Figure 22)shows the actual eligible rebate amount (in our example $281.25) and the accrued amount ($102.48). Weneed to create an accrual for the difference of $178.77.This can be accomplished by clicking the button on the Agreement Overview screen. In the resulting screen(see Figure 23), we can enter the accrual amount. A negative amount will increase the total accrual amount;a positive amount will decrease it. Save the document and you will receive the message that a manualaccrual has been created. Invoice the credit memo request to post it to FI. Go back now to the rebateagreement and check the sales volume. You will see that the accrual amount matches the eligible payoutamount.
Manual Accrual Payment ScreenFinal SettlementsAt the end of the rebate agreement, we finally can execute the final settlement to close theagreement. As defined in the agreement type, we need to manually set the “Agreement status”field on the Overview screen to “B” (Agreement release for settlement). This is a manual checkthat prevents us from accidentally closing the agreement. Then select the button from theOverview screen. We are using our first rebate agreement, for which we did not create a manualaccrual. Although we only have $500 accrued, the final settlement shows what the customer iseligible for, including retroactive amounts (see Figure 26). At this point in time, you could also payout more than this amount. Nothing will stop you from doing that, but I wonder what Sarbanes-Oxley would say to that. Make your adjustments and save.You could also have used the “Create final settlement” button from the rebate agreementoverview screen, which would have created a credit memo request right away, without giving youthe opportunity to manipulate the final payment amount.After the credit memo request is created, the agreement status is set to “C”, which prevents youfrom creating any further settlements out of this rebate agreement.
Final Settlement Payment ScreenThe final settlement credit memo request uses the last day of the agreement validity period as thebilling date. You can create it manually or via the same batch job (RV15C001) with which we cancreate periodic partial settlements.Invoice the credit memo request. Looking at the pricing screen of the credit memo (see Figure27), you see that the payment amount is higher than the accrual amount, since we can’t reversemore than what we accrued for. In a case in which we wouldn’t pay out anything (for example ifsales goals were not met), only the accrual amount would be reversed in a final settlement. Oncethe credit memo is posted in FI, the agreement status changes to “D”. This effectively closes therebate agreement.
Pricing Screen of Final Settlement Credit MemoAfter the final settlement is executed, no changes can be made to the rebate agreement anymore. It can bereviewed in display mode only.