Jipay
A savings wallet that puts aside part of every M-PESA payment and uses it to pay for family health cover.
- Client
- Jipay
- When
- Sep to Dec 2024
- My role
- Software engineer at StartAppz TBC: confirm role and team size
- Team
- TBC: team size, and the parts you owned end to end
- Stack
- Flutter, Dart, Firebase, Laravel, MySQL, M-PESA API
- Downloads
- 10K+Google Play, October 2026
- Rating
- 4.2 from 93 reviewsGoogle Play, October 2026
- Links
Context
Jipay is a micro-savings wallet for informal workers in Kenya. It saves a share of what a subscriber spends through M-PESA, and that money pays for Jipay Afya, an in-patient and out-patient cover for a family of five. The same wallet holds goal savings (Jipay Later) and invests in a money market fund (Jipay Now).
Problem
The founders needed a working app in the Play Store quickly, so they could test “save as you spend” with real users and real money.
Constraints
- Real money moves through M-PESA, so every payment has to match a confirmation from Safaricom before the wallet changes.
- Health cover is a regulated product, so what the app promises has to match the policy.
- Four months from the first commit to the store.
- TBC: any other constraint worth naming (team size, budget, devices)
What I did
- Built the Android app in Flutter.
- Wrote the Laravel API and the MySQL schema behind it.
- Integrated M-PESA payments and the callbacks that confirm them.
- TBC: confirm which parts were yours and which were the team’s
Decisions
TBC: two or three decisions you made, each as decision, trade-off, result. For example, how payments are confirmed before the wallet changes.
Outcome
Jipay reached the Play Store in under four months. In October 2026 it shows more than 10,000 downloads and a 4.2 rating from 93 reviews.
TBC: screenshots of the app (with the client’s OK), and one thing you would do differently