---
title: "Desktop App (BareLedger Time)"
description: "Run a shared clock-in kiosk, a personal tray app or a biometric device bridge on Windows or macOS. Enroll with one-time codes, revoke instantly."
url: "https://bareledger.app/guides/desktop-app"
category: "Team, roles & approvals"
updated: "2026-10-29"
publisher: "BareLedger (Syneria Technologies OPC)"
---

# Desktop App (BareLedger Time)

> Kiosk, personal tray and biometric bridge: enroll machines with one-time codes, revoke them instantly.

**Who uses this**: whoever sets up attendance hardware — a shared kiosk by the door, an employee's own PC, or the machine next to a biometric scanner. One small app (macOS and Windows) covers all three.

## How trust works (the short version)

The app never holds a password or API key. You enroll each machine once with a **one-time code** from **Settings → Devices** (minted under a 2FA step-up, valid 15 minutes, works once). The app then creates its own signing key, keeps it in the machine's secure keystore, and signs every message it sends. Lost or stolen machine? **Revoke it** in Settings → Devices — it's cut off from the very next message, with nothing on the device worth stealing.

## Setting up

1. Install BareLedger Time on the machine.
2. In BareLedger, go to **Settings → Devices → Enroll device**: name it, pick its mode, optionally pin it to office IP addresses, and enter your authenticator code. Copy the one-time code.
3. In the app, enter your API address and the code. Done — the app switches into its mode:

### Kiosk (shared machine at the entrance)

A full-screen clock. The employee finds their name (or types their number), enters their **PIN**, and taps Clock in / Clock out. PINs are set by HR on each employee's record and checked only on the server; five wrong tries lock that person on that kiosk for 15 minutes.

### Personal (one employee's own computer)

The device is bound to one employee at enrollment. The app is just two buttons — Clock in / Clock out — and always punches as that person, whatever the machine sends.

### Biometric bridge (next to a fingerprint/face device)

Point the app at the folder where your biometric device drops its export files. Every new CSV is read, its punches uploaded, and the file moved into `processed/`. Rows it has seen before are skipped, so overlapping exports are harmless.

## Offline behavior

Punches are saved on the machine first and synced when the network allows — a dropped connection never loses a clock-in. The app shows how many punches are waiting; they flush automatically every half minute.

## Common mix-ups

- **"The code says it's not valid."** Codes die after 15 minutes or one use — mint a fresh one.
- **"I reinstalled the app and it won't talk to the server."** Reinstalling (or un-enrolling) discards the machine's key. Revoke the old device entry and enroll again with a new code.
- **"Punches show a *flagged* badge."** They synced long after they happened (see the attendance policy's stale-sync window). The hours still count; the badge just invites a look.
