KFH WAMD Redesign
From 'I'll just do it at the branch' to a 4-tap money transfer that feels like sending a WhatsApp.
APP
Transformation
Role
Product Designer
Timeline
2 weeks
team
Self-initiated audit
platform
iOS

The Real Problem
I'm a KFH account holder. I use WAMD — Kuwait's instant payment network — to split bills, pay friends back, send money to family. It should be the fastest thing in the app. It isn't.
To send KD 1 to a saved contact, I had to: open the app, re-enter my PIN because Face ID doesn't persist between cold launches, navigate to Transfers, choose between Local and International, select the transfer type, scroll an alphabetical beneficiary list with no search, enter the amount, sit through a review screen, and then confirm with an OTP — even though I'd already authenticated at login. Eight screens. Around 90 seconds, on a good day.
Every single time I had to accept the Terms & Conditions with a toggle. The same T&C I agreed to when I signed up. And every time I needed to pick a Transfer Reason from a dropdown that had no option for "just paying a friend back for dinner."
The worst part wasn't the steps. It was the session timeout. Walk away for five minutes and you'd come back to a full-page stopwatch illustration that said: "Your session has expired." Then in green text: RE-LOGIN. The app had my Face ID. It knew who I was. But it made me prove it again like I was a stranger walking in off the street.
I kept finding myself using cash because the app was slower.

Finding the Fix
I started with a heuristic evaluation — not of a competitor app, but of my own account. I screenshotted every step of every flow and laid them out in a row. Seen together, the WAMD send flow was visually absurd. Seven distinct background colors across eight screens. Four different navigation patterns. A grey dead zone at the bottom of most forms where nothing existed except wasted space.
Two things stood out immediately.
The first was that the app was organised around its own database, not around how people actually move money. The hub made you declare your intent — Local Transfer, International, WAMD — before showing you your contacts. But when you're paying someone back for lunch, you're not thinking about transaction categories. You're thinking about the person.
The second was that the T&C toggle, the Transfer Reason field, and the secondary OTP were all friction the system created for itself, not protection the user needed. T&C had already been accepted at account creation. Transfer Reason could default to the last-used value. The OTP was a second authentication gate on top of a login that already used biometrics.
I counted the decisions a user had to make in a standard WAMD send: eleven. In the redesign, that number is three — who, how much, confirm.
The principle I kept coming back to was the same one that makes Apple Pay feel effortless: the system should only ask for what it genuinely doesn't already know. If Face ID confirmed my identity at login, that trust should carry through the session.

What I Actually Built
The redesign is built around one idea: bring the money to the person, not the person to the money.
The new WAMD hub opens with recent contacts at the top. Not navigation categories, not a promotional banner — the last four people you sent money to, available in one tap. Tapping a contact goes directly to the send screen with them pre-selected. That single change eliminates four steps for any repeat transaction.
The send screen puts the keypad and the recipient on the same surface. No separate pages for entering an amount, no separate page for selecting an account. The amount is rendered at 72 points — because the number you're about to send deserves to feel real, not squeezed into a small form field. The send button updates contextually: it says "Send to Paru" not "Proceed," and it only activates once an amount is entered.
The confirmation screen keeps the T&C requirement — but as a persistent checkbox, pre-checked if you've accepted before, that only resets on a new device or when terms change. Transfer Reason is a dropdown, pre-filled with the last-used value, easy to change but never blocking. The primary action is Face ID. One press. Done.
The session timeout was redesigned from first principles. When a session expires, the app already knows your name and has your biometrics enrolled. Showing a stopwatch error is the wrong mental model entirely. The new timeout screen shows your avatar, greets you by name, and offers Face ID as the recovery path. It's not an error state. It's a handoff.
The success screen goes full KFH green — not a small checkmark on a white background, but the entire screen in brand color, earned as a reward. The amount sent is centred and large. The recipient's name, delivery time, and a reference number follow. Two buttons: share receipt, or back to WAMD. Nothing else.

What Changed
The numbers are clean.
The complete WAMD send flow went from 8 screens to 3. Estimated time-on-task dropped from around 90 seconds to under 15. The number of decisions required per transaction went from eleven to three. Every screen in the original flow contained dead space areas with no content, no purpose all of it removed.
The changes that drove most of the reduction: removing the transfer type selection screen entirely (the app can infer this from the contact), eliminating the secondary OTP for standard transactions, defaulting Transfer Reason to the last-used value, and surfacing recent contacts on the hub so frequent senders never need to enter the navigation tree at all.
The case I'm making isn't that the KFH app is broken. It isn't. WAMD exists and works. The features are there. The problem is that every small friction compounds. When sending money feels like filing a form, people stop using the app for the things it does best — and they go to a branch, or they use cash, or they switch to a competitor that got this right.

What I Had to Work With
This was self-initiated, which meant no user research budget, no developer to ask questions to, and no access to backend constraints. Everything I know about the pain points came from being a real user of a real account, reading App Store reviews, and applying structured heuristic evaluation to what I could see and touch.
I also couldn't test with other users. I designed based on my own experience and patterns I recognised from the review corpus — which is a limitation worth naming. The flows I found frustrating are the flows I redesigned. A different user profile — someone older, less tech-fluent, or sending internationally more often than domestically — might surface different priorities entirely.
The prototype covers the WAMD send flow specifically. The broader app has more problems: the side navigation works logically but looks chaotic, the bill payment flow requires Civil ID re-entry on every visit, and the card management screen buries the most safety-critical actions. Those are documented separately in the heuristic audit.

What I'd Do Differently
II'd talk to more people before designing anything.
I had strong signal from my own experience and from public reviews, but I made a lot of assumptions about what "most users" find frustrating based on what I find frustrating. There's a real risk that a 28-year-old designer using the app for personal peer transfers has very different pain points from a 50-year-old business owner using it to pay contractors in different currencies.
I'd also push harder on the Transfer Reason field. I removed it from the WAMD flow on the assumption that it adds friction without adding value. But there may be a compliance reason it exists a CBK requirement, an audit trail, something structural — that I simply don't have visibility into as a customer. The right question isn't "can we remove this?" It's "why does this exist, and what's the minimum viable version of it?"
What I Learned
The best UX insight I got from this project wasn't about flows or screens. It was about trust.
Every piece of extra friction in the WAMD flow — the re-login after timeout, the T&C toggle, the secondary OTP, the Transfer Reason field — is the app telling the user: "we don't fully trust you yet." Sometimes that's right. A large international transfer to a new recipient should feel slower and more deliberate. But for sending KD 3 to a contact you've paid before, that level of scrutiny is noise. It erodes confidence in the product without adding meaningful security.
The apps that feel magical — Apple Pay, Revolut, Cash App — don't feel magical because of their visual design. They feel magical because they're precise about when they ask for trust and when they extend it. That's what I was trying to build here. Not a prettier interface. A more intelligent one.