Purlus
all work
sys/work/quicksell · case study

Quicksell: live auctions, with the money and the couriers done properly

An auction marketplace in South Africa where bids land live, every payment is split into item, fee, VAT and shipping, and the parcel gets booked with a real courier.

Type
Web platform
Built with
React, Node, Socket.io
Timeline
Aug 2025 to now
Status
Live, still shipping
quicksellsa.co.za
01 · the problem

An auction site is easy. The money and the parcels are not.

The client wanted an online auction house for South Africa: live bidding, card payments, local couriers, and seller payouts that come out right after VAT and fees.

When we picked it up, the admin dashboard was throwing errors, bidding was not reliably real-time, email was not sending and the payment flow was half done. It needed finishing, then it needed to keep growing while people were already using it.

02 · what we built

A marketplace that handles real money

Live bidding

Each auction is its own Socket.io room. A bid is pushed to everyone watching the moment it lands, and joining is checked against the buyer's region.

Four payment gateways

An internal wallet, AddPay, Traderoot and Stripe. Each branch can pick its own gateway and run on its own merchant account.

Five couriers, booked from the order

SA Post Office, ShipLogic, CourierIT, Pargo counter pickup and DHL Express, with rates, booking and status tracking wired in.

Pricing that adds up

One place splits every charge into item, platform fee, VAT and shipping, with rates set per region. Seller payouts come out of the same numbers.

Affiliates and trust

Referral codes with rate limits, KYC, two-factor login, seller applications, withdrawals and reviews.

Store operations

Multi-branch stores with point of sale, stocktake, returns and cash-up, plus a scheduler that opens and closes auctions on time.

03 · by the numbers

Where it stands

528

commits over 14 months, Aug 2025 to Oct 2026

90

pull requests reviewed and merged

5

courier integrations, from SA Post Office to DHL Express

4

payment gateways, chosen per branch

A full QA pass in September 2026 found an admin dashboard taking about 40 seconds and store screens broken by missing database indexes. All of it was fixed, and the platform kept shipping new payment and courier work after that.

04 · stack

What it runs on

Front end

  • React 18
  • TypeScript
  • Vite
  • Tailwind
  • Zustand
  • React Query
  • Socket.io client

Back end

  • Node.js
  • Express
  • Socket.io 4
  • Firebase Admin
  • Google Secret Manager
  • Resend

Data & hosting

  • Firestore
  • Railway
sys/next · your project

Need a marketplace that handles real money?

Tell us what you want built. You get a written scope and a fixed quote within one business day.