Skip to content
Product Design

When the bank goes down, the payment shouldn't.

Venus is a business-banking platform for small and mid-sized businesses in Nigeria, bringing transfers, invoicing, bill payments, and corporate cards into one account. The core challenge was reliability. Transfers could fail at different points in the journey, and the experience gave users little information about what had happened or what they should do next. I focused on making transfer reliability visible and actionable — helping users understand the state of a payment, avoid unnecessary retries, and recover when something goes wrong.

Role
Product Designer
Timeline
8 weeks · 2025
Scope
Reliability audit · Routing & flow design · Prototype
The redesigned Venus transfer flow — a pre-flight state showing the destination's live health before a payment is sent
First-attempt transfer success
82% → 96%
Payments auto-recovered by routing + retry
≈600 / day
Repeat retries into a failing destination
−71%
“Is the bank down?” / failure-related support tickets
−49%
01

Overview

Transfers are one of the most important parts of Venus. For a business, a failed payment isn't just an error in the interface. It can mean a missed payroll deadline, a delayed supplier payment, or uncertainty about where money has gone.

The problem was that very different situations could produce the same experience:

“Transfer failed. Try again.”
The old failure state — and the questions it left unanswered.

There was no clear indication of why the transfer failed, whether the destination was currently experiencing problems, whether trying again would help, or whether the account had already been debited.

I focused on the experience around these failures — from identifying reliability issues before a transfer is sent to helping users recover when a payment doesn't go through.

The work involved analysing transfer behaviour, mapping the failure states, designing the new flows and interactions, and working closely with engineering to make sure the experience was practical within the product's technical constraints.

At a glance

active business accounts
2,400
transfers failed on the first attempt
~1 in 5
worst-hour success rate during a degraded period
41%
support cluster: “Is the bank down?”
#1
02

Where the failures actually live

Failures weren't spread evenly across the product. They concentrated around specific destinations and times — a pattern the existing experience didn't make visible to users.

I analysed transaction success rates across destination, payment rail, and time of day. The headline number was an average first-attempt success rate of around 82%, but that average hid significant variation.

Routine transfers could clear reliably, while particular destinations experienced sharp drops during peak periods and month-end. One destination reached just 41% success during its worst window.

The important insight was that these failures weren't simply random errors. There were patterns in where and when they happened.

That created an opportunity for the product to respond to those conditions instead of treating every failed transfer in exactly the same way.

The behavioural pattern

The support data pointed to the same problem.

Users weren't primarily asking how to make a transfer. They were asking:

“Is the destination down? Why does my transfer keep failing?”

When a payment failed, users often tried the same route again because the product gave them no better option.

That created a cycle:

Fail → Retry → Fail again → Retry again

The same payment, four times — the retry loop the old interface manufactured.

For businesses trying to make time-sensitive payments, that uncertainty could turn a technical failure into a much bigger operational problem.

The design challenge became clear:

“How might Venus help users understand a transfer's reliability before they commit, and recover gracefully when something goes wrong?”
03

The failure, dissected

When a transfer failed, the old experience effectively stopped at the error message.

What “Transfer failed — try again” didn't tell users

  • Why it failed — different causes could look exactly the same.
  • Whether the destination was currently experiencing problems.
  • Whether retrying would actually help.
  • Whether the user's account had been debited.
  • What the user should do instead.

Every one of these gaps pushed users towards an immediate retry, even when the same route was likely to fail again.

The interface wasn't just missing information. It was contributing to the retry loops, duplicate debits, and support requests visible in the product data.

04

Design principles

Venus can't control the underlying payment infrastructure. The design opportunity was therefore to make its reliability visible and help users act on it before they had to deal with a failure.

Four principles shaped the experience.

1 · Pre-flight reliability

Show users the current health of their destination before they send.

Instead of hiding reliability information, the experience surfaces it early enough to influence the user's decision.

Pre-flight reliability

  • Show the destination's recent success rate.
  • Turn an invisible risk into information the user can act on.

2 · Smart routing

When another route has a better chance of succeeding, Venus can use it rather than sending the payment through a known-problematic path.

Smart routing

  • Route through the path most likely to succeed.
  • Make the routing visible rather than turning it into a black box.
  • Give users control where an override makes sense.

3 · Honest, specific failure

A failed transfer should explain what actually happened.

Honest, specific failure

  • Distinguish between destination downtime, incorrect account details, and breached limits.
  • Give each failure a clear next action.
  • Confirm whether the user's account was debited.

4 · Queued auto-retry

Some failures are temporary. Users shouldn't have to sit there repeatedly pressing Try again.

Queued auto-retry

  • Hold the payment when appropriate.
  • Retry automatically when the destination recovers.
  • Notify the user when the payment lands.

These principles shift the experience from “something went wrong, figure it out” to “here's what's happening, and here's what happens next.”

05

Before & after: the failure state

The successful transfer journey doesn't need to become significantly more complicated.

The biggest change happens when something goes wrong.

Before — blind “try again”

  1. One generic error: “Transfer failed — try again.”
  2. No indication that the destination was currently experiencing problems.
  3. The same payment was retried through the same failing route.
  4. Users had to babysit the payment — retry, wait, retry again, or contact someone.
  5. It wasn't clear whether the account had been debited.
  6. Time-sensitive payments could remain unresolved.

After — reliability you can see

  1. Pre-flight health shows the destination's recent success rate before the payment is sent.
  2. Smart routing uses a healthier available path when appropriate.
  3. Specific failure states explain what went wrong and provide the next action.
  4. Queued auto-retry holds and resends eligible payments when the destination recovers.
  5. Debit status makes it clear what happened to the user's money.
  6. The user is notified when the payment is resolved rather than having to keep checking.
Before: send with no idea the destination is down. After: its live health, and a healthier route offered — before you commit.

The result is a transfer experience designed around recovery, not just successful completion.

06

The redesigned flow

The new flow moves through four clear stages:

Check → Route → Send → Recover

Each stage closes a gap in the previous experience.

01 — Check

The user enters the amount and destination.

Before they commit, the experience checks the current reliability of the destination and surfaces relevant information.

A healthy destination can proceed normally. If reliability has dropped, the user sees a clear warning before sending.

This turns information that previously existed only in the system into something the user can actually use.

02 — Route

If the selected destination is degraded and another viable route is available, Venus can suggest a healthier path.

The important part is transparency.

The user can see that the route has changed and why, rather than having the product silently make a decision behind the scenes.

03 — Send

Once the user confirms the payment, the experience communicates its state clearly.

The goal is to remove the uncertainty between submitting a transfer and knowing whether it has actually completed.

04 — Recover

When a payment fails, the experience identifies the reason instead of showing a generic error.

For temporary failures, Venus can queue the payment and retry automatically when the destination recovers.

The user doesn't need to repeatedly submit the same payment or keep checking whether it eventually went through.

Once it completes, Venus confirms the outcome.

The recover states: honest failure, a queued auto-retry, and a payment that lands itself.

The redesigned flow — live

Real, running components, not a mockup. Send to Meridian Bank (degraded right now) to see the pre-flight health check, the smart route it offers instead, and — if you send anyway — the honest failure and the queued auto-retry that recovers the payment. Pick a healthy destination to see the direct path.

VVenus

Send money

We check the destination’s live reliability before you send.

Tip: Meridian Bank is degraded right now — send to it to see routing and auto-retry.

Live components running in-page — not a mockup.
07

Results

The changes had a measurable impact on both transfer success and the behaviour surrounding failed payments.

First-attempt transfer success
82% → 96%
Payments auto-recovered by routing + retry
≈600 / day
Repeat retries into a failing destination
−71%
“Is the bank down?” / failure-related support tickets
−49%
Median time to confirmed payment during degraded periods
≈11 min → under 2 min
Duplicate debits from blind retries
−58%

Smart routing and queued retry increased first-attempt transfer success from 82% to 96%.

Around 600 payments are automatically recovered each day that would previously have stalled in a retry loop.

Repeat attempts into a destination experiencing failures dropped by 71%.

Support tickets around destination availability and transfer failures dropped by 49%.

The median time for a payment to reach confirmation during degraded periods fell from around 11 minutes to under 2 minutes.

Duplicate debits caused by repeated retries dropped by 58%.

The impact

The most significant change was that Venus no longer relied on the user to solve a reliability problem themselves.

When a destination was healthy, the transfer could proceed normally.

When reliability dropped, the product could surface that information, choose a healthier route where possible, and automatically recover eligible payments when the issue was temporary.

That combination increased successful transfers while reducing the behaviours that created duplicate debits and support demand in the first place.

08

Reflection

This project reinforced something I think is important in product design: the visible interface isn't always where the real problem lives.

The transfer experience looked simple on the surface, but the complexity underneath it — different failure states, changing reliability, payment status, and recovery — created a much harder UX problem.

My contribution was to make that complexity understandable without exposing users to the underlying technical complexity.

That meant working through the different states a payment could enter, deciding what information users actually needed at each point, and designing flows that helped them recover rather than simply telling them to try again.

I worked closely with engineering throughout the process to understand the technical constraints and make sure the proposed interactions, states, routing behaviour, and retry experience could be supported reliably.

The result was a product experience that doesn't assume everything will always work.

It gives users a clearer path when it doesn't.

The refreshed Venus home dashboard on a lavender background

Next Project

Venus — Dashboard refresh

From a 36-colour audit to a 1:1 build.