Human Capital Management Blogs by SAP
Get insider info on HCM solutions for core HR and payroll, time and attendance, talent management, employee experience management, and more in this SAP blog.
Showing results for 
Search instead for 
Did you mean: 
Product and Topic Expert
Product and Topic Expert


This blog post will present some lesser known compensation eligibility rules configuration options that can prevent many manual workarounds for customers.

All business rules below have been implemented successfully in environments that are now live. Please comment below if you found better ways to meet a specific requirements.

In the appendix at the bottom of this post we added information about business rules limitations when applied to Compensation eligibility.


Please note :


    • As much as these are tips and tricks to meet complex requirements we would suggest keeping rules as simple as possible. We would advise against building a rule like this for example which is both hard to understand (hence hard to edit by a system administrator if needed) and also could potentially be too long to handle as a server job because it needs to calculate something inside the rule to then compare the outcome to each position in the system (although to be fully transparent in this specific case this complex rule applied much faster than the original leading practice build..). We should also keep in mind that the larger the number of employees in an environment the longer eligibility rules take to finish running.


Did you know #1: we can use Variables to tremendously reduce the speed of Comp and VP eligibility rules jobs. Adding the below instead of hard coding Pay Grades in my Main record Employee history Rule in Variable Pay brought down the speed of the job from 12 hours to 7 hours (260,000 active employees in EC + 800,000 inactive employees in the UDF kept for data retention purposes) and improved stability as well (credit goes to Tatiana Caraiman for first using a similar config and sharing it with me). Please find on the links here after the full rules BEFORE and AFTER (the AFTER version is also partly displayed in the screenshot below).

Please see here another Business case where Variables helped fix an eligibility rule issue very quickly by reorganizing the conditions inside the rule.




Did you know #2: the most efficient way to build inclusion eligibility rules (recommended vs exclusion) is actually to use the global eligibility rule of a Variable Pay template which saves a lot of time as per the recording in this blog. More information about this Global Eligibility rule that I like to call "filter" rule can also be found here (recording #1).


Rule 1 - include users if :

    • {they are active}​ OR​ {they are retired AND at termination date they are age 55 or over AND their age and service is 70 or over​}

(credit Skip Jones)




Rule 2 - include users if :

    • {they have Senior in their Job Title}

Variant - {include users if they have "Pending Retirement" in their Local Job Title} :

(credit Skip Jones)




Rule 3 (Time Off module integration) - exclude users if

    • {they had 10 consecutive days of leave of absence during the fiscal year}

Note : Please find below a recording for this rule as setting it up is a bit more complicated than others.

Please find below another rule also starting with "Get Absence in Days For Period" function but with a twist (credit Nagesh Polu for sharing it on Linkedin) :

For additional Time Off - Compensation integration through Eligibility rules please see this blog.



Rule 4  - exclude users if :

    • {they were on leave of absence for more than a day during the year}



Rule 5 - exclude users if :

    • They DON'T have pay component 1111 in Comp Info.


Rule 6 - exclude users if

    • They have pay component 1111 in Comp Info.




Rule 7 (Using RBP for eligibility) - include users if :

    • {they are in the RBP permission group called "Compensation Eligible 2019"}

Note : in this example the "Compensation Eligible 2019" RBP group is a "static" group where userIDs were uploaded via CSV into the static group.

(credit Skip Jones)




Rule 8 - exclude users if :

    • {they were hired less than 12 months ago}

(credit Alan Carbajal)





What are the known limitations of Compensation eligibility rules ?

    • The date used in compensation eligibility rules must always be BEFORE the template's EC effective date. Example : if a template’s EC effective date is 12/31/2019, we cannot create a rule that will exclude all employees with event reason TRANSFER on or after 1/1/2020, but we can exclude employees with event reason TRANSFER on or after 6/1/2019​To exclude all employees with event reason TRANSFER on or after 1/1/2020 while keeping our template's effective date as 12/31/2019, we would need to use a workaround like the one I wrote about in this blog post :


    • Cross portlet rules (looking at both information from Job Info and from Comp Info in AND or OR conditions) are not supported and will return a red error message when running the rules. In order to use Compensation portlet data in compensation eligibility rules, it is recommended to use the following path : JobInfo > Employment Details > Compensation (see Rules 5 and 6 above).


    • It is not possible to compare in a rule the value from the same field at different dates such as : “If the employee had no increase in 2 years”. This would require us look at the salary from 2 years ago to compare it with the current salary which is not possible. To meet this requirement we would need the EC team to add a field on Comp Info called "Date of last salary increase" with a business rule to update it on Save (see this blog for design options)


    • Some Pay Components attributes cannot be used in compensation eligibility rules.​ For example “currency” will NOT work but “value” will. 


    • EC Compa-Ratio, Range Penetration and Time in Position cannot be used in compensation eligibility rules because they are values calculated “on the fly” in EC and not stored on the employee’s profile. All fields “on the fly” (or "transient" to use the proper EC name) cannot be used in eligibility rules.






All the best



(If you found this blog useful please consider giving it a Like)