Kwame Motors — Car Parts Marketplace

Designing, owning and building a marketplace for car spare parts in Ghana

Role
Product owner, designer & developer
Client
My own product
Year
2026
Duration
Mar 2026 – now

Kwame Motors is my own product: an online marketplace where buyers in Ghana find car spare parts and pay by Mobile Money, card or cash on delivery, and sellers list parts, run their orders and get paid automatically once a parcel arrives. I designed it, own it and built it end to end. It’s live and in testing.

View live

sides in one product: buyers, sellers and admins
3
sides in one product: buyers, sellers and admins
ways to pay: Mobile Money, card or cash on delivery
3
ways to pay: Mobile Money, card or cash on delivery
pages, backed by 94 API routes
51
pages, backed by 94 API routes
automated tests on pricing, refunds and payouts
283
automated tests on pricing, refunds and payouts
scheduled jobs that keep orders, refunds and payouts moving
9
scheduled jobs that keep orders, refunds and payouts moving
of design and build so far
7 months
of design and build so far

The problem

Buying a car part in Ghana usually means calling around or going to a parts market in person. It’s hard to compare prices, hard to know who you’re buying from, and paying a stranger up front for a part that might be wrong is a real risk. Sellers, for their part, have few ways to reach buyers beyond the people who walk past.

I wanted one place where buyers find the right part, pay the way they already pay, and can see who they’re trusting, and where a seller can run a shop without building one.

What I did

  • Product: the vision, what goes into each release, and the rules the marketplace runs on: who pays which fee, when a seller gets paid, and what happens when an order goes wrong.
  • Design: the buyer, seller and admin experiences, from search and checkout to the seller dashboard and the verification flow, designed for phones first.
  • Build: the whole stack, with Mobile Money and card payments, refunds and seller payouts, email and SMS updates, and Ghana Card checks.
  • Quality: automated tests on every path that moves money, type checks and a secret scan on every push, and a testing phase on the live site before launch.

Five decisions that shaped it

Most of the product work in a marketplace is deciding who carries the risk when something goes wrong.

Hold the money until the part arrives

The situation
Buyers don’t know the sellers. Paying a stranger up front for a part that might be wrong is the main reason to stay offline.
My call
Online payments stay with the marketplace until the parcel is delivered and the buyer confirms it, or a short hold runs out. A return request or a problem report freezes the seller’s payout until it’s settled.
What happened
Buyers can pay online without having to trust the seller first, and sellers are paid automatically once delivery is confirmed.

Keep cash on delivery

The situation
Plenty of buyers would rather pay when the part is in their hands. Making online payment the only option would turn them away.
My call
I kept cash on delivery next to Mobile Money and card. The seller collects the cash directly, and the payout system leaves those orders out.
What happened
Buyers pay the way they’re used to, and online payment is a choice rather than a barrier.

Let new sellers start, with limits

The situation
Checking every seller’s Ghana Card before they can list anything is the safest option, but it would stop new sellers at the door.
My call
Unverified sellers can sell with a badge, up to 10 listings, and have 30 days to get verified. A shops directory shows verified and verified-business badges, most trusted first. Payouts only go to verified sellers whose account name matches their Ghana Card.
What happened
Sellers can try the marketplace straight away, buyers can see exactly who they’re buying from, and money only goes to people whose identity has been checked.

Decide who pays when an order is cancelled

The situation
Paystack keeps its fee when a payment is refunded, so every cancellation costs someone money.
My call
I set it as a rule: a buyer who changes their mind covers the fee, a seller covers it when they cancel or run out of stock, and the marketplace covers payment faults. Each cancellation can only be refunded once.
What happened
Refunds are predictable for everyone, and a retry can never refund twice.

Make the marketplace run itself

The situation
Orders stall when a seller doesn’t respond, a payment confirmation goes missing or a refund gets stuck, and nobody can watch every order by hand.
My call
A scheduled job cancels and refunds orders a seller hasn’t accepted within 48 hours, approves cancel requests ignored for 24 hours, checks unconfirmed payments with Paystack, retries refunds and sends payouts. Every step is safe to run twice.
What happened
No order waits on me to move forward, and anything missed is picked up on the next run.

How it’s built

  • Next.js and TypeScript on Vercel, with a Postgres database through Prisma.
  • Paystack for Mobile Money and card payments, refunds and seller payouts. Prices are always recalculated on the server, and payment notifications are signature-checked.
  • Email and SMS for order updates and phone verification.
  • Ghana Card documents in a private store: every admin view is logged, and documents are deleted 90 days after a decision.
  • Rate limits on sign-in, checkout and uploads. Tests, type checks, lint and a secret scan run on every push.

The product

The Kwame Motors storefront on desktop, with a spark plug set open on a phone beside it
The storefront and a product page. The catalogue is demo stock while the marketplace is in testing.

Where it is now

Kwame Motors is live and in testing. Payments run in Paystack’s test mode, so no real money moves yet, and the catalogue is demo stock.

Before launch: switch payments and payouts to live, verify the email domain and the SMS sender name, turn on the automatic Ghana Card check, and register with Ghana’s Data Protection Commission, because the platform handles ID documents.

  • Next.js
  • TypeScript
  • Postgres
  • Paystack
  • Vercel
  • Claude

up next →

Design Chapter Hub — AmaliTech Design Assets

One home for AmaliTech’s design assets, with links that never break