A pay policy is a set of rules that decides how the hours your employees work are turned into pay codes, such as Regular Time, Overtime and Double Time. System Admins create pay policies and can edit them later with an effective date, so a change applies from the right pay period without creating a new policy. HR Admins can open and view pay policies but cannot add, edit or delete them.
Basic pay can be defined as the rate at which the organization is contracted to pay the employee and may be stated as an hourly, daily, weekly, monthly, or annual sum. It is the payment the employee expects to get, irrespective of bonus, overtime, or commission rates. For some employees, basic pay is the same as total remuneration. For others, it may represent only a small part of their earnings, the rest being made up of variable amounts because of sales commission, piecework rates, etc.
The primary motivation for many businesses to create an internal pay policy is to ensure that everyone gets paid fairly and in accordance with the company's strategy and goals. As a result, the primary goals of human resource pay strategies are to:
Attract and retain talent
Satisfy the financial needs of the workforce.
Guarantee fair and equal pay
The Pay Policy List
Go to Attendance → Configurations → Pay Policies.
The list shows the number of pay policies found and the following columns: Name, Pay Period, Start Date, Job Titles, Locations, Sub Units, Employment Statuses and Assigned Employees. The Assigned Employees column shows how many employees are assigned to each pay policy as of today.
- Click Add Pay Policy to create a new pay policy.
- Click a pay policy row to open the Edit Pay Policy screen.
- Select one or more pay policies and delete them. Deleting a pay policy takes effect immediately and cannot be given an effective date.
Note: Only System Admins can add, edit and delete pay policies. HR Admins can open the pay policy screens to view them only.
Create a Pay Policy
Step 1 - Click Add Pay Policy. The Add Pay Policy screen opens as a single page with five expandable sections, in this order:
- General Rules
- Round-Off Rules
- Break Rules
- Link Attendance Exception Rules
- Additional Rules
Click a section's arrow to expand it. Only one section is open at a time, so opening a section closes the others. The General Rules section is open by default.
Step 2 - At the top of the page, enter the Name, Pay Period and First Pay Period Start Date. All three are required. In the General Rules section, tick Enable Working Day, Non-Working Day and Holiday Rules if you want separate rules for those days, and use Add Rule to add your rules. A default "Up to" daily rule row is already shown for you to fill in.
| Field | Description |
| Name | Add the pay policy name here. |
| Pay Period |
Select the suitable pay period
The pay period cannot be changed after the pay policy is created. |
| First Pay Period Start Date | Choose a date for the pay policy to begin. From that point forward, the system will monitor employee attendance records and compute based on the rule. This date cannot be changed after the pay policy is created, and it becomes the effective date of the pay policy's first version. |
| Add Rule |
When the "Enable Working Day, Non-Working Day and Holiday Rules" is Disabled,
When the "Enable Working Day, Non-Working Day and Holiday Rules" is enabled, the following are the rules that you can select:
For each rule, fill in the pay hours, Pay Code, Pay Code Name, Pay Code Type and pay rate. To remove a rule, click its delete icon. |
How to Set up Daily Rules
For example, the employees work up to 8 hours on a regular basis (RT) per day, and if they exceed the hours, based on the policy, the base pay will be increased.
1st Daily Threshold = 8 hrs
Time Up to = RT - Regular Time
Time Exceeding = OT - OverTime
2nd Daily Threshold = 12 hrs
Time Exceeding = DT - Double Time
How to Set up Weekly Rules
If you are setting up the pay policy rules for the weekly or consecutive days, add the rules by clicking the "Add Rule" button. Ex: Employees need to work 8 hours per day for the entire week, and if the total number of hours exceeds 40, the base pay will be multiplied by 1.5
Weekly Threshold = 40 hrs
Time Exceeding = WOT - Weekly OT
How to Set up Specific Day Rules
Define pay adjustments for specific days, such as weekends or public holidays:
Example: For a retail organization, employees working on Sundays receive additional pay based on the policy. If the standard rate is $20/hour, the Sunday pay rate can be set to $30/hour.
Specific Day: Sunday
- Standard Rate = $20/hour
- Specific Day Rate = $30/hour
How to Set up Consecutive Rules
Ex: Employees need to work 8 hours per day for 6 consecutive days, and on the 7th day, the employee's base pay is multiplied by 1.5. If the number of days is more than 8 consecutive days, the employee's base pay is multiplied by 2.0, and the amount will be paid to the employee.
7th Consecutive Day Threshold = 8 hrs
Time Up to = OT - Over Time
Time Exceeding = DT - Double Time
How to Set up Unworked Holidays Pay Code Rules
This rule uses a dedicated pay code for days when an employee receives a paid holiday without working, specifically when the holiday falls on a scheduled workday but the employee does not punch in. This ensures accurate payroll processing for paid holidays without attendance.
How to Set up Multiple Consecutive Days Rules
System Admins can configure Multiple Consecutive Days Rules using tiered pay codes for up to 7 consecutive days. For example, the system can be set to award Overtime at 1.5x after 4 consecutive working days, and Double Time at 2.0x after 5 days. These thresholds can be stacked to reflect progressive pay structures.
How to Set up Non-Working Days and Holiday Rules
The pay policy rules apply if an employee works on a non-working day or holiday. Based on the number of hours worked on a non-working day or holiday, the setup defines how their basic pay should be calculated.
For example, if the policy rule has been set up to work 8 hours per day and if an employee works on a holiday or a non-working day, you can set up, based on the number of hours, how the basic pay should be calculated.
How to Set up Leave Pay Code Rules (including half-day leave)
The Leave Pay Code Rule pays leave under a pay code you choose, so leave that an employee has taken appears as paid hours on their attendance sheet.
- In the General Rules section, click Add Rule and select Leave Pay Code Rule.
- Click Select Leave Types. In the window that opens, use the Leave Types and Country filters or the search to find the leave types you want, and select one or more of them. Only leave types set up in the Leave module are listed.
- Enter the pay code and the pay rate for the rule.
You can add more than one Leave Pay Code Rule to the same pay policy to pay different sets of leave types under different pay codes. Each leave type can be used in only one Leave Pay Code Rule within a pay policy.
How leave is paid
- Only approved leave that the employee has taken (leave in the Taken state) is paid. Leave that is pending or scheduled is not paid.
- For a full day of leave with no attendance, the whole leave duration is paid under the leave pay code and is included in the pay period's Total Time.
- If leave is taken on a holiday, the leave pay code takes priority over the Unworked Holiday Rule.
- Leave is always paid at the single pay rate you set on the rule. Multipliers or overtime rates for leave hours are not supported.
- If the leave is cancelled, the leave pay code is removed from the attendance sheet, unless the attendance sheet is already approved.
- If the Leave module is disabled, the Leave Pay Code Rule is ignored. Existing attendance sheets are not affected.
Leave and worked hours on the same day
By default, if any working time is recorded on a leave day, even a single short punch, the leave pay code is not paid for that day and only the hours worked are paid under their usual pay code. The Leave module still deducts the leave from the employee's balance.
To pay both, turn on Pay Half Day Leave Alongside Worked Hours in the pay policy's Additional Rules section. This setting is off by default, including for existing pay policies after upgrading. When it is on:
- The leave duration recorded in the Leave module is paid under the leave pay code, and the worked hours are paid under their usual pay code. Both are shown against the same day and both count towards the pay period's Total Time.
- Daily, Specific Day, Non-Working Day and Holiday thresholds are measured on the worked hours only. The leave hours do not push the worked hours into overtime.
- Leave hours count towards the Weekly Rule threshold only if the option to include leave pay codes in weekly calculations has been enabled for you by the OrangeHRM Support Team.
- A day with worked hours keeps a consecutive-days streak going. A leave day with no worked hours breaks the streak.
- The total paid for the day is not capped and can be more than the scheduled shift.
Example: An employee has a 4-hour half day of annual leave in the morning and works 4 hours in the afternoon. With the setting on, the day shows 4 hours under the leave pay code and 4 hours under Regular Time, and both count towards the pay period total. If the same employee works 10 hours instead, the day shows 4 hours under the leave pay code, 8 hours of Regular Time and 2 hours of Overtime.
Note: The setting also applies to full-day leave. If an employee takes a full day of leave (8 hours) and also works a full day (8 hours), 16 hours are paid for that day. Make sure this is the outcome your organization wants before you turn the setting on.
Note: This setting only has an effect when the pay policy has a Leave Pay Code Rule. Refer to How to Configure Additional Rules under Pay Policies.
Step 3 - Complete the other sections as needed:
- Round-Off Rules - To standardize punch times for payroll calculation, you can configure round-off rules for employee punch-ins and punch-outs. Refer: How to Configure Round-off Rules for Punch-In and Punch-Out
- Break Rules - The system evaluates the total work duration across all attendance records for the day before applying break deductions based on the work schedule or roster. If an employee takes a shorter break than scheduled, the system deducts the remaining time. If a longer break is taken, no additional deduction is applied. This applies to all working days and is triggered only when the minimum work duration is met. Refer - How to Configure Break Rules Under a Pay Policy
- Link Attendance Exception Rules - Choose the attendance exception rules that apply to employees on this pay policy. Refer: Linking Attendance Exception Rules with Pay Policies
- Additional Rules - To configure additional rules under a pay policy, please refer to this article: How to Configure Additional Rules under Pay Policies
Step 4 - Click Save. The page has one Save button and one Cancel button for all sections. Clicking Cancel returns you to the pay policy list without saving.
If any section has an error, it is highlighted with a red border, and the first section with an error opens automatically. After fixing it, open any other highlighted sections yourself to fix them too.
When the pay policy is saved, the system records it as the pay policy's first version, with the event name Initial version and an effective date equal to the First Pay Period Start Date. The Pay Policy Version History screen then opens, showing this version.
Step 5 - Set up who the pay policy is for. Eligibility criteria are set after the pay policy is created: open the pay policy from the list and click the Eligibility Criteria link under the (N) Employees in this Pay Policy count.
Use the filters to describe the employees this pay policy is meant for:
- Location - Filter employees by their assigned location (e.g., Australian Region).
- Sub unit - Filter by department or a specific division within the organization.
- Job Title - Search for employees holding a particular job title.
- Employment Status - Filter based on the type of employment.
Step 6 - Click Save on the Eligibility Criteria screen.
Note: Eligibility criteria changes are saved straight away. They are not saved as pay policy versions and do not need an effective date. The criteria are used to warn you and to suggest the recommended pay policy when you assign a pay policy to an employee. Employees are assigned to a pay policy, with an effective date, from the Job tab of their PIM profile.
Edit a Pay Policy with an Effective Date
From 8.2.1 onwards, you can edit the whole pay policy on one page and save it in one action, even when employees are assigned to it. When you save, you name the change and choose the pay period it takes effect from. You no longer need to create a new pay policy and move employees across to change the rules. The Pay Period and First Pay Period Start Date cannot be changed.
Step 1 - Go to Attendance → Configurations → Pay Policies and click the pay policy you want to change. The Edit Pay Policy screen opens.
At the top of the screen you will see:
- Edit Pay Policy and Pay Policy Version History in the top navigation.
- The (N) Employees in this Pay Policy count, with the Eligibility Criteria link under it.
- The Name field, which you can edit, and the Pay Period, First Pay Period Start Date and Version Effective Date fields, which are read-only.
Step 2 - Expand any section and make your changes. The sections are General Rules, Round-off Rules, Break Rules, Link Attendance Exception Rules and Additional Rules, and only one is open at a time. Whether or not employees are assigned, you can turn Enable Working Day, Non-Working Day and Holiday Rules on or off, add and delete rules, and change each rule's pay hours, Pay Code, Pay Code Name, Pay Code Type and pay rate.
Step 3 - Click Save. The Save Changes window opens. If any section has an error, it is highlighted with a red border and the first one opens so you can fix it. If you try to leave the page with unsaved changes, the system warns you.
Step 4 - In Event, enter a short name for this change, for example "Overtime rate update". This field is required.
Step 5 - In Effective Date, select the date the change takes effect from. This field is required and is empty by default. The calendar shows "Only pay period start dates are selectable". You can select:
- the start date of the previous pay period, to correct the pay period that has just ended,
- the start date of the current pay period, or
- the start date of any future pay period, to set up a change ahead of time.
Older pay period start dates and all other dates are shown but cannot be selected.
Example: A weekly pay policy's pay periods start on Mondays. On 2026-08-04, the earliest date you can select is the previous pay period start date, 2026-07-27. The Monday before that, 2026-07-20, is greyed out.
Step 6 - Read the message shown below the date. It tells you what the save will do:
- If a version already exists from that date: "This action will result in overwriting the existing policy version effective from {date}. If non-frozen sheets exist from this date, they will be recalculated."
- If no version exists from that date: "This action will result in creating a new version effective from {date}. If non-frozen sheets exist from this date, they will be recalculated."
Step 7 - Click Save Changes. All your changes on the page are saved together as one version:
- If a version already exists from the selected date, that version is overwritten with your changes and your event name. The previous settings of that version are not kept as a separate version; the change is recorded in the Audit Trail.
- Otherwise, a new version is created with your event name and effective date.
A success message is shown and the Pay Policy Version History screen opens with the saved version. To go back without saving, click Cancel in the window; your changes stay on the screen, unsaved.
Note: From the effective date, the new version is used to generate attendance sheets and calculate pay codes until a later version takes effect. Days before the effective date keep using the version that applied on those days. Attendance sheets from the effective date that are not frozen are recalculated with the new rules. Approved attendance sheets are never recalculated and keep their current pay codes.
Note: Each save creates one entry in the Audit Trail, however many sections you changed. The event name Initial version is reserved by the system for a pay policy's first version.
Note: For how linked exception rules work with pay policies, refer to Linking Attendance Exception Rules with Pay Policies.