Direct Home
A verified, agent-free property marketplace for Hong Kong - built for trust from the first login, since without an agent in the middle, the platform has to do an agent's job.
Client Challenge
Direct Home lets Hong Kong property owners list and sell or rent without an agent. A listing had to move through draft, paid publishing, and admin approval - not just save to a database and go live. Without an agent in the middle, most of the platform needed to gate on verified email, phone, and HKID/identity before a deal could move forward. Offers, counters, viewings, and support all needed to live inside one real-time chat thread instead of scattered across email and phone calls, and letters of intent and tenancy agreements needed to generate straight from platform data, in a market where those documents carry real weight.
Objectives
- Replace agent-mediated verification with an email, phone, and HKID/KYC gate built into the platform itself.
- Keep negotiation - offers, viewings, files, support - inside one real-time chat thread.
- Generate legally-weighted paperwork (LOIs, tenancy agreements) straight from platform data, not manually.
Solution Design
We built the backend and web app end to end: NestJS and MongoDB on the backend, Next.js 15 on the frontend, largely delivered in Traditional Chinese to match Direct Home's Hong Kong market.
Email and phone OTP, Google OAuth, and HKID/identity/KYC review flows gate most of the API, so by the time two parties are negotiating, both are already verified. A dedicated Socket.IO chat namespace with event-driven message, unread, and offer broadcasts keeps property offers, viewings, files, and support in one running thread. Stripe Checkout runs behind a backend webhook rather than Stripe.js on the client - the web app simply redirects to a checkout URL and verifies the session on return. Letters of intent and tenancy agreements generate via pdfkit straight from platform data.
Implementation Process
Phase 1: Verification Design
Built email OTP, phone OTP via Twilio, Google OAuth, and HKID/identity/KYC review flows.
Phase 2: Backend & Negotiation
Shipped NestJS + MongoDB, Stripe Checkout, S3 media, geocoding, OCR, and Socket.IO chat.
Phase 3: Web App & Launch
Delivered the Next.js 15 web app with maps, chat, and admin surfaces, plus crons for expiring plans/listings and unread-message digests.
Results & Business Outcomes
An Owner Can Run It Themselves
List a property, get verified, negotiate in real time, and walk away with a Stripe-paid plan and a generated LOI or tenancy agreement, without ever leaving the chat thread.
One Console for Admin Oversight
The team reviews KYC and identity submissions, manages coins and listing plans, and tracks scout reports and enterprise accounts from the same backend that runs the public marketplace.
Technology Stack
System Architecture Flow
Draft → paid publishing → admin approval.
Email/phone OTP, Google OAuth, HKID/KYC review.
Socket.IO chat: offers, counters, viewings, files.
Stripe Checkout behind a backend webhook.
LOI & tenancy agreements from platform data.
Need an AI Strategy Before You Build?
Book a complimentary AI Architecture Review. We'll assess your use case, identify opportunities, evaluate technical feasibility, and provide clear implementation recommendations.