
$2M+
processed
300+
vendors
0
double-charges
Web App2024·16 weeks·completed
Marketplace Commerce Platform
Backend Lead — ShopHub
A multi-vendor marketplace handling secure split payments, payouts and webhooks across hundreds of sellers.
The Challenge
Processing money securely with idempotent split payments and reliable multi-vendor payouts.
The Solution
Idempotent webhook handlers, a ledger-based payments model and queued payouts with automatic retries.
Key Highlights
$2M+ processed with zero double-charges
300+ active vendors with automated payouts
Idempotent webhook processing
Double-entry ledger for financial accuracy
Code Highlights
Idempotent webhook
if (await seen(event.id)) return ok();
await recordLedger(event);Checking event id first makes webhook handling idempotent.
Ledger entry
DB::transaction(fn() => Ledger::post($debit, $credit));A double-entry ledger inside a transaction guarantees correctness.
Tech Stack
LaravelPostgreSQLStripeDocker