Setting up time off booking validations
This topic applies to our new time off system only. The TimeAttend and TimeOff products include similar validations, but many of them are automatically applied.
Time off booking validation rules specify which requirements a booking must meet before it can be submitted.
For example, you can prevent a user from booking more vacation time than is available to them. If the booking doesn’t meet the requirements, when the user attempts to submit it they will see an error and the booking will remain unsubmitted.
Unlike timesheet validation rules – which can be set to either block timesheet submission, or to serve just as a warning – booking validation rules, when triggered, always prevent submission of the booking.
Validation rules can be added to default policies in time off types, or can be added to specific policies assigned to users.
Refer to the sections below for details on specific rule options.
Select these links for information about the starting policy rules, accrual rules, and limitation rules in time off policies.
If you have purchased an Enterprise-level product, we can work with you to create fully customized accrual rules. Contact your Customer Success Manager for more information.
Overview of the validation rules
Rules that limit time off durations
Checks that booking duration for working days falls within the duration requirements |
|
Checks that booking duration for calendar days falls within the duration requirements |
|
Checks that each day’s time off doesn’t exceed the user’s office schedule hours for that day |
|
Checks that the booking is exactly 14 calendar days |
|
Checks that bookings on a specific date have a given duration |
Rules that limit time off amounts over a period
Checks that total time off for working days does not exceed the allowed maximum for the year |
|
Restrict booking duration in leave year |
Checks that time off for either one booking or every booking falls within the duration and date range requirements |
Checks that time off doesn’t exceed the allowed maximum bookings/hours in a rolling period |
|
Checks that up to 3 bookings meet duration and date range requirements |
Rules that limit balance overdraw
Checks that the balance will stay within the overdraw limit |
|
Checks that the balance at of the end of the year is within the overdraw limit |
Rules that ensure advance notice is given
Checks that the booking gives the required amount of advance notice |
|
Checks that the booking gives advance notice based on its duration x a threshold multiplier |
Rules that prevent basic errors
Checks that the booking doesn’t overlap with an existing booking |
|
Checks that the booking duration is greater than 0 |
|
Checks that the first day of the booking is on or after the policy effective date |
Rules that restrict when time off can be used
Checks that bookings begin on the selected day of the week |
|
Checks that other time off types don’t have a balance that must be used first |
|
Checks that the booking doesn’t overlap with the user’s probationary period |
|
Checks that the booking does not finish at the end of the user’s work day |
|
Checks that the booking does not begin at the start of the user’s work day |
Other rules
Checks that all custom fields that appear on the booking are completed |
|
Checks that comments are present, and/or that comment lengths fall within min or max character limits |
|
Checks that the booked hours each day, including days off, is less than the user’s scheduled hours |
|
For multi-day dialog bookings only, checks that each day’s duration matches the duration between its start and end times |
Detailed descriptions of the validation rules
Rules that limit time off durations
Rules that limit time off amounts over a period
Rules that limit balance overdraw
Validation name |
This validation… |
---|---|
Checks that the balance will stay within the overdraw limit Parameters You can set this parameter for each time off type or policy:
Example If a user has 4 hours in their Personal Leave balance, and Personal Leave has an overdraw amount of 4 hours, they can book off up to 8 hours of Personal Leave. If they try to book off more, the booking will be prevented. Note You can set the overdraw amount to 0 to prevent users from overdrawing any amount. If you don’t specify an overdraw limit, users to can overdraw their balance as much as they want, within the boundaries of any other rules assigned. |
|
Checks that the balance at of the end of the year is within the overdraw limit Parameters You can set these parameters for each time off type or policy:
Example Imagine a company that lets its users overdraw their vacation balance as much as they like, as long as they’re within their set overdraw limit of 2 days at the end of the year. To enforce this, they set this rule to check the calendar year, with an overdraw amount set to 2 days. They set users to accrue one day off on the first of each month. If one of their users has a balance of 5 vacation days on Oct 15, and on that day tries to book off 10 days, the booking will be prevented. This is because after the booking, they’d have a balance of -3 days as of the end of the year, which exceeds their overdraw limit. (5 days balance + 2 days monthly accrual - 10 days booked off = -3). Note that it doesn’t matter that they’ll accrue a day off on Jan 1; the required balance must be effective at the end of Dec 31. When would this rule be useful? This rule is useful in companies that allow employees to overdraw their current time off balance, but limit overdraw of their yearly entitlement. Note You can set the overdraw amount to 0 to prevent users from overdrawing any amount at the end of the year. If you don’t specify an overdraw limit, users to can overdraw their balance as much as they want, within the boundaries of any other rules assigned. |
Rules that ensure advance notice is given
Validation name |
This validation… |
---|---|
Checks that the booking gives the required amount of advance notice Parameters You can set these parameters for each time off type or policy:
Example If you set the Minimum Notice to 5 calendar days, and a user wants to book July 10th off, they’d have to submit the booking by the end of July 5th. |
|
Checks that the booking gives advance notice based on its duration x a threshold multiplier Parameters You can set these parameters for each time off type or policy:
Example If you set the Advance Notice Threshold to 3 calendar days, and a user wants to book 5 days off, they’ll need to submit the booking 15 days ahead of the booking’s start date: 5 days off x factor of 3 = 15 days notice. When would this rule be useful? This rule is designed to meet compliance requirements in the U.K., that specify annual leave time off should be booked with an advance notice of at least twice the duration of the booking. |
Rules that prevent basic errors
Validation name |
This validation… |
---|---|
Checks that the booking doesn’t overlap with an existing booking When would this rule be useful? We recommend adding this validation for all time off types, to avoid issues caused by overlapping time off. Note This rule applies to overlapping full day or partial day bookings. |
|
Checks that the booking duration is greater than 0 When would this rule be useful? When a user is allowed to submit partial-day bookings, they can accidentally leave the duration at 0. This validation prevents incorrect data from being saved. |
|
Note If a time off type has multiple policies, this rule considers the earliest policy effective date of any policy, even if the rule is not configured for that policy. |
Rules that restrict when time off can be used
Validation name |
This validation… |
---|---|
Checks that bookings begin on the selected day of the week You can set this parameter for each time off type or policy:
When would this rule be useful? This rule is useful in countries such as Argentina, where annual leave must start on a Monday. |
|
Checks that other time off types don’t have a balance that must be used first Parameters You can set this parameter for each time off type or policy:
When would this rule be useful? For example, if the laws of your jurisdiction allow it, this rule can be used to prevent employees from using accumulated time off in lieu (TOIL) if vacation time off is available. Note If time off for another type is unavailable due to the time off type’s minimum increment, the booking may still be submittable. For example, say I want to book off half a day of TOIL, but Vacation time must be used first. The minimum increment for Vacation time is full days. In this case, the TOIL booking will be submittable since I can’t book half a day of Vacation time. |
|
Checks that the booking doesn’t overlap with the user’s probationary period Parameters You can set this parameter for each time off type or policy:
When would this rule be useful? For example, this rule would be useful in companies that allow sick time to accrue from an employee’s first day, but don’t allow employees to use sick time for the first 90 days. Note Time off can still accrue during the probationary period, and the employee can still book future time off that falls after the probationary period. |
|
Example If a shift worker’s work day ends at 5 p.m., they won’t be able to submit a 1 p.m.-5 p.m. time off booking, but they could submit one from 1 p.m.-4:59 p.m. Note This validation will only run if there are actual work hours entered on the timesheet. Plus, the time off type must be configured as follows:
The Require Start/End Times for Partial Day Bookings field is enabled |
|
Example If a shift worker’s work day begins at 8 a.m., they won’t be able to submit a 8 a.m.-12 p.m. time off booking, but they could submit one from 8:01 a.m.-12 p.m. Note This validation will only run if there are actual work hours entered on the timesheet. Plus, the time off type must be configured as follows:
The Require Start/End Times for Partial Day Bookings field is enabled |
Other rules
Validation name |
This validation… |
---|---|
Checks that all custom fields that appear on the booking are completed Note You can define custom fields for the time off type using the Additional Fields section on the time off type’s add or edit page. This rule requires all custom fields available on the booking to be completed before the booking can be submitted. |
|
Parameters Parameters for this rule are defined at: Administration > Time Off > Time Off Booking Validation Rules. You can choose one configuration for these parameters that applies to ALL time off types and policies:
|
|
Example If a user is scheduled for 8 hours each day on Monday and Tuesday, and they try to book off 9 hours on Monday and 8 hours on Tuesday, they won’t be able to submit the booking. |
|
For multi-day dialog bookings only, checks that each day’s duration matches the duration between its start and end times When would this rule be useful? We recommend enabling this rule if you’re using the expandable multi-day dialog to prevent data errors. Note This rule only applies to our beta expandable multi-day booking dialog, not the standard booking dialog. |
FAQs
Why are there two places to add validations to a time off type?
You can assign the rule under Add Request Validations that acts as a default, then define variations at the policy under the Define Default Accrual Policy section.
Can I edit a validation rule globally?
No. You can view the rules from Adminstration > Time Off > Time Off Booking Validation Rules, but parameters can only be set per time off type.
How does validation work when multiple bookings are made on the same day?
Any validation you assign to a time off type is only checked when you submit a booking for that type. If the validation is not assigned to other time off types, you may not see the desired results when users create multiple bookings on a single day.
Consider this example:
- The user has two time off types: Vacation and Flex Days.
- The Vacation type has a validation to prevent bookings that are more than the user’s scheduled hours, but the Flex Days type does not.
- The user is scheduled to work 7 hours.
- The user books 4 hours using the Vacation type. Because the amount of time off is less than 7 hours, the booking is successful.
- The user now books 4 hours using the Flex Days type. Because there is no validation assigned to the Flex Days type, the booking is successful, even though the user has booked more time off than they are scheduled to work.
- If the user had booked the Flex Days time off first, and then the Vacation time off, they would have been prevented from booking the Vacation time.
If you allow users to book partial days off and are using either of the following validations, we recommend adding the validation to all of the user’s assigned time off types.
- Error for booking more than scheduled hours
- Error for overlapping bookings
If I add a validation, are existing bookings affected?
Validations are checked when a booking is submitted. Existing bookings won’t be affected unless someone edits and resubmits them. Then the booking will need to meet the assigned validations.
What validations are available in TimeAttend and TimeOff?
Many similar validations are available in the TimeAttend and TimeOff products. If you have either of these products, time off bookings are automatically validated to:
- Prevent users from booking more than their scheduled hours
- Prevent overlapping bookings
You can also prevent users from overdrawing their balance using the Maximum Overdraw option in the time off policy.
Related links
Setting up time off types
Adding default time off accrual policies (for new time off system)
Assigning time off types and accrual policies to users
Time off policy scenarios
Adding default time off accrual policies (for new time off system)