Brazil Vacation Bonus in Employee Central Time
Employees are entitled to vacation wages for a period (Ex: accrual period) and are entitled to one-third of their salary as a bonus, the payment has to be done no later than two days before the vacation has started. This is not to be confused with the payout functionality where Paid vacations in Brazil can also be partially converted to money.
Example: Employees may request Christmas Bonus advance in one of the periods. This needs to be handled via a country-specific field in Time off where we say if vacation (leave) requested is eligible for vacation bonus payout. Obviously, this would be validated by the manager who can be part of the workflow process. But once approved, how do we ensure the employee is paid out bonus amount correctly in the payroll system?
In the below approach, we would demonstrate a way in which this requirement can be achieved. The idea is to create Spot Bonus (one-time payments) automatically when such a leave request is created. In this approach, we assume that the payroll system is intelligent enough to generate the correct bonus amount for an employee based on his job attributes. Hence, we need to make sure we capture minimal information in EC to ensure payroll is notified. For example, we can create a one-time payment with a symbolic amount say 1 BRL. Once this is replicated, the payroll needs to read this 1BRL and Pay component as a flag and convert this symbolic amount into the actual bonus amount.
In this blog, I am going to cover only the EC part where I will show how we can integrate Time off with One-time payments seamlessly without any manual intervention by admins.
Disclaimer: This is just one of the approaches I have listed here based on my implementation experience. You may have other approaches as well. Please evaluate with your client before using this solution
As you are aware, we cannot make use of cross portlet rules from one MDF (Ex: EmployeeTime) to create a Hris element like one time payments. Hence we would make use of the Integration Center in this approach
Create a custom field in Employee Time Object definition to check if relevant for Christmas Bonus
Create an Integration Center report to map fields of employee time to One time payments (ex: user, date etc)
In above Integration Center , make the paycomponent and currency as calculated fields and hard code their values with external codes of paycomponent EX: CB_BZ (You can choose relevant paycomponent applicable for vacation bonus here) and Currency as “BRL”. Also hardcode the value of amount to “1”
Add filters to integration as time type code , approval status and the relevant flag
Also add an additional filer to pick up only those employee time requests which were modified since last job run of IC job (assuming IC job is scheduled every day)
Create a vacation for an employee with relevant for bonus as yes
Run the Integration Center Report
One Time payments are created with symbolic amount 1 and Date as Nov 21 (leave date). The symbolic amount 1 has to be handled in payroll to determine the actual pay of the bonus amount based on employee attributes
Really a nice blog.
I have one questions related to integration centre, is the approach is to create 2 integrations in integration centre or you were able to achieve this using single integration centre report, please elaborate.
We need only one Integration Center. Both source and target are SuccessFactors (Odata V2). Source entity is Employee Time and Destination Entity is One Time Payments
Hope this helps
Thanks & Regards
Thanks for clarification Neelesh.