Dezenmart
Buy and sell with stablecoins, with every payment held in escrow until delivery.
Visit dezenmart.netlify.appDezenmart is a marketplace where anyone can buy and sell with stablecoins, and the money waits in an escrow contract until the buyer confirms the goods arrived. I've been its founding frontend engineer since 2025.
- escrow fee, shown before anyone pays
- 2.5%
- wallets in the connect sheet, plus MiniPay
- 5
- an on-ramp that delivers on Celo
- NGN to USDT
The problem
Buying from a stranger online asks for trust nobody has earned yet. Pay first and hope, or ship first and hope. Dezenmart replaces the hope with a contract: the buyer pays, the funds lock, and the seller is paid only when the buyer confirms delivery. Disputes have their own route instead of a group chat.
My role
Founding frontend engineer, from the first commit: the storefront, the wallet flows, checkout and the on-ramp, and later the admin console the team runs the marketplace from. Most of the people it's for have never held crypto, so most of the work is making a contract feel like a shop.
What I built
The marketplace
Browsing by category, product pages with quantity and delivery address, and a checkout that prices everything in USDT beside the buyer's own currency, with the escrow fee shown before anyone commits.





Wallets, and MiniPay
Wallet connection through RainbowKit: MetaMask, Coinbase Wallet, Valora, Trust Wallet and WalletConnect. Inside the MiniPay browser the wallet is already authorised, so the app connects silently and never shows a picker.


Naira in, USDT out
A Buy and Sell Crypto on-ramp that turns naira into USDT delivered on Celo, secured by Quidax, so a first-time buyer can fund a wallet without leaving the store. A six-step walkthrough explains wallets, stablecoins and escrow in plain words.


How it works
The newest build is a lean rewrite for production: the wallet and swap widgets load only when opened, code-split chunks recover from a stale deploy by reloading, and one maintained wallet picker replaced two hand-rolled ones.
- Buyer paysIn USDT, from any supported wallet
- Funds lockHeld by the escrow contract
- Seller shipsThe order shows as in transit
- Buyer confirmsOr opens a dispute
- Seller is paidReleased by the contract
In use: a first purchase
Tobi in Lagos wants a jersey set from a seller he's never met. He's never used crypto either. The walkthrough explains a wallet and USDT in six steps; he buys USDT with naira in the on-ramp and it lands on Celo. At checkout he sees the 2.5% escrow fee before he pays.
The money locks in the contract, and the seller ships. When the parcel arrives, Tobi confirms delivery and the seller is paid. Had it not arrived, he'd have opened a dispute, and the funds would have stayed locked until it was settled.
A worked example; Tobi is illustrative.