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
There is a legal and a common requirement in Mexico that specifies that employees must receive an entitlement ("prima vacacional") in addition to their normal annual leave entitlement. At the end of the employee’s year, the prima vacacional entitlement must be paid out. Further, the percentage of annual entitlement which needs to be paid out varies based on employee’s seniority. The payout happens via a separate time account named “prima Vacacional” . The amount paid out is stored in a one time pay component (non-recurring payment) and can be sent across to payroll for payment

Disclaimer: Please consult your customer before applying the solution below

Here are the steps required to configure such a scenario in employee central Time Off.

Business Data / Tables

Let's consider the below two seniority tables as examples.


The first table grants annual leave entitlement based on seniority. For example, for 1 year of seniority, the employee gets 6 days.


2023 Update:

There is a new law that indicates an increase in vacation days. Hence the below annual leave entitlement is applicable from 2023. Kindly consider these changes in your implementation too

Vacation Days
1 12
2 14
3 16
4 18
5 20
6 - 10 22
11 - 15 24
16 - 20 26
21 - 25 28
26 - 30 30
31 - 35 32


The second table below describes the percentage of annual entitlement which needs to be paid out for a certain seniority range.


To Represent these tables, we need to create two Lookups in EC


Look up 1: For vacation accruals based on seniority


Look up 2: Prima Percentage based on Seniority


Time account and Rules structure


1. Create a recurring Time Account Type with annual accruals on the employee's anniversary date. (Note: you can use the account creation start date as Employee Flexible Date). Assign this time account type to the Vacation time type you just created.

Accrual rule accrues the balance based on seniority. Here is the accrual rule which reads from lookup tables that we created in the first section

2.Create a flexible account Start Date Rule based on the employee anniversary date.

The time account start date can be hire date or service date (anniversary date of employee) as shown below in Flexible Start Date rule

3. Assign the Vacation time type to your time profile and mark it as ESS-enabled.

4. Now create another time type (called, for example, Vacation Premium or Prima Vacactional) which is not marked as ESS-enabled in your time profile.

5. Create a recurring Time Account Type which accrues a certain percentage of annual entitlement based on seniority. This time account is also valid from employee flexible date like hire date or service date. Also, make this account as eligible for payout

Accrual rule accrues some percentage of annual vacation entitlement based on seniority. It reads both the lookup tables (One lookup which stores the vacation balance, and another look up which stores the percentage. Refer to First Section for more details)

6. Configure a Period-End Processing with Payoutrule which pays out the remaining balance at the end of the bookable period and then closes the time account. Assign this rule to the time account.



Work Schedule Config

Work schedule has following attributes


Please note as per table the monthly salary is 15000 and 500 is daily wage. This can happen only if number of working days is 30 in a month. In reality we have to factor in weekends (non-working days as well) to derive working days which then approx. is 20-22 working days in a month. But if this is how we need to derive the rate as per lookup, then we need to maintain average working hours per year as 2880 in work schedule so that the payout feature picks the daily rate as 500 MXN. Of course, this can be customizable as per customer needs.



Testing of the E2E scenario

Employee Simon was hired on Jan 1 , 2016

His monthly salary is 15000 MXN as described in the table in the first section

As of Jan 2017, his seniority is 1 year and hence he gets the below balance for vacation and Prima accounts

Now Run the PEP (period-end processing) for 2017 as of bookable end date of Time account i.e Dec 31,2017

We would see that the amount 750 MXN is paid out correctly

This matches the amount in our table.

The total amount then can be integrated with payroll using the one-time pay component. Hope you find this solution useful in delivering Mexican requirements for your clients