Ayodele Joseph

Product Designer + Design Engineer

Work

Playground

About

Resume

Work

Playground

About

Resume

Got something you want built properly?

Designed + Coded with

by Ayodele

Linkedin

X

Call

© 2026

Back

Contents

Back

Earnipay Business

Who has to say yes

A business has members, and members make requests. Not every request should go through immediately. Sometimes someone else needs to look at it first.

The workflow list: every approval rule a business has defined, with its request type and status

Client

Earnipay

Year

2024

Timeline

4 months, 2024

Role

Senior Product Designer

Team

Product Manager

4 Engineers

Customer Success

Founder

Focus

Approvals

Workflows

Dashboard

Audit trail

Problem

Requests needed a second pair of eyes, and nothing in the product let a business say whose eyes, or in what order.

My role

The whole approvals experience: defining a workflow, receiving a request, deciding on it, and the record the decision leaves behind.

Key decision

Treat it as two products. One person configures how requests are handled. Another just decides on the one in front of them.

Outcome

Average approval time fell from 6 hours to 2.5 hours. Clearer requests and decision history meant fewer approvals had to be chased manually.

01

Someone needs to approve this

Approval should be simple. The workflow behind it shouldn't be.

Imagine a member creates a request. It now needs another person to review it before anything happens. The approver has to know what the request is, decide what to do, and leave a clear record of that decision.

So there were two sides to the experience. On one side, someone has to create the rules. On the other, someone has to follow those rules and make a decision.

  1. Create the workflow

  2. Receive a request

  3. Review it

  4. Approve or reject

  5. Record the decision

The challenge was never designing an Approve button. It was designing the system around that button.

02

Defining a workflow

First we had to define what an approval workflow actually was.

Before an approval could happen, a business needed a way to tell Earnipay what its approval process should look like. So we started with the workflow itself. A business could define:

  • Workflow title
  • Description
  • Request type
  • Request kind
  • Workflow stages

That gave the workflow enough context to be understood later, both by the people setting it up and by the members who would meet it as a request.

But there was a bigger question underneath it. How much should we ask for upfront?

We could have made the setup extremely detailed and given businesses control over everything. That would have made a simple approval workflow feel like configuring enterprise software.

Capture what the workflow needs without making setup feel like work.

So we kept the creation process to the things that actually define the workflow, and nothing else.

03

Stages

A workflow isn't really a workflow until there is a sequence.

That is where stages came in. Instead of treating approval as one isolated action, we let a business define the stages a request should move through.

A request enters

It moves through its stages

It reaches an approver

It gets a decision

The workflow

Defines how a request moves.

The dashboard

Defines what needs attention right now.

That distinction turned out to matter more than anything else on the configuration side.

04

Where requests go

Once the workflow existed, requests needed somewhere to go.

We had the rules. The next question was much more practical. When a request actually arrives, where does the approver see it?

We did not want approval to feel like a separate destination people had to remember to check. So the dashboard became the starting point. Requests that needed attention were surfaced there, giving an approver an immediate view of what was waiting for them.

The important information was visible without anyone opening several layers of the product. There is a request. It needs your attention. You can review it.

That made the dashboard more than a collection of numbers. It became the place where work showed up.

05

The decision

The decision happens inside the request.

Once an approver opens a request, the experience becomes deliberately simple. They review it, and they have two clear actions: approve, or reject. There was no need to introduce complexity at the point of decision. Our job was to make that decision obvious.

But rejection is also a decision.

Approval is easy to understand. Something was requested, someone approved it. Rejection is different. If a request is rejected, the person who created it needs to understand what happened. So rejection is not just a status. It needs context.

What the requester used to see

Rejected.

What they see now

Rejected, and the reason the approver gave for it.

The approver gives a reason when they reject, and that reason becomes part of the request's history. That small piece of context is what makes the workflow useful after the decision has been made.

06

Every decision leaves a trail

Every decision leaves a trail.

The other thing we wanted to make explicit was when a decision happened. Every approval and every rejection carries a timestamp.

What the request shows

What it tells you

Created

Who raised it, and when

In progress

Which stage it has reached

Approved or rejected

Who decided, and when

Reason

Why, when the answer was no

We did not need to turn this into a complicated audit system for the experience to be useful. The important thing was making the history visible enough that people could understand what happened.

07

Two experiences

The workflow became two experiences.

By this point the product had two connected but very different jobs.

01 Configure

The business defines how requests should be handled. Title, description, request type, request kind, stages.

02 Execute

Members meet the workflow as requests move through it. Request, review, approve or reject, record.

That separation clarified the whole experience. The person creating the workflow is thinking about how the process should work. The person approving a request is thinking about what they need to decide right now.

Neither of them should have to think about the other one's job.

08

What we kept simple

There was always a temptation to add more.

More configuration. More statuses. More information. More controls. But approval is one of those experiences where complexity easily hides the thing that matters.

So we kept coming back to three questions.

  1. Can I understand what this workflow is for?
  2. Can I understand what this request needs from me?
  3. Can I understand what happened afterwards?

If the answer was yes, the workflow was doing its job.

09

From request to decision

From request to decision.

The finished experience is a straightforward sequence. Every step is small. The system is what they add up to.

  1. 01

    Create the workflow

  2. 02

    Define its request and stages

  3. 03

    A request is created

  4. 04

    It appears for the right approver

  5. 05

    The approver reviews it

  6. 06

    Approve or reject

  7. 07

    Decision and time are recorded

The individual interactions are simple. Together they make a predictable way to handle requests across a whole business.

Requests that used to sit for 6 hours were resolved in about 2.5 hours. Finance teams could see what needed their attention without asking where an approval was.

10

What I found interesting

A workflow looks small when you describe it as a list of screens.

Create workflow. View request. Approve. Reject. But the real product is the relationship between those screens.

A workflow has rules. Those rules create requests. Requests create decisions. Decisions create history. And that history is what gives everyone involved confidence about what happened.

That is where the design work really was. Not in making approval complicated, but in making the whole journey clear, predictable and easy to follow.

Nobody remembers an approval that worked. That is roughly the point of one.

Previous · Poseidon

A shared language for Hydrogen

Next · Handy

Voice notes that write themselves

Client

Earnipay

Year

2024

Timeline

4 months, 2024

Role

Senior Product Designer

Team

Product Manager

4 Engineers

Customer Success

Founder

Focus

Approvals

Workflows

Dashboard

Audit trail