> ## Documentation Index
> Fetch the complete documentation index at: https://docs.encoreos.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Time Exceptions

> Queue for reviewing and resolving time exceptions such as missed punches, late arrivals, and unauthorized overtime, with bulk resolution and manual punch entry.

The Time Exceptions page provides a filterable queue of time exceptions with bulk and individual resolution actions, manual punch entry, and punch edit capabilities. It is served at route `/hr/time/exceptions`.

## Overview

The page uses `useTimeExceptions` with status and type filters. Status options: open, acknowledged, resolved, dismissed, all (default: open). Exception types include: missed\_clock\_in, missed\_clock\_out, late\_arrival, early\_departure, overtime\_unauthorized, overtime\_approaching. Action components: `ExceptionResolutionDialog` (single), `AddMissedPunchDialog`, `EditPunchDialog`, and bulk resolution via `useTimeExceptionMutation.bulkResolve`. A detect-exceptions button triggers server-side detection.

## Who it's for

Access follows your organization's role and module configuration. ## Before you start

* Time exceptions are generated automatically from clock-in/clock-out events; they appear in the queue once detected.

## Steps

**Review exceptions**

1. Navigate to **HR > Time > Exceptions** or go to `/hr/time/exceptions`.
2. Use the **Status** tabs (open, acknowledged, resolved, dismissed, all) to filter.
3. Use the **Type** dropdown to filter by exception category.

**Resolve a single exception**

1. Click an exception card to open `ExceptionResolutionDialog`.
2. Select a resolution action and save.

**Bulk resolve**

1. Select multiple exception cards.
2. Click the bulk resolve button and confirm.

**Add a missed punch**

1. Click **Add Missed Punch** to open `AddMissedPunchDialog`.
2. Enter the employee and punch details.

**Edit a punch**

1. From an exception card, click the edit punch action to open `EditPunchDialog`.

## Key concepts

| Term           | Meaning                                              |
| -------------- | ---------------------------------------------------- |
| Exception type | Category of the time discrepancy (see list above).   |
| Status         | Lifecycle: open, acknowledged, resolved, dismissed.  |
| Bulk resolve   | Resolve multiple selected exceptions simultaneously. |

## Related

<Columns cols={2}>
  <Card title="Human Resources" icon="users" href="/hr/overview">
    Human Resources core overview.
  </Card>

  <Card title="Governance & parity" icon="scale-balanced" href="/governance/index" />
</Columns>

<Note>
  This page documents shipped product behavior. It is not medical, legal, or
  billing advice. Verify against your organization's policies and applicable
  regulations before using it for clinical, compliance, or billing decisions.
  Protected health information (PHI) shown in the product is governed by your
  tenant's access controls and is never exposed in this documentation.
</Note>

<Accordion title="Documentation sources">
  * src/routes/hr.tsx
  * src/cores/hr/pages/ExceptionQueuePage.tsx
  * src/cores/hr/hooks/time/useTimeExceptions.ts
  * src/cores/hr/hooks/time/useTimeExceptionMutation.ts
</Accordion>
