---
title: Absences
summary: 'A recorded period when one employee was not working - a 5-day vacation, a 2-day sick leave, a 6-month maternity leave. Carries an employee, a type, dates, an approval status, and optional supporting documents.'
section: features
tags:
  - crud
  - tempus
  - holidays
  - absences
updated: '2026-07-21'
---

> An **absence** in Tempus is a recorded period when one employee was not working, carrying an [employee](tempus_employees.md), a [type](tempus_absence_types.md), a date range, an approval status, and optional documents.

Absences are how the system knows "on this day, this person was off" when computing expected hours, leave balances, and the [time point overview](tempus_time_point_overviews.md). Public holidays cover everyone-is-off days, absences cover the per-employee cases.

## Overview

An absence reaches this list two ways. The common path is employee-initiated: someone files a [holiday request](holiday_requests.md) in the Voxbi app and a manager approves it. The admin path is HR-initiated: on the create form HR picks the employee, the type, the period, and a status. **Approved** records the absence immediately (no validation step); **Pending** opens the same validation workflow as an employee request and emails the configured validators. Both paths produce the same record; the difference is the audit trail - requests carry approval history, HR-direct approved records carry HR as creator.

The period is chosen on a calendar that also lets HR mark the first and last day as half days for part-day absences.

## What it does

The [type](tempus_absence_types.md) drives balance impact (vacation deducts from quota, sick leave often does not), whether an evidence upload appears, calendar color, and the reporting bucket. The date range is intersected with the [holiday calendar](tempus_holiday_calendars.md) and [public holidays](tempus_public_holidays.md) to compute working days consumed, so a vacation spanning a public holiday does not consume quota for that day.

The status drives whether the absence is in effect:

| Status | Meaning |
|---|---|
| **Pending** | Awaiting manager decision. No balance impact. |
| **Accepted** | Approved. Shows on calendar. Balance reduced for quota-consuming types. |
| **Removed** | Rejected or canceled. No effect on balance. |
| **Removed requested** | An accepted absence the employee asked to cancel. Awaiting decision. |

Approve a pending absence from the row, or use Reject and Cancel rather than setting the status directly so a manager identity is captured. To cancel an accepted absence, the employee files a cancellation from the Voxbi app (status becomes Removed requested) which a manager then approves or refuses. HR can also cancel directly.

> [!IMPORTANT]
> Accepted absences decrement the balance immediately, not at the start date. Approving a December vacation in October shows the reduced quota from October onwards. Editing an accepted date range adjusts the consumed quota retroactively, and past-period changes may need a payroll-side correction too.

> [!TIP]
> For the routine "approve my team's requests" workflow, use the [Holiday requests](holiday_requests.md) page, which filters to pending requests and shows balance and colleague conflicts. Use this page for verifying records, attaching documents, and HR-direct entries.

## See also

- [Absence types](tempus_absence_types.md) - the categories absences use.
- [Holiday requests](holiday_requests.md) - the employee-initiated workflow.
- [Employee holiday quotas](tempus_employee_holiday_quotas.md) - the balances absences consume.
- [Time point overviews](tempus_time_point_overviews.md) - where absences appear on per-day reports.
- [Employees](tempus_employees.md) - the subjects of absences.

```yaml fields
employee:
  label: Employee
  tab: 'Absence details'
  hint: 'The employee this absence is recorded for.'
status:
  label: Status
  tab: 'Absence details'
  hint: 'Whether the absence is recorded straight away or sent for validation. On the create form only Approved and Pending can be chosen. Editing an existing absence keeps the full set of states.'
  values:
    -
      value: approved
      label: Approved
      text: 'Records the absence immediately with no validation step. The balance is settled right away and no email is sent.'
    -
      value: pending
      label: Pending
      text: 'Opens the validation workflow and emails the configured validators. There is no balance impact until the request is approved.'
absence_type_selector_ui:
  label: 'Absence type'
  tab: 'Absence details'
  hint: 'The category of leave. Drives the balance impact, the calendar color, and the reporting bucket. When the chosen type has sub-types, a second dropdown appears for the finer breakdown, and the sub-type is what gets recorded.'
absence_type_selector_ui.sub_type:
  label: 'Absence sub-type'
  tab: 'Absence details'
  hint: 'A finer breakdown within the chosen absence type, such as a specific kind of illness or special leave. Only appears for types that define sub-types. When set, the sub-type is what gets recorded in place of the parent type.'
'start_date,end_date':
  label: Period
  tab: 'Absence details'
  hint: 'The days the absence covers. Click one day for a single-day absence, or a start day then an end day for a range. The first and last day can each be marked as a half day. A half day can carry a time, the start time being when the absence begins and the end time being when you are back, which lets a morning and an afternoon absence share the same day. Public holidays and non-working days inside the range are not counted as leave taken.'
note:
  label: Notes
  tab: 'Absence details'
  hint: 'Optional context for the validators, such as the reason or coverage arrangements. Shown to whoever reviews the request.'
```
