Worklog← All help
Payroll & HR

Run a pay run (payroll)

Use the 5-step Pay Run wizard to pay your whole team in one run — Worklog works out UIF, PAYE and SDL per person and makes each one's payslip.

What a pay run does

A pay run is how you pay your workers for a period. You tick everyone you are paying, set the period once, check each person's earnings and deductions, and Worklog works out the take-home pay for every one of them. Each person gets their own payslip you can share, usually on WhatsApp.

One run covers any number of people — paying a crew of six is one walk through the wizard, not six. The Pay Run tool opens on a list of your past runs; tap + New to start one. The wizard moves through five steps: Employees, Period, Earnings, Deductions and Summary, and a little bar at the top shows which step you are on. Behind the scenes each person still gets their own pay run record and payslip number, so everything else — the EMP201, voiding, the payroll reports — works per person exactly as before. Under the list of past runs, 📄 PDF and 📊 CSV / Excel print them as you have them — pay date, payslip, person, period, status, gross, PAYE, the employee's UIF, any advance taken off and net — with a total line that never counts a rejected run.

Before you start

  • Add the person in your Staff Register first. If nobody is registered, step 1 shows a link that says Add them in Staff Register.
  • Pay Run is part of the Team and Complete plans. It is not available on the Solo plan, so if you are on Solo the app will prompt you to upgrade before you can run payroll.
  • Make sure the worker's pay type and rate (hourly, daily or monthly) are set on their staff record, because the wizard uses those to work out the money.

Step 1 — Tick everyone you are paying

  1. Open Pay Run and tap + New.
  2. Under Who are you paying?, tap each person going on this run — a tick appears on everyone you choose. Each card shows their rate, when they were last paid, and any outstanding loan.
  3. Paying the whole team? Tap Select all (it skips anyone marked as left). Clear unticks everyone.
  4. Contractors show a Contractor tag and a No UIF or PAYE note, which means no UIF or PAYE comes off for them.
  5. Tap Next → Period. Everyone on the run shares one period, and each person gets their own payslip.

What Worklog pulls in for you

When you tick a worker, Worklog pulls their standing setup onto this run so you do not have to retype it. Everything it fills in stays editable — changing it here only affects this one pay run, never their saved setup.

  • Monthly allowance: if you set a recurring allowance on their staff record (say a travel allowance), it is added to the earnings automatically with its description. A note shows it was pulled from their setup, so you know you can edit or clear it for this run only. On a weekly or fortnightly run it is the run's share of the month: 12 ÷ 52 for a week, 12 ÷ 26 for a fortnight.
  • Advance repayment: if they have an outstanding advance with an agreed amount to repay each run, that amount is pre-filled into the loan deduction. It is never more than the balance still owed, so the final repayment is capped to clear the advance exactly. It is also never more than that run pays after UIF, PAYE and any other deduction, so on a short month it takes what is left and the net pay never goes below R0.
💡Each person's figures live on their own card, so nobody's allowance or deduction ever leaks onto someone else. If you untick someone and tick them again in the same run, anything you had already edited for them is still there.

Step 2 — Set the period

  1. A blue bar at the top lists everyone on the run, so you can check you ticked the right people.
  2. Under Period type, choose Weekly, Fortnightly or Monthly. The whole run shares this one period.
  3. Set the Pay date using the date picker.
  4. Under Paid from, check the account the wages leave from — it starts on your default account. The run's full cost comes off that account's balance on pay day.
  5. Check the Days are counted over this stretch dates. They follow the pay date on their own (the calendar month, 7 days or 14 days it falls in) — change them if your period runs differently, say the 26th to the 25th, and Reset puts them back.
  6. Tap Next → Earnings.
💡If someone you ticked was already paid on a date inside this period, an amber note says so, because running it again would pay them twice for the same days. Carry on only if this is a correction; otherwise move the period forward.
⚠️What lands on the Paid from account matches your bank statement line by line: each person's NET take-home is booked as its own wage payment, and the PAYE, UIF and SDL are booked as separate SARS lines whose total is exactly your EMP201 payment for the month. On the Profit & Loss each one lands under its own heading: net pay and anything withheld and kept (an advance repayment) under Salaries & wages, then PAYE, UIF (both halves together) and SDL on the three lines the EMP201 declares. Add those four together and you have your full gross wage cost — the Wage Bill report states it outright if you would rather read one number. Because those SARS lines are already on the books, don't log the EMP201 payment to SARS as another expense — and when you import your bank statement or a bank file, the salary lines are left out for you so the wages can't be counted twice (a statement shows them unticked; a bank file can't import them, unless the line names SARS or a tax: then it comes in unticked, with a box. The same goes for the EMP201 payment: a bank file can't import a line that says EMP201, PAYE, UIF or SDL at the month's amount, and a statement shows it unticked). A login without Pay Run gets any line that says SARS, EMP201, PAYE, UIF or SDL unticked too, in both imports, with a note, when it falls from the first of a month with pay-run bookings to 14 days after that month's EMP201 is due (the 7th of the next month, or the business day before if that is a weekend or holiday), because the tax incentive can't be known: tick it only if it is something else, such as a VAT201 or provisional tax. A login with Pay Run but no Staff register can't import a statement while there are pay runs, for the same reason. One more quiet rule: an advance repayment withheld from wages is bookkeeping, not a bank movement, so it never appears in Banking — the net pay you see there is already after the repayment, exactly like the bank statement

Step 3 — Enter the earnings

Each person on the run has their own card. Tap a name to open their card (the first one starts open); the closed cards still show the person's days and gross, so you can see the whole run at a glance. A dark bar at the bottom keeps the Total gross for everyone.

  1. On each person's card, check Days paid (Hours paid for someone on an hourly rate). Worklog works it out from the period and their days a week, pays anyone who started or left during the period only for their own days, and shows how it got there. Type over it if this period was different — the ↩︎ Use button puts the calculated number back.
  2. If they did overtime or an extra shift, tap + Overtime / extra days / public holiday. Enter How much, choose whether it is Counted in Hours or Whole days, and pick the Rate: 1.5× — Standard overtime, 2× — Public holiday / Sunday worked, or 1× — Normal rate (extra shift). You can also type the overtime amount yourself.
  3. If the worker has a monthly allowance on their staff record, it is already filled in under + Allowance — adjust or clear it for this run if you need to. For a one-off extra like travel or a meal, tap + Allowance and enter the Amount (R) and a Description. There is one allowance line per person, so if their monthly allowance is already there, add the extra to that amount. A bonus earned in this pay period goes in its own box, Bonus earned this pay period (R): it is added to their salary and taxed with it by the weekly, fortnightly or monthly table, as SARS's employer guide says, and the IRP5 shows it with the salary (3601).
  4. Paying a travel allowance? Type it in Travel allowance (R) under + Allowance, not in the allowance box above it, which is taxed in full. Only 80% of it counts for PAYE (Fourth Schedule, paragraph 1, remuneration), or 20% if you are satisfied that at least 80% of their travel is for business: tick the box that says so. The same share is what UIF is worked on and what the ETI counts (UIF Contributions Act section 1, ETI Act section 1). The whole amount is still in their gross pay, and the IRP5 shows it under 3701. If the travel allowance is on their Staff Register record, mark it there as a travel allowance and the Pay Run puts it on the Travel line for you.
  5. Paying a lump sum that is not for this pay period? SARS's employer guide lists an annual bonus, an incentive bonus, leave pay on resignation, encashment of leave, a merit award and backdated pay from an earlier tax year. Type it in Annual payment (R). It is taxed by the annual-payment method (Fourth Schedule, paragraph 9): the tax on a year of their pay with it, less the tax on a year without it. Only that period's own medical aid tax credit is used against it. Paid on its own run after someone's last salary (leave pay on resignation), it is taxed on their pay for the year so far, scaled up to a year (SARS's employer guide: total pay x pay periods in the year / pay periods worked). That run takes no medical aid tax credit unless you tick that the medical scheme fees were paid for the month, because the credit is for each month the fees are paid for (Income Tax Act, section 6A(2)(b)). The IRP5 shows it under 3605, as SARS's employer guide says.
  6. Work through each card, check the Total gross bar, then tap Next → Deductions.

If your business pays from the attendance register (Business details, Pay from the attendance register), each person's card shows the register days this run pays and whether every one is confirmed. The days run from where their last pay run stopped to the end of the period, or, while the period is still running, to what is confirmed so far; the rest go on the next run. Worklog works out their pay from those days: hours or days worked, paid leave and public holidays on their days, absence and unpaid leave left out, overtime at the rate recorded, and Sunday and public holiday hours as the BCEA asks (double, or one and a half times where Sundays are one of their days, with the minimums for a short shift). Below the BCEA earnings threshold, a day worked for less than four hours is paid as four hours' work on that day (section 9A): the card says which days and what it added, and the payslip says so beside the hours worked. The minimums are a day's: two shifts counted onto the same Sunday or holiday (a night shift that runs into it, and its own begun within 24 hours of it) are paid as one day. A daily wage's hour is that day's wage over that day's hours, so an hour of overtime on a 5-hour Saturday is worth more than one on a 9-hour weekday. A monthly salary whose contract states it includes their usual Sundays at the rate the BCEA sets (tick it on the Staff Register) pays those Sundays' ordinary hours at one and a half times, and Worklog adds only what the Act owes beyond that: the hours past their day, at one and a half times, or, for a second, separate short shift counted onto the same Sunday, the day's wage the Act sets as its minimum, less what the salary still covers. Someone whose night-work agreement on the Staff Register is paid by an allowance gets it on the register's night hours (after 18:00 or before 06:00), or for each shift with any, at the amount agreed: the same amount on a Sunday or public holiday, never doubled, as its own line inside gross (BCEA section 17(2)). The card warns of night hours worked by someone with no agreement recorded, and of worked days with no times, which count no night work; neither stops the run. These come from the register, so they can't be typed over here: to change a day, change it on the Attendance screen and confirm the month again.

💡Someone whose days aren't all confirmed holds up the run until they are. If the register wasn't kept for them this time, tick Pay … without the register this time and say why: they are paid the old way, and the reason stays on the pay run and the payslip. Someone who never keeps a time record, such as a manager, can be marked Paid without the attendance register on the Staff Register instead.
💡Pick 2× — Public holiday / Sunday worked when the day was a public holiday or a Sunday. Under the BCEA, work on a public holiday or Sunday is paid at double the normal rate.

Step 4 — Deductions

Same cards, one per person — the closed ones now show each person's net pay, and the dark bar keeps the Total net pay for the run. The statutory deductions are worked out for you — you do not type them in. Under Statutory (auto-calculated) you will see the employee's UIF, and PAYE if the wage is above the monthly threshold. If it is below, Worklog says there is no PAYE and shows the threshold amount. PAYE uses the tax tables for the year of the pay date, and the age rebates for the age the employee will be at the end of that tax year, read from their ID number or date of birth — so staff aged 65 or 75 pay less, or none, as SARS's own tables work it out. For someone with People on their medical aid filled in, the medical aid tax credit comes off too, and the card says how much. For a contractor it shows no UIF and no PAYE, because they handle their own.

  1. If a worker has an outstanding advance, an Outstanding advance box appears on their card showing what is still owed. If you agreed a set repayment each pay run, that amount is already filled in for you (never more than the balance) — keep it, change it, tap Deduct all, or None this time. A repayment only ever comes out of what is left of their pay after UIF, PAYE and any other deduction: ask for more and the card says how much can come off, and Deduct all takes exactly that.
  2. If they took leave this period that is not in the Leave tool yet, tap Leave not yet recorded? and pick the leave type and number of days. Paid leave (annual, sick, family) does not change the wage — it is only recorded against their balance. Unpaid leave does reduce the pay: the days come off at the daily rate. Leave already recorded in the Leave tool for this period is listed on the card and counted for you, never recorded twice. Maternity and parental leave from the Leave tool come off the days paid, like unpaid leave, because the employee claims them from UIF — if your business pays them, type the full days paid on the Earnings step.
  3. To keep money back from pay, tap − Other deduction, enter the amount and a description, and say who it is for. Paid over to someone else (a union fee, a medical aid or pension fund, a court order): your books show it as owed, under Deductions from pay to pay over, until you pay it over: file that payment as "Pay deductions paid over (union, fund, court order)", which is not a second cost. Paying a fund the employee's share and the business's own in one payment? Split it: the business's share is a cost. A pension or medical aid fund must have it within 7 days (BCEA section 34A). Kept by the business (a uniform, tools, loss or damage, a fine, with their written agreement — BCEA section 34): it is no wage cost and nothing is owed. It can't be more than what is left of their pay after UIF and PAYE — if it is, their net pay turns red with a note saying by how much, and the run won't go on to the Summary or save until you lower it. Net pay can't be below R0.
  4. A pension or provident fund contribution: after you choose Paid over to someone else, answer Is it a pension or provident fund contribution? and say which: the card starts on the answer you gave for that person last time. It comes off their pay before PAYE is worked out, up to the most section 11F allows (27,5% of the pay for the period, with any annual payment paid in it, and no more than the share of the year's maximum for the part of the year paid so far, less what was used). SDL is worked on the pay after it, but UIF is not: UIF is on the pay before it. In a month with an annual payment, what the contribution comes to above the usual one (the one on their last ordinary run) comes off the annual payment, not off the year's regular pay. With no usual contribution on record, the contribution is split in proportion to the regular pay and the annual payment. The limits run through the year and across a period's runs: section 11F's yearly maximum is used by the part of the year paid so far, and the 27,5% is on the whole period's pay. The IRP5 shows it under 4001 (pension) or 4003 (provident).
  5. A second pay run for the same week or fortnight (a forgotten bonus, a top-up) is taxed with that week's or fortnight's whole pay, less the PAYE already taken in it, the same way a second monthly run is. Worklog asks whether it is a top-up or the next period's pay paid early. UIF is different: it is worked on the month the pay is paid in (the pay date's month), whatever the pay frequency (Unemployment Insurance Contributions Act, section 6). A salary for October paid on 2 November counts in November. The month's runs together pay 1% of the month's pay up to the monthly ceiling, each side, so a weekly wage is not capped on a week's share, and a top-up after the ceiling was reached takes none. If a run of the month is voided or made again for less, the month's next run takes what the month is short. If a void leaves the month over what it owes, the employer may not deduct more than is due (section 7(3)(a)) and must refund to the employee what was deducted from them and overpaid (section 7(5)). The warning when you void gives one figure for each side, worked on what was actually deducted or paid, and says how much of the employee's is a refund. What the business paid of their share itself is the business's own, not a refund. You void and make again the run that took too much, or refund the excess. If a run's pay can't carry the employee's share, the business pays the rest (section 7(4)) and it still shows on the UIF return.
  6. Work through each card, then tap Next → Summary.

Step 5 — Check, save and share

With more than one person on the run, the Summary opens with a This pay run card: total gross wages, the PAYE and UIF coming off, any advance repayments, and the Total to pay out. Under it, every person gets their own Payslip preview — basic pay, overtime and allowances, deductions, and the big NET PAY figure — which stays editable until that person's run is saved. A box titled To pay SARS by the 7th — EMP201 shows the PAYE withheld, both halves of UIF, SDL if you are registered for it, and the total for the whole run.

  1. Check each person's payslip preview and the SARS box.
  2. Tap Save Pay Run: everyone on the run is saved as Prepared, one after the other — the button counts as it goes. If it stops partway (say the signal drops), whoever saved stays saved; tap it again and it finishes the rest without paying anyone twice. A blue banner keeps count: 2 of 3 pay runs saved.
  3. If you have approval rights, you can instead tap Mark Pay Run as approved — it saves anyone not yet saved and approves the whole run in one go, including people already saved as prepared. If you do not have approval rights, the runs wait as Prepared: whoever does sees them under Needs you today on the dashboard and at the top of the Pay Run list, and taps a prepared run there to approve it — or reject it with a reason. A rejected run comes off the books entirely (the wage expense is removed, and any advance repayment or leave goes back); it stays on the Pay Run list marked rejected, with the reason inside, until whoever prepared it dismisses it and runs a corrected one with + New.
  4. Once a person's run is approved, 📄 PDF and 📊 CSV / Excel appear under their payslip — a run saved as Prepared waits for the approval first. On a phone, 📄 PDF opens your share menu with the payslip attached, usually for WhatsApp; on a computer it downloads.
  5. Once everyone is saved, a Pay run breakdown card appears: one document for the whole run, listing each person's net pay and banking details from the Staff Register, plus the SARS total — made for loading the payments at your bank. Download it as a PDF or CSV, or share it.
  6. Tap Done — back to pay runs.
💡Every person's payslip gets its own number in the form PS-YYYY-NNNN (for example PS-2026-0001) the moment their run is saved, and it carries onto the PDF — so each payslip is uniquely numbered for your records.
💡The PAYE, both halves of UIF, and SDL are what you pay over to SARS on the EMP201 by the 7th. Your saved pay runs feed straight into it.
⚠️Worklog keeps the records and does the sums, but it is not a tax or labour adviser. For your own situation, or if the numbers look off, check with SARS or a registered accountant or tax practitioner.

Fix a pay run that's wrong

You can't edit a saved pay run. To correct one, void it and run it again.

  1. Open Pay Run and tap the run you want to fix.
  2. Tap 🗑️ Made a mistake? Void this pay run, read what it will reverse, then tap Confirm — void this pay run.
  3. Tap + New and run that person's pay again with the right figures.
💡Voiding takes back everything the run booked: the wages, PAYE, UIF and SDL, any advance repayment (their balance goes back up) and any leave on the run (paid leave goes back into their balance). Before you confirm, it says if the person's UIF for the month will be short or over what the month owes, and by how much. It can't be undone, and it needs approval rights on Pay Run. The ✕ beside a run in the list voids it too — a prepared run as well. To turn down a prepared run with a reason instead, open it and tap ✕ Not approving it? Reject this pay run — see Step 5.
Related guides
Add staff to your register →Do your EMP201 →Record a staff advance or loan →Manage staff leave →Payroll Reports →IRP5 / IT3(a) figures for each employee →
Still stuck? Open the in-app help assistant, or email us at hello@worklogsolutions.co.za.
← Back to the Help Centre