Marketplace platform ยท Villa rental, Sri Lanka
The operating platform behind a villa marketplace
Not a website. An operating system for a business that happens to have a website attached to it.
- Automated workflows
- 6
- Guardrail layers on the AI
- 8
- Channels into one CRM record
- 4
- AI-confirmed bookings
- 0 by design
The situation
A villa rental business on Sri Lanka's southern coast, selling stays a traveller researches for weeks and books once. Enquiries arrive from everywhere: a form on the site, a WhatsApp message, a direct message, a returning guest who booked last year on a different phone. Each one is the same person to the business and a different record to the software.
The brief was never "build us a website." The site was the easy part. The hard part was that the business had no single place where a guest existed.
What we built
Four channels, one record
Web enquiry form, WhatsApp click-through from a villa page, cold WhatsApp message, and returning-guest contact all converge on a single CRM person. That sounds trivial and isn't. It's identity resolution. Before creating anyone, the system normalizes and searches on phone and email, reuses and enriches a match when it finds one, and routes genuine conflicts to a human review queue rather than guessing.
The failure mode we were designing against is mundane and expensive: three conversations with the same guest sitting in three records, so nobody knows they've already been quoted.
A catalog that deploys the site
Villa content lives in an admin database the operations team actually uses. Editing a row triggers a chain that regenerates the site's data, rebuilds it, and deploys it to the edge. No developer, no ticket, no "can you update the site" message on a Saturday. Images serve from object storage on their own domain rather than being proxied.
This is the unglamorous half of most operations work: the person who knows the content should be able to change the content.
An AI assistant with its hands tied
First-contact WhatsApp conversations are handled by an assistant that qualifies, asks the questions a salesperson would ask, answers from the live villa catalog, and hands off with the full context attached. It sits inside eight layers of guardrail (a label gate, input screening, rate and turn limits counted in the database, output validation), and it is structurally prevented from confirming a price, confirming availability, or committing to a booking.
The exact pipeline, stage by stage, is traced on the homepage. See how one message actually moves through it. It's the clearest illustration we have of where we think AI belongs and where it very much doesn't.
What we'd point at
The assistant has confirmed no bookings, because it cannot. It can never promise a guest a price or a date the business is unable to honour, which is the failure that costs a hospitality business a reputation rather than a sale. Every commercial commitment passes through a person who is accountable for it, and a single label change pulls any conversation back to a human mid-sentence.
A system that can't do the dangerous thing is worth more than one that's merely been instructed not to.