How to automatically generate A Bonus Amount to Payroll based on USER-DEFINED Formula every year?

You can define a User-Defined Formula in Employee Class to automatically generate a Bonus amount to the employee by Employee Class every year. 

In Employee Class, the Auto Bonus tab

When Enable Auto Bonus is checked, HRPro will calculate the Year End Bonus/Double Pay/13th-month salary according to the Formula defined and release at the Auto Bonus Release Month

Auto Bonus Pay Type - The Pay Type that the Bonus will be released to, options are Bonus, Double Pay and Pay Type 1 to 15. 

Auto Bonus Cover Period - The Payroll Periods that the Formula refers to.

Auto Bonus Release Month - The period that the payroll batch included that year-end bonus amount (e.g. if it is 2, then the Bonus will be calculated and included in February Payroll Batch). Available values are 1 to 12 and the Month of Contract End Date

Exclude Employees with less than 1 year of service - No bonus if less than 1 year of service. 

Exclude Employees before Probation End Date - No bonus if Probation End Date is before bonus cover period end date.

Formula - Refer to the User Defined Formula to define the formula. 

These Five variables are specially designed for Auto Bonus

[BonusAverageRegardedWages] - Using the statutory Average Month Wage to calculate the bonus. The Regarded Month is based on  Auto Bonus Cover Period.

[BonusLastBasicWages] - Read the Basic Salary in Salary Info or Appointment History (depending on the option Consider Appointment History). If it is considered Appointment History,  the Auto Bonus Cover Period is respected.

[BonusAverageBasicWages]  - Read all Basic Salary figures in the Appointment History tab within the Auto Bonus Cover Period, average and return the result. Valid only Consider Appointment History is turned on.

[BonusEmploymentDays] - Number of Employment Days within the Cover Period

[BonusElapseDays] - Number of Calendar Days within the Cover Period (usually it is 365 except when the Bonus Cover Period covered Feb 29 of leap year, then it is 366)

          e.g.  [BonusLastBasicWages] * [BonusEmploymentDays] / [BonusElapseDays]