Reliable time sheets, every morning.
Semat distributes and services industrial parts across four sites. Every day, the HR manager cross-checked clock-ins against the hours on job sheets by hand. We built the agent that does this reconciliation and alerts the right workshop manager.
Project being rolled out. The figures below come from tests on real data. The agent is the first building block of a global platform that will bring together all of Semat's agents, including two conversational assistants in development.
Two files, every day.
Every working day, the HR manager compared two sources in a spreadsheet: clock-in and clock-out times, and the hours entered on job sheets.
She then reported each discrepancy to the workshop managers, by phone or in person.
An error not corrected by a manager stays final in the ERP.
Reconcile, rank, alert.
- Every working day at 4 am, it takes the previous day's data. Weekends and Belgian public holidays excluded.
- It brings together clock-ins, hours on job sheets and declared absences.
- It applies 7 rules: missing clock-in, gap of more than 15 minutes, unusually long day, break not recorded… A justified absence is never flagged.
- It sends each workshop manager an email with only their team's discrepancies, ranked by severity.
- A dashboard keeps the history: each discrepancy is marked fixed, justified or false alarm.
Safeguards. Without data, no alert goes out. If more than half the staff appear absent, a sign of an unrecorded collective leave, the agent sends nothing to managers and reports a technical issue.
Every day, two exports to cross-check by hand.
| Worker | On site | Break | Hours on job sheets | Gap |
|---|---|---|---|---|
| Worker A | 8 h 05 | 30 min | 7 h 05 | ? |
| Worker B | — | — | 6 h 20 | ? |
| Worker C | 8 h 10 | 30 min | 7 h 40 | ? |
| Worker D | 7 h 40 | 0 min | 7 h 35 | ? |
| … | … | … | … | … |
Subject: 3 time-sheet discrepancies in your team yesterday
Worker B: 6 h 20 on job sheets, no clock-in.
Rule: missing clock-inWorker A: 7 h 35 clocked excluding break, 7 h 05 on job sheets. 30 min gap.
Rule: clock-in vs. job sheet gapWorker D: 7 h 40 worked, no break recorded.
Rule: break not recordedWe took the AI out.
Our goal is the result, not AI at any cost. To detect discrepancies, we first tested an AI model on a control day: 14 anomalies checked by hand.
| Rules | AI model | |
|---|---|---|
| Anomalies found | 14 of 14 | 6 of 14 |
| False alarms | 0 | 9 |
| Anomalies missed | 0 | 8 |
On this task, AI mostly went wrong when comparing figures close to the thresholds, and missed almost all the serious cases. So we adapted the solution: detection is written in code, where it is most reliable. AI keeps the role it excels at: writing clear emails for each manager.
The traps of real data. In the ERP, spare parts and working hours share the same table, and job-sheet times are reconstructed, so unusable. The agent relies on durations only.
Time savings will be published after a few weeks of operation. They are already being measured in the dashboard.
Two files to cross-check every day.
An agent can do it for you, every morning, with the same rules.