HR Setup
The Human Resources module tracks who works at the clinic, when they are supposed to be there, when they actually were, and what they get paid. It is built in three layers, and this page is the first one: the things you set up once and rarely touch again.
Get these four right and the daily screens mostly run themselves.
WARNING
Human Resources is off by default and marked BETA. Someone with the Settings → Edit permission switches it on in Site Settings; until then none of these screens appear in the menu. Each screen is separately permission-gated too — see the Human Resources group in Staff and Roles.
Where to Find It
Click an address to open that screen on your own clinic. The first click asks which clinic you are, then remembers it. Addresses holding a {id} need a specific record, so they are shown but not linked.
| Screen | Address |
|---|---|
| Departments | /all-department |
| New department | /new-department |
| Department details | /view-department/{id} |
| Shifts | /all-shift |
| New shift | /new-shift |
| Shift details | /view-shift/{id} |
| Leave types | /all-leave-type |
| New leave type | /new-leave-type |
| Salary components | /all-salary-component |
| New salary component | /new-salary-component |
The Order to Do This In
| Step | Why it comes first |
|---|---|
| 1. Departments | Nothing depends on them, but they group people from day one |
| 2. Shifts | Attendance is meaningless without them — a person with no shift produces clock logs the system cannot judge |
| 3. Leave types | Needed before anyone can request leave |
| 4. Salary components | Needed before you write the first contract |
Departments
Human Resources → Departments. A department is a name and a manager, no more.
| Field | Notes |
|---|---|
| Name * | English name |
| Arabic name | Shown when the interface is Arabic |
| Manager | Any employee |
People are attached to a department from their own staff record, not from here — open the employee in Staff and Roles and pick the department in the Human Resources block. The department page then lists everyone in it.
Shifts
Human Resources → Shifts. This is the most important screen in the module: a shift is the rule the system judges every clock log against. Late, early leave, overtime and absent all come from here.
Standard or Advanced
| Type | What it means |
|---|---|
| Standard | One set of times for every working day. Tick which days are work days, and they all share the same hours |
| Advanced | Every day gets its own times — a short Thursday, a late Saturday, whatever the clinic actually does |
Pick the type first; the day rows below change to match. Apply to all copies one day's times across the rest, which is the fast way to build an advanced shift with one exception.
The times
| Field | What it decides |
|---|---|
| On duty | When work starts. Lateness is measured from here |
| Off duty | When work ends. Early leave is measured from here |
| Sign-in start / Sign-in end | The window in which arriving is accepted. A punch outside it is marked invalid |
| Sign-out start / Sign-out end | The same window for leaving |
| Lateness grace period | Minutes forgiven after on-duty. Default 15 |
| Late counted from | After on duty or after on duty plus grace — the second is the default and the friendlier one |
| Work day | Off means the day is a day off; nobody is expected |
| Calculate on off days | Whether hours are still counted on a day off, for people who come in anyway |
Assign the employees
A shift does nothing until people are attached to it: open the shift and use Assign employees.
WARNING
This is the single most common cause of confused attendance. A person with no shift still produces clock logs, but every one comes back invalid — no shift, and their day never becomes present. If somebody's attendance looks empty, check their shift first.
Leave Types
Human Resources → Leave Types. The kinds of leave your clinic recognises — annual, sick, unpaid, and so on.
| Field | Notes |
|---|---|
| Name * | English name |
| Arabic name | Shown when the interface is Arabic |
| Days per year | The allowance, for your own reference |
| Paid leave | Whether the days are paid |
Keep the list short and honest — three or four types cover most clinics. Every leave request has to pick one, so a type you delete cannot be un-picked from history.
Salary Components
Human Resources → Salary Components. The named pieces a salary is built from: transport allowance, housing, insurance deduction, late penalty.
| Field | Notes |
|---|---|
| Name / Arabic name * | What it is called on the payslip |
| Type | Allowance adds to the salary · Deduction takes away |
| Calculation | Fixed amount or percentage |
| Default amount | Used when the calculation is fixed |
| Default percentage | Used when it is a percentage |
| Taxable | Marks the component as taxable |
| Default | Offered automatically when building a new contract |
Switching the calculation between fixed and percentage clears the other value — only the one that applies is stored.
TIP
Mark the components that nearly everyone gets as Default. Contracts then start out mostly filled, and you only edit the exceptions.
What Comes Next
| Once this is set up | Go to |
|---|---|
| People can clock in, and their days can be judged | Attendance and Leave |
| You can write contracts and run a month's payroll | Contracts and Payroll |