Settlement Management – Transfer Manager and Split Criteria for Settlement
Table of Contents
1. Overview & Business Case
2. System Used
4.2. Transfer Manager
4.3. Split Criteria for Settlement Document
5. Demo Video
1. Overview & Business Case
I recently encountered a business case in settlement management, and I would like to share it with you.
Our client had a Sales Rebate Scenario, where there is a main customer and there are several sub-customers underneath him, these sub-customers can reach up to 100 customers. The main customer gets a rebate for his business volume and another rebate for each of the sub-customers’ business volume when they buy materials that belong to a certain material group. These discounts vary from one sub-customer to another, the below example can be used for more clarification.
|Payer||Rebate Amount||Business Volume to be considered||Rebate Recipient|
|Main Customer||(500) $ Per 1 Piece (for Material Group A)||Main Customer||Main Customer|
|Sub-Customer1||(350) $ Per 1 Piece (for Material Group B)||Sub-Customer1||Main Customer|
|Sub-Customer2||(150) $ Per 1 Piece (for Material Group B)||Sub-Customer2||Main Customer|
2. System Used
S/4 Hana on Premise Demo Server, Release 2021.
Understanding of how S4Hana Sales Rebate Management works and its required set up, as this blog focuses more on the workaround used to achieve the business requirement.
If you want to know more about the delivered configuration and process description, you can check the below SAP Notes which provide an excellent guide.
2815535 – FAQ: Condition Contract Management by Settlement Management in SAP S/4HANA.
2535889 – CCM – Description of delivered configuration.
2481672 – Condition Contract Management – Useful Documents.
2564353 – Condition Contract Management: Product Overview Documents.
- Create a new condition table
Note that the customer used is Customer Hierarchy (HEINR).
|Path||SPRO > Logistics – General > Settlement Management > Basic Settings > Pricing > Sales (SD) > Define Condition Tables > Create Condition Tables|
- Create a new access sequence
|Path||SPRO > Logistics – General > Settlement Management > Basic Settings > Pricing > Sales (SD) > Define Access Sequences|
- Create a new condition type
Note that (ZRE1) is a copy of standard Condition type (RES1)
|Path||SPRO > Logistics – General > Settlement Management > Basic Settings > Pricing > Sales (SD) > Define Condition Types|
- Assign the condition type to the pricing procedure used for Rebate and Rebate Accrual, and follow the rest of the standard set up to complete the configuration.
4.2 Transfer Manager
We want to copy the data from the source Field (CUSTOMER) in the source structure table (KOMLFP) to the target field (HIENR04) in the structure table (KOMK). This will make sure that the condition record maintained in the condition contract and the customers with which the sales were achieved will be transferred properly to the settlement document and the header pricing.
|Path||SPRO > Logistics – General > Settlement Management > Settlement Documents > Specify Settings for Transfer Manager > Define Transfer Groups.|
- Choose Transfer Event (21-Fill Pricing Header Customer) and create transfer group (0S01-Sales Rebate) and enter the below entries as indicated in the screenshot.
- Assign Transfer Group to settlement document type.
|Path||SPRO > Logistics – General > Settlement Management > Settlement Documents > Specify Settings for Transfer Manager > Define Transfer Groups > Assign Transfer Groups to Settlement Document Type (via Event)|
For more information on transfer manager check this blog created by Serkan Ozel
4.3 Split Criteria for Settlement Document
- I wanted to create a separate settlement item for each customer (Main and Sub-Customer) to track their business volume and the specific discount applied, all of these settlement items will be included in one settlement document (Credit Memo) and for one contract recipient (Main Customer).
|Path||SPRO > Logistics – General > Settlement Management >Condition Contract Management > Condition Contract Settlement > Define and Configure Profiles for Business Volume Determination.|
|Path||SPRO > Logistics – General > Settlement Management >Condition Contract Management > Condition Contract Settlement > Specify Settlement Settings for Condition Contract Types|
5. Demo Video
Watch the following short video for the Condition Contract’s creation and settlement on Fiori for the above-mentioned business scenario.
This is how I tried to meet the customer requirement by utilizing Transfer Manager and Split Criteria for Settlement, I would be happy to read your thoughts and comments, and if there are better ways to fulfill the requirement, please leave it in the comment section below.
thanks for sharing this valuable information
Thank you, Eslam!
I’m glad you find it useful.
This blog is amazing! thanks a lot for sharing
Good job ya Marwa 🙂
Many thanks, Kamal. I appreciate it!
Thank you Marwa for the details. One question what is the SAP Package we need to select while creating the condition table in pricing.
Sorry for the late reply.
I usually create my own using T-Code SE80, or you can ask the ABAP consultant to create one for you.
You can work on ZPackage created by the Abap team, or if you are using a sendbox u can work on the local one
Very Well done, Excellent work
I’m glad you find it useful.
Firstly I could not understand the functionality of Transfer Manager. what it is for and why it is needed ?
Secondly lets assume main customer =1000 and sub customer =1010. if one creates condition contract for main customer 1000 as rebate recipient and in business volume selection criteria one uses sub customer=1010 and hence Business volume will be determined for sub customer1010
For table 996, Hiener4 =1010 and so if you maintain condition record for table 996 for 1010 sub customer, The condition record will be determined for sub customer =1010 in sales order for condition type ZRE1. i.e rebate will be determined for sub customer 1010 based on business volume for sub customer 1010 and rebate recipient will be main customer 1000 since condition contract created for 1000 ?
so why there is a need for transfer manager ? What iam missing and if iam wrong, can you tell what transfer manager is doing ?
I have done a fair amount of testing to achieve the requirements, I initially tried your suggestion, but that meant I would have created a condition contract for the main customer with each one of his sub customers, this would result in hundreds of contracts upload quarterly and sometimes monthly, for me that wasn’t a feasible solution.
one of the main things I was trying to achieve is to make the number of contracts as low as possible, for easier tracking and reporting, that’s why I wanted to create one contract for the main customer with all his sub customers and the respective rebate amounts on behalf of every sub customer’s sales volume.
without the transfer manager functionality, the communication header for pricing (KOMK) table wouldn't have the information of the sub customers, which means that the condition record maintained in the contract doesn’t get picked up as the sub customer is missing at KOMK.
The information of the sub customers is available in the settlement header table(KOMLFP), and for that reason I transferred it to the pricing table, which will ensure that the condition record is picked up correctly, and to be honest I thought I wouldn't need transfer manger either, but it ended up working out 🙂
Through testing I found the appropriate solution for my business case, and it doesn’t mean it’s the best or the only solution, so please let me know if you have other ideas.
P.S. To learn more about the transfer manager functionality, check Serkan's blog post, I left the link above.
I wanted to check if you know the steps required to use custom field as the split criteria in the Condition Contract.
This field is neither exists in Business volume selection criteria nor in the Accrual reversal.
Do you know the tables/views to be amended in this case?
In this blog Condition Contract Management – Sales Commission for External Sales Agent
I have added a standard field in the Material Master to the Field Combinations for Business Volume, and with the help of ABAP, we created a CDS View copy of the standard Business Volume Table to add an inner join with the field in the Material Master.
I know this does not answer your question, but you can use it as a starting point and ask the ABAP's help.
Best of luck and let us know if you reached a solution.