# How to confirm a time entry

**For:** Manager | Shift worker
**You'll need:** A finished shift on the timesheet with status **'Published'**.

You'll confirm the worked hours on a single row — the one positive action that moves a row from **'Published'** to **'Confirmed'**. Confirming is what triggers leave and time-compensation accruals: nothing happens to balances until you confirm.

In dual-approval mode, the employee confirms their own hours and a manager approves afterwards — see {doc}`how-confirmation-works`. A manager can also confirm on someone's behalf.

## Confirm the row

::::{tab-set}
:sync-group: platform

:::{tab-item} Web
:sync: web

1. In the header, go to **Planning → Management → Timesheet**.
2. Find the row you want to confirm.
3. Click **'Confirm'** on the row.
:::

:::{tab-item} Mobile app
:sync: mobile

To confirm your **own** hours:

1. Tap **More** in the bottom bar, then **'Timesheets'**.
2. Tap the row you want to confirm — rows waiting on you carry the **'Scheduled'** badge.
3. In the sheet that opens, tap **'Confirm hours'**.

To confirm **on someone's behalf** (managers):

1. Tap **More** in the bottom bar, then **'Manager'**, then **'Timesheets'**.
2. Tap the row — each row names the employee under the shift times.
3. Tap **'Confirm hours on behalf'**. (On your own row the action simply reads **'Confirm hours'**.)

Confirming needs a connection. Offline the action isn't offered and the list shows *"You're offline. Connect to submit."* instead. If your company is on automatic time approval, the action is hidden too, with the note *"Hours are recorded and approved automatically."*
:::
::::

## What confirm does

- If the row has no clock-in or clock-out, {{ app_name }} fills it from the scheduled times ("worked as scheduled").
- The status flips to **'Confirmed'**.
- Any leave linked to the shift is accrued — see {doc}`/manage-leave/leave-requests/index`.
- Night-work credit on ArG 17b shifts is accrued — see {doc}`/rules-and-compliance/time-compensation/index`.
- If the hours are within your auto-approve tolerance, the row is approved straight away — see {doc}`/rules-and-compliance/time-compensation/auto-accrual`.

```{tip}
To confirm a row for someone who's left or is away, open the row's **'⋯'** menu and click **'Confirm on behalf'**. The row records that you confirmed it.
```

```{warning}
Confirm only when the times are right. To reverse the accruals, undo the confirmation first — see {doc}`undo-a-confirmation`.
```

## Verify it worked

The row's status badge reads **'Confirmed'** (it names who confirmed it on hover). The relevant leave or time-compensation balance reflects the change.

## Locked rows

If the row has already been **approved**, it's locked — the **'Confirm'** action is disabled and {{ app_name }} refuses the change. Unapprove it first. See {doc}`locked-period-ux`.

## Related

- {doc}`how-confirmation-works`
- {doc}`undo-a-confirmation`
- {doc}`approve-a-time-entry`
- {doc}`bulk-actions`
