This guide will covers how Overtime, Lateness and Undertime is being calculated funder Thailand Payroll:

1. Overtime Calculation for Thailand Payroll

Count Overtime:
Count Overtime based on Start and End Time
- If it is based on Start & End Time, it will depend on the working schedule
- Company can define if there is any tolerance overtime (Start Working Hours)
- Company can define if there is any tolerance overtime (End working hours)
Monthly Fixed | Monthly Dynamic | Daily Fixed |
When the employee works out of the working schedule, it will be considered overtime. | When the employee works over the Total hours set per week within the period set in the Total working days per week, it will be considered as overtime. | When the employee works out of the working schedule, it will be considered overtime. |
Example: If the employee times out at 7pm, there is an overtime of 1 hour. | Example: If I generated a timesheet for a week and there is 41 hours, there is an overtime of 1 hour. | Example: If the employee times out at 7pm, there is an overtime of 1 hour. |
If there is Tolerance Overtime (Start Working Hour): 15 mins It means that overtime calculation will start before the 15 mins from Start time. Meaning clock in before 845am If there is Tolerance Overtime (End Working Hour): 15 mins It means that the overtime count will start 15 mins after the end time. Meaning from 6.15pm onwards. | Not applicable as their schedule is dynamic. | If there is Tolerance Overtime (Start Working Hour): 15 mins It means that overtime calculation will start before the 15 mins from Start time. Meaning clock in before 845am If there is Tolerance Overtime (End Working Hour): 15 mins It means that the overtime count will start 15 mins after the end time. Meaning from 6.15pm onwards. |
Count Overtime based on daily working hours?
- If it is based on daily working hours, it will depend on the Minimum Daily Working Hours set (Hours and Minutes)
Monthly Fixed | Monthly Dynamic | Daily Fixed |
Will be based on the “Total Hours” set in the Working Schedule. If the daily working hours set is more, it will be considered as overtime | Not applicable to them - since they are on a “dynamic working schedule”, they will not be considered under the “Minimum daily working hours set” | Will be based on the “Total Hours” set in the Working Schedule. If the daily working hours set is more, it will be considered as overtime |
Example: If the employee times out at 7pm, there is an overtime of 1 hour. | Example: If the employee times out at 7pm, there is an overtime of 1 hour. If the employee times out at 7pm, there is an overtime of 1 hour. |
Count Overtime based on custom settings?
Monthly Fixed | Monthly Dynamic | Daily Fixed |
Will be based on the Minimum Working Hours / Working Days. Will be based on the Maximum salary set - set default as 0 | These settings will be ignored for those Employees with "Monthly Basis - Dynamic" salary type Not applicable - it will follow based on their working schedule | Will be based on the Minimum Working Hours / Working Days Will be based on the Maximum salary set - set default as 0 |
Calculation of Overtime & the pay items for all the employees:

Note:
** Within regular working hours means:
Based on the Schedule in the Working Schedule; OR
If there is no schedule set; we will set the logic on backend: default regular working hours to: 8 hours per day (excluding lunch) First 8 Hours based on the first time in.
** For Weekend scenario:
If the staff has to work on weekend (out of schedule), it will be considered “Weekend” and not “Day Off”.
When updating the timesheet, we should see [Weekend] if the staff schedule is on a weekend
Additional Notes:
- We do not need to add label for Monthly Dynamic as well as on Custom settings 40/5.
e.g. dates with range: 1st feb to 10th feb
- Labels for “weekend” will appear when there is OT (cross-day) e.g. working from 6th Feb to 7th Feb, we will see the label “Weekend” appearing.
- If we untick “[ ] Do you want to count overtime for holiday” - this means that the label “holiday” should not appear and that we will set the default OT rate as 150%.

2. Lateness Calculation for Thailand Payroll

Count Lateness:
Monthly Fixed | Monthly Dynamic | Daily Fixed |
When the employee is late based on the tolerance & matched against their working schedule, it will be considered Late. | not applicable to employees on Monthly Dynamic | When the employee is late based on the tolerance & matched against their working schedule, it will be considered Late. |
Example: If Tolerance Lateness: 0, if the employee clocks in at 9.01am, it will be considered 1 minute late. If Tolerance Lateness: 15 mins, if the employee clocks in at 9.15am, it will not be considered late. If employee clocks in at 9.16am, it will be considered late. Will count as 16 mins late. | Example: If Tolerance Lateness: 0, if the employee clocks in at 9.01am, it will be considered 1 minute late. If Tolerance Lateness: 15 mins, if the employee clocks in at 9.15am, it will not be considered late. Will count 15 mins from the start time. If employee clocks in at 9.16am, it will be considered late. Will count as 16 mins late. |

3. Undertime Calculation for Thailand Payroll

Count Undertime:
Monthly Fixed | Monthly Dynamic | Daily Fixed |
When the employees' total hours is less than what is set in the working schedule | When the employees' total hours/ total days in week is less than what is set in the working schedule | When the employees' total hours is less than what is set in the working schedule |
Example: If Tolerance Undertime: 0, if the employee clocks out at 5.59pm, it will be considered 1 minute undertime. If Tolerance Undertime: 15 mins, if the employee clocks out at 5.45 pm, it will not be considered undertime. Will count 15 mins before from the end working hours If the employee clocks out at 5.44pm, it will be considered 16 minutes undertime. | Example: If my total hours for the 5 working days is less than 40, it will be considered as undertime. | Example: If Tolerance Undertime: 0, if the employee clocks out at 5.59pm, it will be considered 1 minute undertime. If Tolerance Undertime: 15 mins, if the employee clocks out at 5.45 pm, it will not be considered undertime. Will count 15 mins from the end working hours If the employee clocks out at 5.44pm, it will be considered 16 minutes undertime. |