From attendance
to payslip
Famu has always known what you paid a worker. It has never known what you owed them. Those are different numbers, and the gap between them is the thing people argue about on a farm.
You worked it out in your head and typed the answer. Famu stored the answer and none of the working. Three weeks later Grace says you still owe her for two days — and nothing in the app can settle it.
The days are written down as they happen. The wage is derived from them. Now the number can be checked — by you, by Grace, by anyone reading the records a year later.
First: how is this person paid?
Everything below depends on the answer, and there are only two.
A flat figure agreed once — the same whether February is 28 days or March is 31. This is how most farm workers are paid, and it is what a new worker gets unless you say otherwise. Their attendance is still recorded, but it is a record: marking them absent never changes what they are paid.
Paid for the days actually worked. These are the rows the grid turns into money, so the days have to be marked. This is the seasonal hand, the picker, the person who came for a fortnight.
Set it from the pencil beside a worker's name on the Attendance tab. Piece work is paid on top of either.
Mark who was there
The only part that costs anyone effort — and only day-rate workers depend on it.
Each row is a worker, each column a day. Tapping a cell moves it on one step — present, half day, absent, blank — and saves on its own. There is no Save button on purpose: a screen full of unsaved taps is a screen of work lost when the phone sleeps in a shirt pocket.
Peter is salaried, and he is in the grid anyway. That is on purpose: you still want the answer to \u201cwas he here on the 14th?\u201d. Mark him absent all week and watch his payslip below — it does not move.
| Worker | Mon1 Sep | Tue2 Sep | Wed3 Sep | Thu4 Sep | Fri5 Sep | Sat6 Sep | Sun7 Sep | Days |
|---|
Change anything above and watch the payslips in step 2 move with it. The arithmetic on this page is the same code the app runs.
Not everyone is paid by the day
Some work is paid by how much was done, not how long it took. That is piece work, recorded on the same page — quantity × rate:
- Grace picked 48 kg then 61 kg of coffee cherry at 900/kg — 98,100
- Peter caught 120 birds for a sale at 200 each — 24,000
Press one button
Famu adds up what the month already recorded. You read it, then approve.
One payslip per worker, each on its own basis. Grace is on a day rate, so hers is the days off the grid times her rate. Peter is salaried, so his is his monthly figure \u2014 here a week of a thirty-day month, so 350,000 \u00d7 7\u204430. Piece work is added to both, and anything already handed over in the period comes off.
Peter would be on this run even with the grid completely blank. That is what a salary means, and it is the single most important thing on this page: a payroll feature that only paid people whose days were ticked would quietly skip most of the farm.
On Thursday you gave Grace 40,000 as an advance and recorded it on Worker Payments, as normal. It comes straight off what you owe her today.
| Worker | Basis | Days | Base pay | Piece | Earned | Already paid | Payable |
|---|---|---|---|---|---|---|---|
Adjustment is the one column you can type in, and it exists for what the app cannot know — a deduction for a broken panga, a bonus for a hard week. Days, rates and already-paid all come from records, which is exactly what makes the payslip checkable.
Approve, and it becomes money
The run stops being a calculation and becomes a record.
Approve & pay writes one Worker Payment per person owed something — categorised Salary, dated the end of the period, noted with the run it came from. Anyone owed nothing gets no row.
After that the run is frozen. It cannot be edited or deleted — not greyed out in the interface, refused by the database — because the money has left the farm. A draft you can throw away freely.
Worker Payments is unchanged and still where money lives. Approving just writes the rows you would have typed yourself.
“Already paid” means everything
Not only payments filed as Advance. If Grace's 40,000 had been tagged Salary or Bonus, it would still come off — money that reached her reached her. This is also why re-running the same week after approving pays 0: the run's own payment now sits inside the period and is netted off by the same rule. No special case.
You never record a wage in payroll
You record work in attendance. Payroll is a calculator with a memory, not a place you enter money. That inversion is the thing most people have to hear twice.
An absence never docks a salary
Famu will not quietly reduce a figure you agreed with someone. An unmarked day is far more often a supervisor who forgot the grid than a worker who stayed home, so absences are shown on the payslip and the deduction is an Adjust — something a person decided, and can be seen to have decided.
Raising a rate doesn't rewrite the past
Every day keeps the rate it was marked at. Give Grace a raise in March and February's payslips still read 10,000 — because that is what February actually cost.
Approving is a separate permission
A supervisor can mark the crew in and build the draft without being able to turn it into money. That stays with an admin — the same line sales and expenses already draw.
If nobody taps the grid, half of this stops working
The day-rate half rests on step 1
Salaried workers are safe: their payslips come out right whether or not anybody touches the grid. Day-rate workers are not. A run over an empty grid pays them nothing, so for that half the real question is not "is the payroll page good" — it is will a supervisor actually mark attendance.
Everything about the grid is shaped by that risk: one screen for the whole crew, a tap instead of a form, saving instantly, no Save button to forget. If it turns out farms still won't do it, the day-rate path is the part that suffers — and that is worth finding out early rather than defending later.
Earns its keep for
- Day-rate and casual labour — most smallholder hiring in Uganda and Kenya
- Crews that change week to week
- Piece-rate work: picking, weeding, catching
- Anywhere advances are handed out mid-month
- Any farm where “how much am I owed?” gets asked
Does little for
- A flat monthly salary that never varies
- A farm with one permanent worker and no advances
- Anyone who won't record days as they happen