Onit Microfinance Bank
My Role: Lead Designer, Growth.
Lead the design of trust-building experiences and viral growth mechanics to drive app adoption and retention.
Team: Cross-functional team. 2 designers, 4 product managers, 8 engineers, and operations team building for iOS, Android and USSD
The objective:
Banking is broken: Launch a zero-fee digital bank
Build trust in a price-sensitive, competitive market
Achieve growth without high marketing budgets
Seamlessly migrate credit users to the banking platform
Mapping constraints:
Business Constraints
❌ Limited marketing budget
❌ Skewed existing user base primarily expecting loans
❌ Needed to achieve viral growth (CAC had to be near zero)
❌ Tight timeline: 6 months to launch
Technical & Regulatory Constraints
❌ Integration with existing banking infrastructure/ processes
KYC regulatory requirements
Consumer protection disclosures (transparent pricing, T&Cs, data protection, real time transaction notifications & receipts)
❌ Real-time transaction processing limits
❌ Intermittent connectivity
❌ Low-end Android devices + feature phones
User Constraints
❌ Distrust of "free" financial products
❌ M-Pesa behavioral lock
❌ Very high Day 7 and Day 30 churn norms in market
❌ Low digital literacy
How do you build trust and drive viral adoption when users are skeptical, locked into a competitor's network, and you have limited resources?
The Problem
Kenya's 2.4M SMEs face an expensive & fragmented banking system.
M-Pesa charges 1-3% per transaction and controls 95%+ of mobile money movement in Kenya. Traditional banks require $500+ minimum balances, and account opening takes weeks. This leaves 65% of SMEs to operate entirely in cash, losing an estimated $2B annually to inefficient financial establishments, limiting their ability to grow.
Key Finding: The Cash Trap SMEs relied heavily on cash transactions and informal lending networks, not by choice, but because:
Traditional banks had high fees and minimum balances
M-Pesa was expensive for business transactions
Informal networks (family, suppliers) filled the credit gap
What This Meant for Design: We couldn't just build "a better banking app"; we had to design for the entire ecosystem of relationships: how merchants pay suppliers, how they collect from customers, how they access credit, and how they build trust in a new system.
The Onit Ecosytem
To design the right solution, I needed to understand how money actually flowed through the economy. We studied the broader financial ecosystem in Africa, focusing on how SMEs interact with consumers, suppliers, and financial institutions. Our findings indicated that SMEs often rely on cash transactions and informal lending networks due to the inefficiencies and high costs associated with traditional banking.
SMEs weren't avoiding digital finance because they didn't understand it, they were rationally opting out of systems that didn't serve them.
I created this Onit Persona diagram to explain the ecosystem’s interconnectedness to the Product, Engineering and Design Teams.
*Image created using Midjourney and FigJam
Research & Design Process
Phase 1: Deep User Research
Conducted 40+ interviews with SME owners across 3 cities
Synthesized insights from 1,000+ survey responses with the lead product manager
Key findings: Users didn't trust "free" but were desperate to save money
Users had no idea how much they were spending on M-Pesa fees month on month
Phase 2: Constraint Mapping
Mapped regulatory requirements vs. user friction for KYC flows
Identified viral mechanics used by successful products (Monzo, Chipper Cash, Cash App, NCBA)
Defined north star metric: Viral coefficient K>1
Phase 3: Rapid Prototyping & Design Iterations
Created 5 different approaches to communicating "free"/ cost savings
Tested trust-building elements with dedicated focus groups
Iterated on referral flow designs (tested 2 variations)
Phase 4: Constraint-Driven Design Decisions
Made key trade-offs (detailed next)
Built design system for velocity
Prepared for beta launch
Designing Tiered KYC
The Constraint Conflict:
Regulatory requirement: Full KYC before account access
User need: Immediate value or high drop off
Business need: High completion rates
Key learnings from protyping:
Users dropped off almost immediately if too much sensitive financial info was asked for outright - no ID’s in hand, no KRA pin, bad lighting for KYC selfies etc…
Options:
Full KYC = regulatory compliant but 27 steps to full completion meant high drop-off rates, killing activation metrics
No KYC = Instant access, great KYC but non-compliant
Tiered KYC = Balanced approach with more techincal complexity*
*KYC 2: SmileID integration to reduce enginneering lift
Decision: Tiered KYC for MVP
Created "first basic account" with transaction limits
Users could add/ send small amounts immediately
Progressive verification unlocked higher limits and business features
Clear communication about what they could do now vs. later with business accounts
The trade-offs
✅ Immediate value → reduced early churn
❌ More complex system to build (engineering push-back)
Multiple account states instead of one (for credit users as well)
Transaction limits had to be enforced dynamically
More complex testing, monitoring, and support tooling
Why it mattered
We turned KYC from a blocker into a retention lever. Something that unlocked value instead of blocking users.
Impact:
Users who completed Tier 1 had 3× higher Day 7 retention than those forced into full KYC upfront because they gained trust as they learned more about the product.
#2: Designing for Trust and Transparency
Constraints:
Business model: Zero fees
User skepticism: "Free" seemed too good to be true
Need to differentiate: M-Pesa was familiar (even if expensive)
My designs to explore different approaches to communicating "free"/ cost saving on transactions
Design Decision: Show, Don't Tell
Designed real-time cost comparison: "Lose KES45 on M-Pesa fees. Send for KES 0 Onit.
Created a running "total saved" counter dashboard
Made fee comparisons on transactions visible and simple
Later: Test social proof: "Your friend Jane saved KES 450 this month"
The Trade-offs:
Created competitive differentiation
Required complex calculations in real-time
Why It Worked: Users needed proof, not promises. Showing real time savings built trust faster than any marketing message.
Impact: By making fees visible and transparent, we reduced friction to first transaction, increased early retention, and unlocked organic growth.
#3: Banking & Credit Designed to Help Businesses Grow
Once trust and usage were established, the real opportunity was to design banking around how businesses actually grow, not around consumer lending models.
Constraints:
SMEs punished by off-rails mobile money fees
Credit products were predatory and disconnected from business performance
Cash-flow volatility was the real painpoint, not credit appetite
Why it mattered: We designed credit based on how the business actually operates. We built credit scoring models that analyzed merchants M-pesa statements to provide limits based on transaction volume
Customers can pay the merchant for free
Reduced cash handling risk
Clear transaction records
Easier reconciliation and proof of income
#SendOnit
#GetOnit
#SaveOnit
#SendOnit #GetOnit #SaveOnit
Learnings
In a competitive financial market, we believe it was important to:
Reduce the complexity of account opening
Show immediate value and gain users’ trust
Then layer business-first banking and credit features to give our users a reason to stay and grow.
Other initiatives I worked on
Design system documentation to increase design velocity and handoff with engineers
Notifications for upcoming payments and available payment options
Branding and product marketing.
Education modules explaining digital banking fundamentals for first-time users
Payment links to request payments for offrails users.
Sales agent app for our field team to monitor and manage leads.
and many more…

