All case studies

02 · Digital Banking · Neobank · SACCOs & Credit Unions

Kwara — building a neobank for Africa's credit unions

ROLE — Senior UX Designer
TIMELINE — Apr 2022 – Jul 2024
TEAM — 2 designers · 8 engineers · 1 PM
PLATFORM — iOS & Android (React Native)
kwara.com ↗
     Kwara React Native Neobank MVP — Figma design overview

Context

SACCOs (Savings and Credit Co-operatives) are the backbone of financial inclusion across Sub-Saharan Africa. In Kenya alone, over 14,000 registered SACCOs serve more than 14 million members — yet almost none offered a digital-first experience. Members still queued at offices, passbooks in hand.

Kwara's proposition was bold: build a full neobank layer on top of existing SACCO core banking systems, so members could access loans, savings, statements, and peer transfers — without the institution abandoning the trust it had built over decades.

React Native MVP Fintech Financial inclusion SACCOs Cross-functional design Design systems

The problem

Credit unions wanted digital products but lacked engineering capacity. Kwara's platform bridged that gap — but the real UX challenge was layered:

"The interface had to feel simpler than M-PESA — but handle the complexity of a full credit union on the back end."

— Design brief, Kwara product team · 2022

Design process

01 · DISCOVER

Contextual research

On-site SACCO visits, member interviews, operational staff shadowing across 3 counties.

02 · DEFINE

Data structures first

Mapped core banking data models to UI patterns before a single screen was drawn.

03 · DESIGN

Design system + flows

Built a component library from scratch in Figma, co-designed with engineers in React Native.

04 · VALIDATE

Usability testing

Prototype testing on Maze with 80+ participants; iterative rounds every 2 weeks.

Research & discovery

Before designing a single screen, I ran a comprehensive discovery phase covering three inputs: SACCO institution assessments, member interviews, and competitive benchmarking of digital banking apps across Africa and Southeast Asia.

What we learned from members

FINDING 01

Members trusted their SACCO brand far more than any "app" brand. The app had to feel like the SACCO's own product — not Kwara's.

FINDING 02

Loan guarantor flows — where members had to vouch for peers — were the single biggest drop-off point. Async approval states were confusing.

FINDING 03

Statement downloads mattered enormously. Members used them for housing loan applications, school fee financing, and visa applications.

FINDING 04

Push notifications for balance and transaction updates were rated the single most-wanted feature — above transfers.

User personas

Three primary archetypes emerged from 22 member interviews and 4 staff interviews across SACCOs in Nairobi, Eldoret, and Kisumu. These shaped every major design decision in the MVP.

N

Njeri, 34

URBAN PROFESSIONAL · NAIROBI

Civil servant, SACCO member for 8 years. She uses M-PESA daily and expects her SACCO to feel at least as smooth. Currently drives to the branch once a month to check her loan balance and collect a printed statement for her mortgage application.

  • Instant balance visibility without visiting the branch
  • Statement PDF she can share directly with her bank
  • Loan repayment reminders so she never misses a date
PAIN POINT

Has to take half a day off work to sort out what should be a 2-minute task.

O

Otieno, 51

RURAL FARMER · KISUMU

Small-scale maize farmer, SACCO member for 19 years. Owns a basic Android phone but has never downloaded an app. His son helps him with anything digital. Intermittent 2G/3G connectivity. Primary language: Dholuo; uses Swahili for formal interactions.

  • Simple language — no jargon, no English-only labels
  • Works offline or on 2G with graceful degradation
  • SMS fallback if data is unavailable
PAIN POINT

Apps "never work" for him — previous digital banking attempts failed at the KYC step because of poor camera guidance.

A

Amina, 28

SACCO OPERATIONS STAFF · ELDORET

Loan officer and de-facto digital guide for her branch. Processes 30–50 loan queries per week, many of which are simply members asking "what's my balance?" She's the power user of the internal admin dashboard but also the front-line escalation point when the member app fails.

  • Faster loan approval workflow — fewer back-and-forth calls
  • Real-time visibility into pending guarantor approvals
  • Clear member status she can quote over the phone
PAIN POINT

Spends 40% of her day answering calls that the app should handle. When members can't log in, the blame lands on her.

K

Kamau, 42

BUSINESS OWNER · THIKA

Runs a hardware shop, uses his SACCO mainly for asset financing loans to buy stock. Applies for loans 2–3 times per year. Comfortable with apps (uses M-PESA, WhatsApp Business, Quickbooks mobile). Main frustration is the guarantor loop — he has to personally call each guarantor to chase signatures.

  • Automated guarantor notifications with single-tap approval
  • Loan status timeline — not just "pending"
  • Multiple account visibility (personal + business shares)
PAIN POINT

Loan approval takes 2 weeks minimum because guarantors don't know they've been added until he calls them.

FIG. 01 — Figma design file: full React Native neobank MVP — onboarding, home, loans, transfers, statements

Customer journey map — Njeri applies for a loan

The journey map below tracks the before state — what members experienced before the neobank. Each friction point became a direct design brief for a feature or flow.

STAGE MEMBER ACTION EMOTION PAIN POINT DESIGN RESPONSE
1 · Awareness Remembers she needs a loan; not sure if she's eligible ●●●●● Neutral No way to check eligibility without going to branch Home dashboard: live eligibility estimate based on share capital & repayment history
2 · Research Calls the SACCO, waits on hold, asks about loan products ●●●●● Frustrated Phone lines busy, information inconsistent between staff Loan products screen: rates, max amount, and required guarantors — always up to date
3 · Apply Visits branch, fills in paper form, submits with documents ●●●● High effort Half-day lost; form may be incomplete; documents re-requested In-app loan application: guided multi-step form with inline document capture; progress saved
4 · Guarantors Contacts guarantors personally to ask them to come to the branch ●●●● Anxious Guarantors forget; process can take weeks; no visibility Guarantor flow: push notification to guarantors; single-tap in-app approval; applicant sees live status
5 · Wait Waits for committee approval; calls SACCO to check status ●●●●● Anxious "Pending" with no timeline; fear application was lost Loan timeline view: named stages, estimated completion, push notification at each transition
6 · Disburse Receives funds via cheque or branch cash ●●●● Relieved Bank/M-PESA disbursement not offered; another branch trip Instant M-PESA disbursement with confirmation notification and loan schedule summary

Design decisions

How research drove every decision

Each finding from user interviews translated directly into a specific design choice. Below is the evidence-to-decision chain for the most impactful parts of the product.

RESEARCH FINDING

Members feared their loan was "lost" once submitted. 6 of 10 called the branch within 24 hours of applying just to confirm receipt.

DESIGN DECISION

Loan timeline view with named stages, timestamps, and a push notification at each status change — making the wait legible rather than invisible.

RESEARCH FINDING

Guarantor approval was the single biggest drop-off in the existing process. Members had to call guarantors personally — some never responded.

DESIGN DECISION

In-app guarantor notification with single-tap approve/decline, and a 48-hour reminder push. Applicant sees each guarantor's status in real time.

RESEARCH FINDING

Statement downloads were used for housing loans, school fees, and visa applications — not just internal reference. Members needed a PDF they could immediately share.

DESIGN DECISION

Statements section: date-range picker, instant PDF generation with SACCO letterhead and stamp, and a share sheet that bypassed the need to download first.

RESEARCH FINDING

First-time smartphone users (especially 45+) failed the ID capture step in competitor apps because camera guidance was unclear in low-light conditions.

DESIGN DECISION

KYC flow: animated frame guide, brightness detection with soft warning, and a manual-upload fallback with photo-capture tips in Swahili.

RESEARCH FINDING

Members trusted their SACCO brand far more than "Kwara." When shown a generic fintech UI, 8 of 10 said they'd be less likely to share financial info.

DESIGN DECISION

White-label theming at the design system level: every SACCO gets its own primary colour, logo, and name throughout — Kwara is invisible to end users.

Data structures before pixels

The most important design work happened before Figma was opened. Every SACCO on Kwara's platform had slightly different data structures for accounts, shares, loan products, and repayment schedules. I worked with the back-end team to map these into a normalised UI data model — so the same component library could flex across institutions without needing custom screens.

App screens — key flows

Screenshots from the React Native MVP across the four core journeys: onboarding, home dashboard, loan application, and statements.

ONBOARDING & KYC

HOME DASHBOARD

DECISION A · BALANCE VISIBILITY

Total savings and available credit surface immediately — no tap required. Research showed members opened the app primarily to check these two numbers.

DECISION B · QUICK ACTIONS

Four persistent quick-action tiles (Pay, Transfer, Statements, Loans) placed thumb-zone low. Based on task-frequency mapping from interview data.

DECISION C · NOTIFICATION CENTRE

In-app bell with badge count, surfacing loan status changes and guarantor requests — addressing the #1 member complaint: "I never know what's happening."

LOAN APPLICATION FLOW

TRANSFERS & STATEMENTS

FIG. 02 — Interactive prototype: navigate the full neobank MVP — onboarding, home, loan application, M-PESA transfers

Design system

I built and maintained the full Kwara design system in Figma — tokens, components, patterns, and documentation — so that as the product scaled from 2 to 8 engineers, the experience stayed coherent. The system was built to mirror the React Native component API, reducing handoff friction and speeding up feature shipping.

Loan flow — the hardest problem

The multi-step loan application flow (eligibility check → guarantor selection → committee review → disbursement) was the most complex UX challenge. Each step could be blocked by an external party, and wait times ranged from hours to days. We designed explicit "pending" states, push-notification hooks at every transition, and a loan timeline view so members always knew where their application stood.

Prototype — React Native MVP

The interactive prototype below shows the complete React Native neobank MVP across onboarding, home dashboard, loan application, and account management flows. Navigate directly in the embed or open in Figma for the full annotated file.

INTERACTIVE PROTOTYPE · React Native Neobank MVP · Kwara · Aug 2022 Open full prototype ↗

Key flows covered in the prototype:

DESIGN FILE · All screens & components · Kwara React Native MVP Browse full file ↗

Outcomes

The neobank launched to a pilot group of 3 SACCOs in Q4 2022 and rolled out to the full network through 2023. The combination of research-led design, a robust design system, and close collaboration with engineering produced measurable results:

+400K
new monthly active users
$200K
monthly recurring revenue
2+ yrs
continuous design ownership

Beyond the headline numbers, loan application completion rates improved significantly after redesigning the guarantor flow. Statement download adoption exceeded projections within the first quarter, validating the research finding that members needed documents for third-party financial processes.

What I learned

← Gapstack Next: Impacc →