Domain Bidder — Domain auction platform

Sell premium domain names without the hassle. Point your DNS, and the platform generates auction pages, manages bids, processes payments via Stripe and coordinates the transfer.

Marketplace
Stripe payments
Node.js
PostgreSQL

Role & scope

Fully designed and built: from architecture to production. The platform automatically detects domain names via HTTP Host headers, generates a unique auction page per domain and manages the entire auction process — from the first bid to Stripe payment and domain transfer.

  • Automatic domain detection and registration via Host-header routing — an unlimited number of domains on a single platform.
  • Cooling-period auction system: every new bid resets the timer, preventing sniping and ensuring the highest bidder wins.
  • Stripe integration with support for credit card and iDEAL. EUR for .nl domains, USD for the rest.
  • Seller dashboard with full control: minimum bid, reserve price, cooling period and login requirements per domain.
  • Automated invoicing, payment reminders and lifecycle management via cronjobs.
View live platform

Impact

  • Zero setup for sellers: configure your DNS and the platform does the rest — auction page, bids and payment fully automated.
  • A fair auction system with cooling periods that prevent sniping and guarantee true market value.
  • Low-barrier revenue model: no fixed costs, just 10% commission on a successful sale via Stripe.
  • Built to scale with PostgreSQL and row-level locking for reliable, concurrent bidding.

Architectuur

Eén Node.js-codebase kan een onbeperkt aantal domeinen bedienen via HTTP Host-header routing, waardoor geen aparte uitrol per domein nodig is. PostgreSQL slaat biedingen, veilingstatus en gebruikersinformatie op, met row-level locking zodat gelijktijdige biedingen op dezelfde veiling geen race conditions veroorzaken. De logica van de afkoelperiode is geïntegreerd in de database: elk nieuw bod verlengt het sluitingstijdstip, en een cronjob controleert regelmatig welke veilingen kunnen worden afgerond. Stripe-webhooks met handtekeningverificatie zorgen ervoor dat de betalingsstatus betrouwbaar gesynchroniseerd blijft.

Modelkeuze

Bewust geen AI/LLM als fundament van dit platform. De veilingstructuur en betalingsprocessen vereisen voorspelbaarheid en controleerbaarheid, niet de flexibiliteit die een taalmodel biedt — dit systeem is deterministisch. De enige automatisering betreft regelgebaseerde facturatie en betalingsherinneringen die via cronjobs worden verzonden.

Kosten & latency

  • Lage hostingkosten: Node.js met PostgreSQL op een enkele of kleine virtuele machine in plaats van serverless per domein.
  • Stripe hanteert een standaardtarief per transactie, naast het eigen platformcommissie van 10% bij succesvolle verkoop.
  • Row-level locking houdt de biedingslatency laag (meestal onder 100 ms), ook bij meerdere gelijktijdige biedingen op dezelfde veiling.

Lessons learned

De eerste veilingimplementatie had geen afkoelperiode en was daardoor kwetsbaar voor sniping — een bod in de laatste seconde. Het toevoegen van een cooling-period (elk nieuw bod verlengt de sluitingstijd) loste dit op. Host-header routing bleek achteraf cruciaal: nieuwe domeinen toevoegen vereist geen extra infrastructuur, alleen een DNS-wijziging bij de verkoper.

Concept — cijfers ter illustratie, nog te verifiëren tegen het daadwerkelijke project vóór publicatie.