Werktyd

Support

Help centre

Short answers for setup, clock-ins, reports, offline work, and privacy.

Contact support
Set up a new team

Add each person under Workers, choose face or PIN clock-in, then set the normal workday under Hours.

Pair a gate tablet under Kiosks. The device keeps its pairing until it is unlinked.

Clock in and out

Workers can use a paired kiosk, a PIN, or a paired Telegram chat. Location clock-in only succeeds automatically inside a work zone.

Uncertain events appear under Review. They remain auditable and do not disappear silently.

Fix a missed clock-out

Open Timesheets, find the affected day, choose Fix, and enter the correct time and reason. The change is recorded in the audit trail.

Work during a signal outage

A paired kiosk can queue a clock event with a proof image while offline. When the connection returns, the event moves to Review for a manager to accept or reject.

PIN bypass is unavailable offline because there is no reliable identity check without the server.

Set up sites and patrols

Draw work boundaries under Sites. Build ordered checkpoint routes and print QR posters under Patrol.

Export payroll hours

Choose the payroll format under Hours, add any required employee codes under Workers, then export the required date range from Timesheets.

We export Sage Pastel Payroll, Sage VIP Premier, SimplePay, AfriKlok and a generic CSV.

Set up Sage Pastel Payroll

Three things, once per company:

  1. Under Hours, set Template to Sage Pastel Payroll.
  2. Under Workers, fill in each person's Payroll code — their employee code exactly as it appears in Pastel. Left blank, we fall back to our own worker number, which will not match.
  3. Back under Hours, open Advanced: per-tenant code overrides and check the transaction codes against your Pastel. We default to 5000 normal, 5005 overtime, 5021 Saturday, 5022 Sunday, 5023 public holiday. These differ between Pastel installations.

Then in Pastel: back up first, and go Process → Process Batch → Batch Transaction → Batch → Import Batch. Print the batch and check it before you update payslips.

Do not open the file in Excel. Pastel needs every field in quotes, including the empty ones. Saving from Excel strips them and the import fails with “wrong number of fields for type of batch”. Take the file straight from Werktyd to Pastel.

Check your codes before the first real run. If they do not match your Pastel, the import still succeeds — it just puts the hours on the wrong earning lines, with no error. That is the one worth five minutes up front.

If two workers end up with the same payroll code we will refuse to build the file, because Pastel would add both people's hours onto one employee. Fix the duplicate under Workers.

Before your first payroll run — the five things that catch people out

None of these are errors you will see. Each one produces a file that imports perfectly and pays the wrong amount, so they are worth ten minutes before your first real run.

  1. Open Hours once and save it. Working days arrive ticked Monday to Friday. If your team works Saturdays, every 9th hour on a six-day week is written as normal time instead of overtime, and your payroll pays it at single rate.
  2. A forgotten clock-out is worth 0.00 hours. There is no error and no line in the file — the person is simply paid nothing for that shift. Check the Timesheet for open shifts before you export, and use the Anomaly check on the daily view.
  3. The file carries hours only. The rate column is deliberately blank. Every rand is decided by what your own payroll system pays for each transaction code. That is why checking the codes matters more than anything else on this page.
  4. Weekend and public-holiday overtime is booked to the day’s own code (Saturday, Sunday, public holiday) rather than to the overtime code. Make sure those codes pay what you intend in your payroll system.
  5. Clock events still awaiting verification are excluded from exported hours, and they accept automatically after 30 days. Re-running the same period later can therefore give different numbers. Clear the Verify queue before you export.
Who can do what — and why payroll usually needs two people

The three jobs in a payroll run sit at different permission levels, so the person who hits a wall often is not the person who can clear it.

  • Manager downloads the payroll file.
  • Admin sets the payroll format and the transaction codes, and adds workers.
  • Owner is the only role that can change the plan or upgrade.

Roles are cumulative — an owner can do all three. But a manager who is told the plan is full cannot fix it themselves; they need the account owner.

Plans are sized by headcount: Free 2 workers, Starter 3–10, Team 11–20, Business 21–30. A trial lifts the limit to 30 so you can load your real team while you evaluate. Above 30 workers there is no self-serve plan — talk to us.

“Your plan limit is full” on a payroll export

Werktyd refuses to build a payroll file when two things are true at once: your worker limit is full, and somebody was actually turned away at that limit recently. That combination means a person you employ may not be in Werktyd at all — and a payroll batch that is short one person imports cleanly and pays everybody else correctly, so nothing downstream will ever flag it.

To clear it: check that everyone you still employ appears under Workers, and ask the account owner to upgrade if someone is missing. Staff who left during the period stay in the file but not on that page — that is correct, and it is how their final pay reaches your payroll.

If the people on the file really are everyone who should be paid, add &allow_plan_limit=1 to the end of the export address to confirm and download it anyway. That choice is recorded against the export.

Simply being at your plan size is normal and never blocks an export — a Starter company with exactly ten staff is exactly where it should be. You may still see a note that you cannot add anyone else.

Privacy and worker choices

Face clock-in is optional. A worker may use a PIN without penalty. Read the worker notice or submit a data request.

Still stuck?

Tell us what you tried and what happened.

Send a support message