HR and payroll
Employees, monthly payroll with PAYE, NSSF, SDL, WCF and HESLB worked out for you, payslips, salary advances, per diem, leave, staff attendance by phone with GPS or QR, a shift roster, and final dues for leavers.
Getting started
HR and payroll comes with the Business and Professional plans. On other plans your account owner adds it from Settings, then Modules. Leave and final dues follow the Employment and Labour Relations Act (Cap. 366), and payroll uses current TRA, NSSF, WCF and HESLB rates.
- Open Settings, then Positions and departments, and add the positions and departments you use.
- Open HR and payroll, then Employees, and add your staff. For many staff at once, press Import and upload a spreadsheet. Name, Hire date, Basic salary and TIN are required.
- If you have leave already taken before Mifumo, open Leave, then Balances, and import opening leave balances.
- Open Settings, then Payroll GL accounts, if you want payroll to post to accounts other than the standard ones.
- To track attendance, open Attendance, add your Sites, then give people Shifts there.
- Open Payroll and draft your first month.
Adding and editing records needs a role that can record documents. Posting payroll, approving leave, advances, per diem and attendance needs someone who can approve. Nobody approves their own salary change or attendance.
How to
Add an employee
- Open HR and payroll, then Employees, and press the + button (Add employee).
- Under Employment, fill in Full name, Employee no., Hire date, Position, Department and Contract type. For a fixed term, type the Contract length (years) to fill in the end date, and add Probation ends if it applies.
- Under Compensation structure, choose Monthly salary, Hourly rate or Per-shift rate and type the pay. Add any Fixed allowances (per month), such as housing or transport. They are taxed with basic pay.
- Under Pay and deductions, tick what applies: NSSF member, Tanzania resident for tax, HESLB loan beneficiary and Gets overtime.
- Under Statutory numbers and contacts, add TIN, NSSF membership no., NIDA no., HESLB / form four index no., phone, email, Bank and Account / wallet no.
- Press Save.
After the first save, pay can only change through a salary change, so someone else always approves it.
Change an employee's salary
- Open the employee and go to Salary changes.
- Type the new pay (or a new pay type), the Effective from date and a Reason, such as an annual increment.
- Press Propose change.
- Someone else who can approve opens the employee and presses Approve or Reject. The change takes effect on its date.
A change to bank details asked for by the employee also needs approval. Check bank details with the employee directly before approving.
Run the monthly payroll
- Open HR and payroll, then Payroll. Under Start a payroll, choose the Month and Posting date and press Draft payroll.
- Mifumo adds a line per employee. Pay is pro-rated for joiners and leavers, approved leave fills Unpaid / half days, and advance recoveries are filled in.
- Type OT hours, Bonus, Advance and Other deductions where needed.
- Press Save draft to recalculate without posting.
- Check the totals: Gross pay, Net to staff, PAYE · NSSF and Total cost to business.
- Press Recalculate and post. If your company needs an approver, press Recalculate and submit for approval and a finance manager posts it from Mentions and approvals.
How the figures are worked out:
- PAYE, residents: on gross less employee NSSF, at 0% up to TSh 270,000, 8% to 520,000, 20% to 760,000, 25% to 1,000,000 and 30% above. Non-residents pay 15% flat.
- NSSF: 10% from the employee and 10% from the employer, for NSSF members.
- WCF: 0.5% of gross, paid by the employer.
- SDL: 3.5% of gross, only when 10 or more people are employed that month.
- HESLB: 15% of basic for loan beneficiaries.
- Overtime: 1.5 times basic ÷ 195 per hour, or 1.5 times the hourly rate for hourly and per-shift staff.
- A day's pay is basic ÷ 30. Unpaid days take off a full day, half-pay sick days half a day.
To change a posted payroll, use Reopen this payroll to change it and give a reason. The posting is reversed.
Import overtime and bonuses for many staff
- Open a draft payroll.
- Under Overtime for many staff at once?, press Export to download the payroll's sheet.
- Fill in overtime hours, bonuses, unpaid and half-pay days, advance recovered and other deductions. Leave a cell blank to keep its value, or enter 0 to clear it.
- Press Import and upload the file. Rows match on Employee no., or on Name when there is no number.
- Check the preview and save. The payroll recalculates as if you had typed the values in.
Someone on several rows (one per week, say) gets the total of their rows.
Pay salaries and statutory deductions
- Open a posted payroll and go to Net pay.
- Choose Paid from, the Date and a Reference such as the bank batch number, then press Record salaries paid.
- Under Statutory payments, see what is owed, to whom and when: PAYE and SDL to TRA by the 7th of the following month, NSSF and WCF by the last day of the following month, HESLB as HESLB directs.
- To record a payment, choose what you are paying under Pay, the Amount, From account, Date and Control / receipt no., then press Record payment.
Press Export on the payroll for the Payroll register, PAYE schedule, NSSF contributions, WCF contributions, HESLB schedule and Bank transfer list, plus any bank or return file templates you have set up.
Print payslips
- Open the payroll and press All payslips, or press Payslip on one employee's line.
- Use Print / save as PDF.
Staff invited to self-service see their own payslips under My HR (payslips, leave). To invite someone, open the employee and press Invite to self-service.
HR and payroll, Employees, Self-service access shows every employee's access in one list: who has signed in, who was invited and hasn't set a password yet, and who has no access. Invite, resend an invitation or remove access from there. Employees who only use self-service are not app users, so they don't appear in Settings, Users; give someone a role in the books from Users instead. Someone who is both shows in both places, with a link between them.
When you record that someone has left, their self-service login stops on the leaving date: at once if the date has come, otherwise early that morning. A login left with no company is switched off, and their payslips and history stay. If they also had a working role here (Accountant, say), HR doesn't remove it: Users shows them as left so someone who manages users can set their role to No access. To give self-service back after bringing someone back, switch their login on in Users and invite them to self-service again.
Give a salary advance
- Open HR and payroll, then Salary advances.
- Under Request an advance for an employee, choose the employee, type the Amount, Recover per month (leave blank to recover it all from the next payroll) and the Reason.
- Press Send for approval. Staff can also ask for an advance themselves from My HR.
- An approver presses Approve or Decline.
- An accountant chooses Paid from and presses Pay advance.
The advance is then taken back through payroll each month until it is cleared. You can also give an advance straight from the employee page with Give advance.
Pay per diem for a trip
- Open HR and payroll, then Per diem, and press New per diem request.
- Type the Destination, Purpose of the trip, Departure and Return dates.
- Add each person. Pick staff from the payroll, or type a name for someone not on payroll and tick Save to the list.
- Check each person's Days and Daily rate. Half days are allowed.
- Press Submit for approval.
- A director or the account owner presses Approve, or Send back with a reason.
- An accountant chooses the bank account under Pay from bank account, the Payment date and a Reference, and presses Pay and post.
Payment posts each person's amount to the per diem product's expense account.
Record or approve leave
- Open HR and payroll, then Leave, and go to Record leave.
- Choose the Employee, the leave Type, the First day and Last day, and add notes.
- If you can approve, choose Approved, or Request (approve later) to leave it pending, and press Save. If you cannot approve, press Send request.
- To decide on a request, press Approve or Reject on its row.
- Open Balances to see each person's annual, sick, maternity, paternity and compassionate leave.
For maternity, tick More than one child or Child died within a year when they apply. If the baby was born early, tick Baby born early and enter the Birth date and the date the pregnancy Would have reached 40 weeks; those days are added to her maternity leave. For paternity, Baby born early gives 7 days instead of 3.
Entitlements: annual 28 days a year; sick 126 days in 36 months (63 full pay, 63 half pay); maternity 84 or 100 days, plus the days until 40 weeks for a premature birth, for up to 4 terms with you; paternity 3 days, or 7 for a premature birth; compassionate 4 days. There is no paid leave before 6 months' service. Approved unpaid and half-pay days come off pay in the next payroll, and so do maternity days past the entitlement or in a fifth term.
Set up attendance sites and shifts
- Open HR and payroll, then Attendance, and press New site.
- Type a Name, choose the Kind and paste coordinates or a Google Maps link into Location, or stand at the site and use your location.
- Set the Radius big enough for the whole yard or building, plus GPS error. Link the site to a project or customer if you like. Press Save site.
- Under Ways to clock in here, tick how people may clock in at the site: by location, the changing QR code on a screen, or the printed poster. A clocking another way still saves but goes to Review.
- On the site, open the QR screen on a tablet at the site (the code changes every 30 seconds), or print the poster. A scan of the poster counts only with a location inside the site or on the site's work Wi-Fi, so a photo of it is no use elsewhere.
- Under Work Wi-Fi, press Trust next to the shop's or office's network once people have clocked in there. Phones on it are then verified indoors even when GPS is rough. Each access point is matched by its own address, so a phone hotspot with the same name does not count.
- Open the Shifts tab and press New shift. Tick everyone who works it, choose the Type (Fixed shift, Site visit or Remote), the Site, the weekdays and the start and end times. Press Save shift.
To move someone for the rest of today, press Move on their shift and give a reason. Their phone shows the new site next time it opens.
Clock in and out
- Staff install the Mifumo app, open My HR (payslips, leave) in Mifumo, press Connect my phone and scan the code.
- At work, they hold Clock in for a second. The location is read only at that moment. They hold Clock out when they leave. Clocking out before the shift ends asks first, and Undo takes back a clocking for 10 seconds.
- With location off on the phone, the button becomes Scan to clock in: they scan the QR screen or poster at the site. The phone reminds anyone not clocked in 10 minutes after their shift starts, and anyone still clocked in 30 minutes after it ends. Change the minutes, or set 0 to turn a reminder off, under Attendance settings → More rules. The first reminder asks the person to allow notifications.
- Without the app, staff can clock in and out on the My attendance page in a browser.
- Forgot to clock? On My attendance, staff use Ask for a correction, and a supervisor decides.
A clocking is verified when it is inside the site's circle during the shift window, or comes with a current site QR code. Remote work and anything outside the rules goes to Review. Clock times come from the server, not the phone.
Enter hours by hand or from a file
- Open Attendance, then Enter hours, and pick the day.
- For each person, type the In and Out times, or just the hours worked. Use Fill empty rows to give everyone the same times, then change the few who differ.
- Choose a site if they all worked at one, add a note such as where the times came from, and press Save.
- To bring in a paper register or a time clock's file, press Import, download the template, fill in one row per stretch of work (Employee no. or Name, Date, Clock in and Clock out, or Hours worked) and upload it. Check the preview and press Import.
- The days then wait on Timesheets for approval, like days clocked on the app.
Saving a day again replaces what was entered for it; empty a row to clear it. Days clocked on the app, or already approved, can't be typed over, and nobody enters their own attendance.
Review clockings and approve timesheets
- Open Attendance, then Review. For each clocking, check the distance from the site, GPS accuracy and the phone clock, then press Approve or Reject. Rejecting needs a reason the employee will see.
- To add a missed clocking, use Enter a missed clocking and press Record correction.
- Open Timesheets, tick people and press Approve selected. A day with clockings waiting for review or no clock out cannot be approved.
- With a draft payroll open for the month, press Send overtime to payroll, then Add to payroll. Each day goes once.
- For sites linked to a project, press Log this week's approved hours at project sites.
Plan a shift roster
- Open Attendance, then Roster, and press New shift under Shift templates to make a morning, evening or night shift. Set Starts, Ends, Unpaid break, Rate per shift, Night or weekend multiplier and Flat allowance per shift as needed.
- Drag a shift onto a day for a person, or pick one and click the days. Use Bulk assign or Copy previous week to fill the grid faster.
- Check the Estimated labour cost at the bottom. It leaves out NSSF, WCF and SDL.
- After the shifts, open Attendance vs roster to see late arrivals, early departures and missed shifts.
- Press Verify & approve for payroll. This locks the paid hours, overtime and shift pay, which payroll then takes.
A rostered shift may end the next morning. Hourly staff are paid from approved attendance, and per-shift staff from approved rostered shifts.
Work out final dues when someone leaves
- Open the employee. The If this employee leaves panel shows leave pay, notice pay and severance as if the employer ended the employment.
- Choose the Last day and the Reason: Resigned, Contract ended, Terminated (fair reason), Dismissed for misconduct, Retrenchment / redundancy, Retired or Deceased.
- Tick Pay notice instead of it being worked if they were terminated or retrenched and will not work their notice.
- Press Mark as left.
- Draft the payroll for that month. The final dues are filled in on their line, where you can change them before posting.
Severance is 7 days' basic wage per completed year, up to 10 years, and is not due on resignation or misconduct. Untaken leave is paid at one day per 13 days worked in the current cycle, less leave taken. Leave pay and notice pay carry PAYE, NSSF, WCF and SDL; severance carries PAYE only. These are estimates under the Act, so confirm with your advocate before paying. Press Reinstate as active to undo.
Recruit for a job
- Open HR and payroll, then Recruitment, and press the + button (New job opening).
- Type the Job title, Department, Where, Contract type, How many people and the salary range, then press Save.
- On the job, open Add an applicant and type their Name, Phone, Email, where they Heard about the job from and the Salary they expect. Press Add.
- On the applicant's page, attach their CV and certificates under Attachments.
- As they move on, choose the next stage and press Move: Screening, Interview, Offer, or Not taken (with the reason).
- Under Add a note, record each interview, phone call or reference check.
Take job applications online
- Open the job in Recruitment and press Take applications online under Apply online.
- Press Copy link or Share on WhatsApp, and post the link wherever you advertise the job.
- People open the link, fill in the application form, attach their CV and photo, and press Send my application. No account is needed.
- Each application lands on the job under New, marked Online, with their answers, CV and photo on the applicant's page. Whoever added the job gets a notification.
The link stops taking applications when you press Stop taking applications online, when the job is no longer Open, or after its Closes date. Careers page on Recruitment lists every job taking applications.
Change the application form
- Open Recruitment and press Application form. Every job's link uses this one form.
- Rename a field by typing a new Name on the form, add a Hint under it, tick Required, or untick Show to take it off the form. Change Order to move fields up or down. Press Save the form.
- To ask something of your own, type it under Add a field, choose the Kind (short or long answer, number, date, a list to choose from, yes or no, a file or a photo), and press Add.
Full name is always asked, and the form keeps the mobile number or the email so you can reach people. Removing your own field keeps the answers people already gave.
Hire an applicant
- Open the applicant and fill in Salary offered and Can start on under Details, then press Save.
- Move them to Offer when you make the offer. Under The offer, press Accepted: hire as a new employee, or Declined with the reason.
- The new employee form opens with their name, contacts, the job title, department and salary. Add the rest, such as the TIN and bank details, and press Save.
The applicant is marked hired, their attachments move to the employee record, and the job is marked filled once it has as many hires as openings. If they look like someone already on your employee list (same phone, email or name), both pages say so.
Hire someone who already works here
For a staff member moving to a new job, or someone you are hiring onto their old record, so they never get a second employee record.
- Open the applicant. Under Already an employee, choose them, and leave Change their position to ticked to give them the job's title and department.
- Press Hire onto their record.
They keep their number, payslips, leave and advances, and stay on payroll. Someone who has left must be reinstated first: open their record and press Reinstate as active.
Run appraisals
- Open HR and payroll, then Appraisals, and open Start a review round.
- Type a Name (for example 2026 year-end review), the Period from and Period to, and a Finish by date.
- Choose the Reviewer, and leave Everyone working here now ticked or choose who. Press Start round.
- Open each employee's review, type their goals and, if you like, a Weight % for each (they must add up to 100%).
- Press Send to the employee. They rate themselves under My reviews on their own page and press Send to their reviewer. Staff without a Mifumo login skip this step, and you press Start rating instead.
- Rate each goal from 1 to 5, add a comment, write the Summary, choose the Overall score and press Finish review.
The employee sees your ratings on their page once you finish. Someone who can approve can open a review again, or close the round when everyone is done.
Settings
- Positions and departments (Settings, Other accounting settings): the lists offered on each employee.
- Application form (Recruitment): the questions and uploads every job's online application link asks for.
- Import employees from a spreadsheet (Settings, Other accounting settings): add many staff at once.
- Payroll GL accounts (Settings, or GL accounts on Payroll): where each payroll cost, contribution and deduction posts. Leave a row on its default to use the standard account.
- Bank and statutory return file templates (Settings): file layouts for your bank's bulk salary upload and for TRA (PAYE, SDL), NSSF, WCF and HESLB. Start from Popular banks and check the columns against your bank's sample file.
- Charge SDL (10 or more employees), on each draft payroll.
- Per diem settings (Per diem): the Per diem product whose expense account each request posts to and whose purchase price fills in as the daily rate.
- People not on payroll (Per diem): drivers, consultants and casual staff with their Usual daily rate and Pay to details.
- Attendance settings (Attendance, Settings), which an admin can change:
- Grace before late (minutes): arrivals inside this count as on time.
- Roughest GPS accepted (metres): rougher readings go to review.
- Normal hours Monday to Friday and Normal hours on Saturday: time beyond these is overtime. The default is 8 hours on weekdays and 5 on Saturday.
- Off days: every hour worked on these days is overtime. Sunday by default.
- Unpaid break (minutes) and Take the break off after (minutes worked): breaks are paid unless you set this.
- Smallest overtime counted (minutes).
- Phone clock difference allowed (minutes): bigger differences go to review.
- Clock in allowed before the shift and Clock out allowed after the shift (minutes).
- Automatic clock in and out: staff who turn it on in the app are clocked in when their phone notices them arrive at their site.
- Remind to clock in and Remind to clock out (minutes after the shift starts or ends): the phone reminds anyone not clocked in, or still clocked in. 0 turns a reminder off.
Questions
How does a new hire get onto payroll?
There is no separate step. Payroll takes every employee who works in the month, from their Hire date, so the next payroll you start includes them, with pay for part of the month if they joined mid-month.
Why does SDL not apply this month?
SDL is charged only when 10 or more people are employed in the payroll month. The payroll page says how many were counted.
Why can't I change an employee's salary on the edit form?
Pay and pay type change only through Propose change on the employee page, so someone other than you approves it.
Why can't I approve a timesheet day?
A day with clockings waiting in Review, or with no clock out, cannot be approved. Decide the clockings first.
Why is the Send overtime to payroll button greyed out?
Start a draft payroll for the month first. The button also stays off when no approved overtime is waiting.
Can I delete an employee?
Only an admin can, and only while they have no payslips or advances. Otherwise use Mark as left.
Can I change a payroll after posting it?
Yes. Use Reopen this payroll to change it with a reason. The posting is reversed and the payroll goes back to draft.
Help guides
- Getting started: Sign up, set up your company with its TIN and VRN, choose your modules, invite your team and get Mifumo on your phone.
- Team, roles and permissions: Add users, give each one a role per company, build your own roles with the permission grid, work together with mentions, and import or export spreadsheets.
- Approvals: Maker-checker on the documents you choose. People who can't approve submit, an approver posts or sends back with a reason, and nothing reaches the books before approval.
- Sign-in and security: Passwords, passkeys, two-step sign-in with an authenticator app, a text message or email, recovery codes, requiring two-step sign-in for everyone, and staying signed in.
- Group of companies: Run several companies under one login, give people a group role in every company, record intercompany entries once, and read consolidated reports with intercompany balances taken out.
- Accounting: Your books in one place. Invoices, receipts, bills, expenses, banking, journals, VAT returns and financial statements, all posting to one double-entry ledger in TSh.
- Inventory: Stock products, warehouses, adjustments, transfers and stock counts with a barcode scanner, landed cost on imports, purchase and sales orders, the point of sale till, and stock reports.
- HR and payroll: Employees, monthly payroll with PAYE, NSSF, SDL, WCF and HESLB worked out for you, payslips, salary advances, per diem, leave, staff attendance by phone with GPS or QR, a shift roster, and final dues for leavers.
- CRM: Leads, a drag-and-drop pipeline of deals, follow-ups, quotes from deals, a full customer timeline, SMS and email campaigns, and your own mailbox synced in.
- Asset management: Keep a fixed asset register, charge depreciation, track who has each asset, and record disposals with the right journal entries.
- Project management: Projects with their team, tasks, board and timeline, time logged on timesheets, milestone and time invoices, and the margin of every project.
- FTTx projects: Track fibre roll-out purchase orders from your clients, the work you pass to subcontractors, and the money in and out on each PO.
- Transport jobs: Record each cargo trip with its trucks, drivers and deliveries, attach the proof of delivery, see the margin on every delivery, and turn the job into an invoice.
- Construction: Run each building contract with its bill of quantities, interim payment certificates, advances, retention, completion certificates and site costs.
- Manufacturing: Write recipes for what you make, plan production runs, issue materials from stock and put finished goods into stock at what they really cost.
- Pharmacy: Counter dispensing with patient and prescription details, medicines with TMDA numbers, first-expiry-first-out batches, expiry write-offs and the prescription register.
- Motor vehicles: Sell imported vehicles from proforma to invoice, complete and approve the internal Sale Sheet, take instalment payments, and pay sales commissions.
- Property management: Properties and units, tenants, leases and rent billed as invoices, arrears, repairs and statements for owners you manage for.
- Law firm: Matters and case management (stages, parties, tasks, documents), time and costs, billing a matter in one step, the client (trust) account kept matter by matter, a court diary with reminders, the conflict check log and the advocate compliance register.
- Livestock: A register of every animal or batch of birds, with health records, withdrawal periods, breeding and births, milk and eggs, and sales invoiced to the buyer.
- Helpdesk: Customer problems and requests as numbered tickets, each with someone in charge, deadlines to answer and to solve, replies by email and internal notes.
- Mining: Run each mine as a project, record the money it receives, see spending against those funds, and get a profit and loss for every mine and for the company.
- Field Service: Jobs your technicians do at the customer's site, each with a time slot, a checklist, the parts used from stock, the hours worked, the customer's signature on the phone, and an invoice from the job.
- Hospital: Patients, appointments and the queue from triage to the doctor, the lab, the pharmacy and the cashier. Wards with admissions, bed days and deposits, the theatre list and imaging. Bills split between the patient and their insurer, with claims and reports. The Pharmacy module is included.
- Sign: Send a contract, lease or offer letter to be signed by link, on a phone or computer, and keep the signed copy with a record of who signed, when and from where.
- Event ticketing: Set up an event with its ticket types, publish it after paying a one-off fee, and sell tickets from your own sale page. Buyers pay you by Lipa Namba or online, and get QR tickets by SMS and email. Ticket money goes straight to you, never to Mifumo.