Skip to Content
Technical Articles

Compensation Eligibility Rules : lesser-known rule conditions and overall limitations



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 have trouble making your rules work, if you found a better way to meet a specific customer requirement or if you have successfully configured a complex business rule using similar patterns than the ones below (= using business rules functions instead of EC fields as criteria).

In the appendix at the bottom of this post you will find more information about business rules limitations when applied to Compensation eligibility.




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, SAP)




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, SAP)




Rule 3 – 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.



Rule 4  – exclude users if :

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




Rule 5 – exclude users if :

  • {the value of their Pay Component “Target Bonus %” is less than 19%}




Rule 6  – exclude users if :

  • {they do not have the Pay Component “Target Bonus %”}




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, SAP)




Rule 8 – exclude users if :

  • {they were hired less than 12 months ago}

(credit Alan Carbajal, Apolis Rises)





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. 


  • 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.
You must be Logged on to comment or reply to a post.
  • Thanks a lot Xavier that's really useful to see unusual configurations of business rules for eligibility! I like very much the last ones around # of days of unpaid leaves... if only customers were making the effort of capturing these events more accurately in EC!! That would help a lot! 🙂

    • Thank you Nicolas, I am only at the beginning of my exploration of what we can achieve with all those "GET" and other initially-built-for-EC functions. It's great news for us in Compensation that they can also be used for our module. What I've come to realize so far during my testing is that we can only use the ones that have a "User ID" field in their parameters (screenshot below). I will test more functions in the upcoming weeks and will update this post if I am able to make additional ones work.