Opening
Mojatax
Turning tax worry into trust and confidence.
Over 1,000 active users issue TRA receipts from their phones, and their Z-reports are submitted automatically.
At a glance
The result
1,000+ active users issuing TRA receipts from their phones, with Z-reports submitted automatically.
What I did
Designed every screen in Figma, then built the UI in Flutter (mobile) and React (web).
The problem
Every sale has to reach the tax authority, and business owners were doing it all by hand.

01 What shipped
In focus: the designed and built product.



What changed
What changed
1,000+
active users issuing TRA receipts from their phones.
Automatic
Z-reports are submitted for users, so there’s nothing to remember
iOS + Android
Live on both platforms, with a web login
“The app is intuitive, and the step-by-step process ensures that I don’t miss any crucial details.”
What I learned: Mojatax was my first design and engineering project. It taught me to start from people’s everyday habits: understanding those is what turned worry and uncertainty into trust and confidence.
02 What I did
Design and front-end, from the first Figma screen to the shipped app.
Designed every screen in Figma, then built the UI in both Flutter (mobile) and React (web).
Built at
Mojaone · for small businesses and freelancers
My role
Design and engineering
Timeline
8 months · research to launch
Team
Team of 6: 2 designers, 3 developers, 1 PM/PO
Question
Why mobile first?
Most of the people we designed for ran their day from a phone, so Mojatax had to start there.
Question
Why build reusable components?
Shared components in Flutter and React, from one Figma system, keep every screen consistent.
03 The story behind it
Every sale in Tanzania has to reach the tax authority. For most business owners, that meant doing it all by hand.
Every report had to be followed through manually. Nothing was automated, so reports were missed or filled in wrong.
The mistakes ended in heavy penalties, and owners often only found out they had got it wrong when the penalty arrived.
The old routine, every day
01
Make a sale, then write out a receipt
02
Record it again for the tax books
03
Remember to send the day’s Z-report
04
Wonder whether it went through, and whether it was right
05
Find out from a penalty that it wasn’t
From our research with business owners
“I thought I filed my tax report already.”
Bringing it into focus
The real need: tax work that’s easy to get right, on the phone people already use.
What we kept seeing
Did I send my Z-report yesterday?
Heard more than once during our research
What it needed
Correct TRA receipts from a phone, and Z-reports submitted automatically.
Chapter 04 — Bringing it into focus
More detail · Research
How we studied the problem before designing anything
Before designing anything, we studied how people really handled their taxes.



What we found
- Everything was manual: every report had to be followed through by hand.
- Mistakes were common, and they often ended in heavy penalties.
- People lost track of what they had already sent, and found out too late.
- Most of the people we designed for ran their day from a mobile phone.
Technical notes
Stack and trade-offs, for engineers and recruiters · Figma · Flutter (mobile) · React (web) · NestJS (backend)
Stack
- FigmaDesign
- FlutteriOS and Android app
- ReactWeb version
- NestJSBackend
- StorybookTesting web components
My part
Designed every screen in Figma, then built the UI in both Flutter (mobile) and React (web).
Key decisions
Mobile first.
Research showed our users ran their day from their phones, so the Flutter app came first. The React web version follows the same Figma component system.
Tested against the design.
The React web components were tested in Storybook against the design criteria before they reached the product.
An invitation
Building something people trust with their financial records?
Booking calls now · Pick a time that suits you

