Vacations
Overview
The Vacations module is used for complete management and recording of employee vacations within the company. It allows employees to create vacation requests, supervisors to approve or reject them, track usage and remaining vacation entitlements, and export overviews for payroll accounting. The system supports various types of vacation and a flexible approval workflow, including the option for a final approver.
Key Features
- Creating vacation requests by employees or their supervisors
- Flexible approval workflow with the possibility of multi-round approval
- Support for various types of vacation (annual, unpaid, sick day, compensatory leave, paid leave)
- Calculating vacation in days or hours according to company settings
- Tracking usage and remaining vacation entitlements for individual employees
- Yearly and monthly calendar views of the entire team's vacations
- Display of conflicts - who else has vacation during the given period
- Automatic synchronization of approved vacations into attendance
- Export to Excel and CSV for integration with the IS Premier payroll system
- Email notifications upon submission, approval, or rejection of a request
- Option to cancel or partially cancel an approved vacation
- REST API for mobile applications and external systems
Access and Settings
How to Access the Module
Navigation path: Employees → Vacations
Module Settings
Settings path: Settings → Vacations
In the module settings, you can configure:
- User rights for individual employees (who can request, approve, or view vacations)
- Vacation entitlements for individual employees and years
- General module parameters (calculation mode, final approver, notifications)
- Types of vacation that can be used
- Colors for displaying individual vacation types in the calendar
- REST API access for mobile applications
User Rights
The Vacations module works with the following permission levels:
| Permission | Description |
|---|---|
| No access | The user has no access to the vacations module |
| Request vacations | The user can create vacation requests only for themselves and see their own vacations |
| Request and approve vacations for selected users | The user can create and approve vacation requests for specific subordinate users |
| See all unapproved vacations | The user sees all pending and rejected requests in the company (e.g., HR department) |
| Request and approve vacations for everyone | Full access to all vacations in the company, including approval |
| Download monthly overview | Permission to export vacation reports to XLS and CSV formats |
Supervisors can additionally have the following settings:
- See users' vacations: Option to view the approved vacation of other employees (not just those they approve for)
- Request additionally for users: Option to create vacation requests on behalf of other employees
- Send additional info after approval to: Automatic email sent to other persons after vacation approval
User Interface
Main Screen - Tabs
The Vacations module contains four main tabs in the top panel:
1. Requests
An overview table of vacation requests. Here you can browse all requests, filter them by status, view details, and perform approval or rejection actions.
2. Monthly Overview
A monthly calendar view showing the vacations of all employees in a given month. Vacations are color-coded by type (annual, unpaid, sick day, etc.). Ideal for planning and checking who will be absent during a given period.
3. Yearly Overview
A yearly calendar view providing a full-year overview of vacations in the company. It allows for quick identification of periods with a high number of employees on vacation.
4. Remaining Vacations
An overview of remaining vacation entitlements for individual employees. It displays the number of days or hours each employee still has available in the current year.
Filters and Search
In the Requests tab, the following filters are available:
Employee Selection
- All: Displays requests for all employees (within your permissions)
- Specific employee: Selection from the list of employees you have access to
Time Filters
- Year: Selection of the year to display requests (current year, last year, next year)
- Month: Optional narrowing to a specific month or displaying the entire year
Vacation Type
- All: All vacation types
- Annual leave: Standard paid vacation
- Unpaid leave: Vacation without salary entitlement
- Sick day: Time off for illness (if the employee is entitled)
- Compensatory leave: Time off for overtime or holiday work
- Paid leave: Other types of paid time off
- Other types according to your company's configuration
Filters by Request Status
- All: All requests regardless of status
- To approve: Requests waiting for your approval (number displayed in a red badge)
- To approve - all: All unapproved requests in the company (only for users with extended rights)
- Approved: Vacations already approved
- Declined: Rejected requests, including the reason for rejection
- Declined - all: All rejected requests in the company (only for users with extended rights)
- To cancel: Requests to cancel an already approved vacation waiting for your confirmation
- Cancelled: Cancelled vacations
- Cancelled - all: All cancelled vacations in the company (only for users with extended rights)
Request Table Columns
The request table displays the following information:
- Surname, First Name: Employee name (clickable link to user detail)
- Date From: Start of the vacation including the day of the week (e.g., "15.7.2025 (Tue)")
- Date To: End of the vacation including the day of the week
- Days / Hours: Number of vacation days or hours (according to company settings). In hour mode, the conversion to days is also shown
- Type: Type of vacation (annual, unpaid, sick day, etc.)
- Location: Place of stay during vacation (if filled in)
- Substitute: Who covers for the employee during vacation (if the function is enabled)
- Approved: Approval status with information on who approved/rejected and when
- Approve/Decline: Buttons for actions according to your permissions and request status
Basic Operations
Creating a Vacation Request
You can create a vacation request for yourself or (if you have permission) for another employee.
Procedure for Creating a Request:
- In the Requests tab, select the employee for whom you want to create a request
- Click the green button Request vacation for user [name]
- In the dialog box, fill in the mandatory fields:
- Who: Employee name (pre-filled, informative only)
- Type: Select vacation type (annual, unpaid, sick day, etc.)
- From: Vacation start date
- To: Vacation end date (can be the same as the start for a single day)
- Depending on the company settings, fill in other fields:
- First day of vacation: Full day or half day (when counting in days)
- Last day: Full day or half day (when counting in days)
- First day from: Number of hours on the first day (when counting in hours)
- Last day to: Number of hours on the last day (when counting in hours)
- Location: Place of stay during vacation (optional, if enabled)
- Substitute: Substitute name (if enabled and set as mandatory)
- When counting in hours, a list of individual days with the option to edit the number of hours for each day is automatically displayed
- The system automatically checks if you have sufficient vacation entitlement. If you exceed the entitlement and drawing into a negative balance is not allowed, the Save button will be inactive
- Click the green Save button to submit the request
Important Information When Creating a Request:
- Vacation must be within one calendar year - you cannot request vacation spanning the end of the year
- If you do not have an attendance schedule set for the given day, a warning will be displayed and the request cannot be created
- After submitting the request, an email is automatically sent to supervisors who can approve the vacation
- A confirmation email about the request creation is sent to the employee
Approving a Vacation Request
If you have permission to approve vacations, you can approve requests from your subordinates or all employees (depending on settings).
Approval Procedure:
- Go to the Requests tab
- Click the To approve filter - only requests waiting for your approval will be shown
- Check the request details:
- Dates and length of the vacation
- Employee's remaining vacation entitlement
- Click the Others in this period button to see who else has vacation during that time
- Click the green Approve button
- If the vacation starts in the past or today, a warning will appear that it may not be fully reflected in attendance - confirm with the OK button
- The request is approved, and the system:
- Automatically records the vacation in attendance
- Deducts the vacation from the employee's entitlement
- Sends an email to the employee with approval information
- If a final approver is set, it sends the request to them for further approval
Multi-round Approval:
If a final approver (e.g., company director) is defined in the settings, the approval process takes place in two rounds:
- First round: The direct supervisor approves the request - the status changes to "Partially approved"
- Second round: The final approver (e.g., director) approves the request - the status changes to "Approved" and the vacation is reflected in attendance
Declining a Vacation Request
If you cannot approve a request, you can decline it and state the reason.
Dejection Procedure:
- In the Requests tab with the To approve filter, find the request you want to decline
- Click the red Decline button
- In the dialog box, fill in the mandatory field:
- Reason for declining: Provide an explanation of why you cannot approve the vacation (e.g., "Insufficient shift coverage", "Term unsuitable due to project")
- Click the green Save button
- The request is declined, and the system:
- Changes the status to "Declined"
- Sends an email to the employee with rejection information, including the reason
- The vacation entitlement remains unchanged
Cancelling an Approved Vacation
If a vacation has already been approved but needs to be cancelled (e.g., due to a change in plans or work situation), you can cancel it entirely or just partially.
Cancellation by a Supervisor:
- In the Requests tab with the Approved filter, find the vacation you want to cancel
- Click the orange Cancel vacation button
- In the dialog box, fill in:
- Reason for cancellation: Provide an explanation of why the vacation is being cancelled
- Cancel: Select "Entirely" or "Partially"
- If you are only cancelling part of the vacation:
- Information about the original vacation dates will be displayed
- Select From and To - the time period to be cancelled
- Click the green Save button
- The vacation is cancelled, and the system:
- Removes the vacation record from attendance
- Returns the vacation entitlement back to the employee
- Sends an email to the employee with cancellation information
Request to Cancel Vacation by an Employee:
If an employee needs to cancel their already approved vacation but does not have the permission to cancel it directly, they can request the supervisor to cancel it.
- The employee finds their approved vacation in the Requests tab
- Clicks the orange Request to cancel vacation button
- Fills in the reason for cancellation and, if applicable, selects the time period they want to cancel
- Clicks Save
- The request status changes to "To cancel" and appears in the To cancel section
- The supervisor receives an email about the cancellation request
- The supervisor finds the request in the To cancel tab and clicks the Cancel vacation button
- Confirms the cancellation, and the vacation is cancelled with the entitlement returned
Viewing Colleagues on Vacation During the Same Period
Before approving a vacation, it is useful to find out who else has vacation during the same period to ensure sufficient coverage of work tasks.
Procedure:
- In the request table, find the specific request
- Click the blue Others in this period button with the question mark icon
- A dialog box will appear with a list of employees who have vacation during that period
- The list is divided by individual days and by vacation status:
- Approved vacations: Already confirmed vacations
- Partially approved: Vacations waiting for a final approver
- Waiting for approval: Not yet approved requests
- Based on this information, you can decide whether to approve the vacation or request a change of dates
Advanced Features
Data Export
The Vacations module offers two types of exports for payroll accounting and HR department needs.
Exporting Vacation Overview to Excel
An Excel export creates a clear table with all vacations in a given month.
- In the Requests tab, set the filters as needed (year, month, employee)
- Click the Download Excel vacation overview for this month button
- The Excel file (XLSX) will automatically download to your computer
- The export includes:
- Employee first and last name
- Vacation start and end dates
- Number of days or hours
- Type of vacation
- Location
- Approval status
- Who approved and when
Export to CSV for IS Premier
The CSV export is intended for import into the IS Premier payroll system.
- In the Requests tab, set the month and year you want to export
- Click the CSV - Download vacation export for this month for import into IS Premier button
- The CSV file will automatically download
- The CSV file contains data in a format compatible with IS Premier:
- Employee personal number
- Vacation date
- Number of hours or days
- Vacation type code
- Import the file into IS Premier according to its documentation
Calendar Views
Calendar views provide a visual overview of vacations within the company.
Monthly Overview
- Click on the Monthly Overview tab in the top panel
- A calendar for the given month will be displayed with color-coded vacations
- Each employee has their own row, where vacation days are color-marked
- The colors correspond to vacation types according to settings:
- Annual leave - e.g., green
- Unpaid leave - e.g., red
- Sick day - e.g., orange
- Compensatory leave - e.g., blue
- By clicking on a specific day in the calendar, you can view the vacation details
- Using the arrows, you can move between months
- The filter allows you to display only specific types of vacation or specific employees
Yearly Overview
- Click on the Yearly Overview tab in the top panel
- A full-year calendar with a vacation overview will be displayed
- Each month is displayed in a separate column
- Rows represent individual employees
- The color coding corresponds to vacation types, same as in the monthly overview
- This view is ideal for:
- Planning vacations for the entire year ahead
- Identifying periods with a high number of employees on vacation
- Checking the even distribution of vacations during the year
Remaining Vacations
- Click on the Remaining Vacations tab in the top panel
- A table with all employees and their vacation entitlements will be displayed
- For each employee, you can see:
- Total vacation entitlement for the current year
- Number of days or hours already used
- Remaining entitlement (total entitlement minus used)
- Number of days or hours in unapproved requests
- Actual available balance (remaining entitlement minus unapproved requests)
- The table can be sorted by individual columns by clicking on their name
- This overview helps:
- The HR department to monitor vacation usage
- Supervisors to plan subordinates' vacations
- Employees to find out how much vacation they have left
- Identify employees who have not used their vacation
Management of Vacation Entitlements
Vacation entitlements are set in the Settings → Vacations section under the User Rights tab.
Setting Entitlement for Individual Employees:
- Go to Settings → Vacations
- Open the User Rights tab
- In the upper part, select the year for which you want to set entitlements
- In the table, find the employee and fill in the number of days or hours in the appropriate column according to the vacation type:
- Number of days per year - Annual leave: Standard entitlement (usually 20-25 days per year)
- Number of hours per year - Annual leave: When counting in hours (e.g., 160-200 hours)
- Sick day: Number of sick days per year (if the employee is entitled)
- Other types according to company settings
- For sick days, you can also set a monthly limit:
- Fill in the Max/month field under the main count
- If you do not want a monthly limit, leave the field empty or enter 0
- Values are automatically saved when leaving the field
Monitoring Vacation Usage:
- In the Requests tab, below the table, you can see a summary for the selected employee:
- Total entitlement for the given vacation type in the year
- Used this year (approved vacations)
- In unapproved requests (pending requests)
- Remaining (entitlement minus used minus unapproved)
- When creating a new request, the system automatically checks the available balance
- If the employee does not have sufficient entitlement and drawing into a negative balance is not allowed, the request cannot be submitted
History of Entitlement Changes:
- In Settings → Vacations, go to the Rights History tab
- A complete history of all changes in vacation entitlements will be displayed:
- Who performed the change
- When the change was performed
- For which employee
- What the original and new values were
- Which year the change concerned
- The history is used for auditing and checking the correctness of set entitlements
Special Settings
Continuous Operation - Average
For companies with continuous 3-shift operation without an attendance schedule, there is a special mode:
- In Settings → Vacations, under the User Rights tab, find the Continuous operation - average column
- Check the box for employees working in continuous operation
- The system then uses an averaged number of hours equally for all days of the week, including Saturdays, Sundays, and holidays, when recording vacation in attendance
- The vacation is recorded with the average number of hours per day instead of according to the attendance schedule
Automatic Information Dispatch After Approval
You can set it so that after vacation approval, an email is automatically sent to other persons (e.g., HR specialist, assistant):
- In Settings → Vacations, under the User Rights tab, find the Send additional info after approval to column
- For a specific employee, click the Select Users button
- In the dialog box, check the users who should receive a copy of the approval email
- Click Save
- From now on, after approving the vacation of that employee, the selected users will automatically receive a copy of the notification email
- For bulk settings, click the green Set Bulk button in the column header and select the users who will be notified for all employees
Integration with Other Modules
Connection with the Attendance Module
The Vacations module is closely linked with the Attendance (WorkAttendance) module:
Automatic Recording in Attendance
- After vacation approval, a record is automatically created in the Attendance module
- Each vacation day is recorded as worked time according to the vacation type
- Annual leave counts as worked time for salary calculation purposes
- Unpaid leave is recorded but does not count toward worked time
Connection with the Attendance Schedule
- When creating a vacation request, the system checks if the employee has an attendance schedule set for the given day
- If the schedule is not set, the request cannot be created (a warning is displayed)
- The number of vacation hours is automatically calculated according to the attendance schedule:
- If an employee has 8 hours scheduled on that day, the vacation is recorded as 8 hours
- If they have a 12-hour shift on that day, the vacation is recorded as 12 hours
- Weekends and holidays are automatically skipped (if they are not scheduled as working days)
Attendance Adjustment Upon Vacation Cancellation
- When cancelling an approved vacation, the system automatically removes the records from attendance
- In the case of partial cancellation, only the days in the specified range are removed
- The vacation entitlement is automatically returned to the employee
Connection with Attendance Terminals
If your company uses attendance terminals (card readers, biometric readers):
- Approved vacation is automatically synchronized with the terminals
- The employee does not need to use the terminal during vacation
- If the employee still uses the terminal (accidentally comes to work), the system warns that they have recorded vacation
- The supervisor can adjust the attendance and manually replace the vacation with worked time
Troubleshooting
Frequently Asked Questions
Question: I cannot create a vacation request, an error message about the attendance schedule appears
Solution: This error means that for the day you want to take vacation, you do not have an attendance schedule set. Contact your supervisor or HR department to create an attendance schedule for that day. If you work night shifts, request vacation on the day the shift begins, not when it ends.
Question: The system will not let me submit a vacation request, the Save button is inactive
Solution: This happens when:
- You do not have sufficient vacation entitlement and drawing into a negative balance is not allowed - check your remaining entitlement in the Remaining Vacations tab
- You are exceeding the monthly limit for sick days - split the vacation into multiple months or request another type of vacation
- You are requesting vacation spanning across the end of the year - the system requires vacation to be within one calendar year
- You have not filled in all mandatory fields - check if you have selected a vacation type and filled in the from and to dates
Question: I want to cancel my approved vacation, but I don't have the Cancel Vacation button
Solution: If you do not have the permission to cancel vacation directly, you can request cancellation. Click the Request to cancel vacation button, fill in the reason, and submit the request. Your supervisor will receive an email and can approve the cancellation request. Then the vacation will be cancelled and the entitlement will be returned to you.
Question: I approved a vacation, but it wasn't recorded in attendance
Solution: This can occur when:
- The vacation was approved after its start date - in such a case, the system warns that it might not be fully recorded. Check attendance and manually add the missing days in the Attendance module
- The employee does not have an attendance schedule set for the given days - complete the attendance schedule and cancel and re-approve the vacation, or adjust attendance manually
- There are already other records for the given day in the Attendance module (e.g., work, illness) - the system does not overwrite existing records. Remove the conflicting records in attendance and re-approve the vacation
Question: How many sick days can I take per month?
Solution: The number of sick days per month is set in Settings → Vacations under the User Rights tab. If you see a "Max/month" field with a value filled in for sick days, this is your monthly limit. If the field is empty or contains 0, you do not have a monthly limit and can take sick days up to the annual limit. Contact the HR department to find out your specific entitlement.
Question: I see requests in the list that I cannot approve because I am not the supervisor of that employee
Solution: If you have the permission "See all unapproved vacations" or "See users' vacations", you can see requests even for employees you do not approve for. This is useful for the HR department and company management to have an overview of all requests. You can identify the requests you can approve by the fact that the Approve and Decline buttons are active for them. Other requests are for informational purposes only.
Question: How does the final approver work and why does my request have the status "Partially approved"?
Solution: The final approver is set in Settings → Vacations under the General Settings tab. If this function is active, vacation must pass through two rounds of approval:
- Your direct supervisor approves the request - the status changes to "Partially approved"
- The final approver (e.g., director) must still confirm the request - only then does the status change to "Approved" and the vacation is recorded in attendance
This ensures that important vacations (especially longer ones or those in critical periods) are also approved by the highest management. The vacation entitlement is deducted only after final approval.
Question: Can I have a negative vacation balance?
Solution: It depends on your company's settings. In Settings → Vacations under the General Settings tab, there is a table with individual vacation types and an "Allow drawing into negative balance" column:
- If the function is enabled (checked) for the given vacation type, you can create a request even if your entitlement is insufficient or already exhausted. However, it is up to the approver whether they approve such a request
- If the function is disabled (unchecked), the system will not allow submitting a request that would put you into a negative balance. The Save button will be inactive
Contact the HR department or your supervisor if you need to take vacation beyond your entitlement.
Tips for Effective Work
For Employees:
- Request vacation sufficiently in advance (at least 2 weeks ahead) so that your supervisor has time to check and approve the request
- Before creating a request, check how much vacation you have left in the Remaining Vacations tab
- Use the Others in this period button to find out who else will be on vacation during that period - you can then choose a different date if your absence would cause a problem
- If you need to cancel an approved vacation, do so as soon as possible so that management can prepare
- Follow your email notifications - the system informs you of the approval or rejection of a request
For Supervisors and Approvers:
- Regularly check the To approve tab - the number of pending requests is shown in a red badge
- Before approving a request, click on Others in this period to check that there will be no problem with shift coverage
- Use calendar views (Monthly Overview and Yearly Overview) for planning vacations in the team
- Monitor the Remaining Vacations tab and alert employees who have a lot of unused vacation at the end of the year
- If you decline a request, always provide a clear and understandable reason - it will help the employee choose a more suitable term
- For export to the payroll system, use the CSV export for IS Premier regularly at the end of each month
For HR Department and Administrators:
- At the beginning of each year, update vacation entitlements in Settings → Vacations under the User Rights tab
- Monitor the Rights History to audit changes in entitlements
- Check that all employees have correctly set permissions and supervisors can approve vacations for their subordinates
- Regularly check the Remaining Vacations tab and notify employees with high balances before the end of the year
- Use the To approve - all filter to ensure that no requests remain unapproved for a long time due to a missing approver
- Regularly export overviews to Excel for archiving and reporting
Keyboard Shortcuts and Quick Actions:
- In the request table, you can sort by any column by clicking on its name
- Double-clicking on a row in the table opens the employee detail
- Use filters for quick display of only relevant requests (To Approve, Approved, etc.)
- In calendar views, you can switch between months using the arrows or selection from the dropdown list
REST API
REST API Overview
The Vacations module provides a REST API for integration with mobile applications and external systems. The API allows automation of request creation, approval, and obtaining vacation overviews.
Activating REST API
- Go to Settings → Vacations
- Open the RestAPI tab
- Check the Enable REST API box
- Click anywhere outside the field for automatic saving
- The API is now active and available at your eIntranet server address
Authentication
Before each API operation, it is necessary to log in and obtain an authentication token.
Endpoint: POST /RestAPI/Login
Parameters:
username: Usernamepassword: User password
Response: Authentication token, which must be used in the header of all subsequent requests.
Available API Endpoints
1. Obtaining a List of Vacation Types
Endpoint: GET /RestAPI/Vacation/GetTypes
Description: Returns a list of all available vacation types in the system.
Response contains:
- Vacation type ID
- Type name (annual, unpaid, sick day, etc.)
- Whether it is possible to request a half day
2. Obtaining a List of Requests
Endpoint: GET /RestAPI/Vacation/GetList
Parameters:
year: Year for filtering (optional)month: Month for filtering (optional)status: Request status (optional): 0=pending, 1=approved, 2=declined, 3=cancelled, 4=to cancel, 5=partially approvedidUser: Filtering by a specific user (optional)
Response contains a list of requests with information:
- Request ID
- User ID and name
- From and to dates
- Number of days or hours
- Vacation type
- Request status
- Who and when approved/declined
- Location and substitute
3. Creating a New Request
Endpoint: POST /RestAPI/Vacation/Create
Parameters:
idUser: ID of the user for whom you are creating the requestfrom: Start date (format: YYYY-MM-DD)to: End date (format: YYYY-MM-DD)idWorkattendance_days_type: Vacation type ID (from the GetTypes endpoint)misto_pobytu: Location (optional)SubstituteZastup: Substitute name (optional)
Response:
- Created request ID
- Confirmation of sending emails to supervisors
4. Approving a Request
Endpoint: POST /RestAPI/Vacation/Approve/{id}
Parameters:
id: ID of the request to approve (in URL)
Response:
- Confirmation of approval
- Information whether the vacation was recorded in attendance
- Information about sending an email to the employee
5. Declining a Request
Endpoint: POST /RestAPI/Vacation/Decline/{id}
Parameters:
id: ID of the request to decline (in URL)reason: Reason for declining (mandatory)
Response:
- Confirmation of rejection
- Information about sending an email to the employee
6. Deleting a Request
Endpoint: DELETE /RestAPI/Vacation/Delete/{id}
Parameters:
id: ID of the request to delete (in URL)reason: Reason for deletion (optional)
Response:
- Confirmation of request deletion
Permissions for API
The API respects the same permissions as the web interface:
- You can only create requests for yourself or for users you have permissions for
- You can only approve requests of users you have approver permissions for
- The list of requests only shows requests within your permissions
API Usage Example
Example of creating a request using API in Python:
import requests
# Login
login_data = {
'username': 'john.doe',
'password': 'password123'
}
login_response = requests.post('https://your-company.eintranet.net/RestAPI/Login', data=login_data)
token = login_response.json()['token']
# Create request
headers = {'Authorization': f'Bearer {token}'}
vacation_data = {
'idUser': 123,
'from': '2025-08-01',
'to': '2025-08-10',
'idWorkattendance_days_type': 2,
'misto_pobytu': 'Croatia'
}
create_response = requests.post('https://your-company.eintranet.net/RestAPI/Vacation/Create',
headers=headers,
data=vacation_data)
print(f"Request created with ID: {create_response.json()['idVacations']}")