CLIENT: Ruen Kham Software Co., Ltd.🇹🇭Thailand

Khomfai - Short-Let Host Dashboard for Small Hosts in Thailand

Self-Serve Host Dashboard for a Thai PropTech Start-Up

Designed and built a clickable host dashboard for a Chiang Mai SaaS start-up whose customers run 1 to 10 short-let listings themselves: one calendar across Airbnb, Booking.com, Agoda and Vrbo, a Today screen ordered by urgency, foreign guest reporting (TM30) tracked per guest, and nightly price suggestions that stay inside the host's own limits.

Scope of Work
Product design, UI build and clickable demo
Industry
Real Estate / Short-Let Hosting
SaaS
Compliance & Certifications
Hotel Act B.E. 2547Immigration Act B.E. 2522 (TM30)PDPA (Thailand)

Most of our work is under NDA. Per agreement, we can share the work but not the company details - all names and identifying information shown here have been changed.

Impact

5 Screens
Clickable end to end

Today, the multi-listing calendar, reservations, reservation detail and price suggestions. Every one of the 30 demo reservations opens its own detail page.

24 Hours
TM30 deadline per guest

Each foreign adult's report is due 24 hours after arrival (Ruen Kham's default, to confirm), shown as due soon or overdue, prepared field by field and marked reported with the immigration reference.

174 Suggestions
Inside each host's limits

Nightly prices for the next 90 days from 7 reasons, such as weekend, event, high season, gap night and last minute, never below the listing's minimum or above its maximum.

30 Reservations
Realistic demo data

4 listings in Chiang Mai and Koh Samui, 29 guests from 18 countries, 4 booking channels plus direct, 3 cleaners, 5 Thai holidays and events, and one overlapping booking to resolve.

The Problem

Before writing any code, Ruen Kham's founders interviewed 60 small hosts in Chiang Mai, Bangkok, Phuket and Koh Samui. Almost all of them ran their listings from the channel apps on their phone, a paper or Google calendar, LINE chats with their cleaner and a notes file of copy-pasted replies. Double bookings happened between Agoda and Airbnb, prices were set once and never changed for Loy Krathong or Songkran, foreign guests were reported to immigration late or not at all, and income was rebuilt from payout emails at tax time.

Our Solution

Khomfai gives a host with a few listings one place to work from: one calendar for every listing and channel, a Today screen that lists what needs doing first, a reservation page with guest details, TM30 status, messages, access and cleaning, and price suggestions the host accepts, edits or lets apply automatically within their own minimum and maximum.

The Challenge: Running Short Lets Without a Manager

Existing tools were built for property managers with dozens of units and staff teams. A host with two condo units still faces the same channel limits, immigration duties, personal data rules and licensing questions, with no one to handle them.

Channels That Do Not Talk to Each Other

Booking channels allow API connections only through approved partners. iCal shares blocked dates only, not prices or guest details, and each channel imports it on its own schedule, so it cannot fully prevent double bookings.

Reporting Foreign Guests on Time

Under the Immigration Act B.E. 2522, the owner or possessor of a residence where a foreign national stays is generally required to notify immigration on form TM30, commonly within 24 hours of arrival. There is no public API, so the host still files it.

Passport Data Under the PDPA

The host is the data controller for guest data and Ruen Kham the processor. Passport details may be collected only for foreign guests at listings that report stays, must not sit in chat apps, and are purged on a retention schedule (90 days after check-out by default, to confirm).

Licences and Condo Rules Nobody Tracks

The Hotel Act B.E. 2547 generally needs a licence or, for small accommodation, a notification to the local registrar. Daily rentals of condo units carry legal risk and many buildings ban stays under 30 days. Hosts rarely record either.

Our Approach: From Host Interviews to a Clickable Dashboard

01

Spec and Rules Research

Mapped 5 user roles (host, co-host, cleaner, guest and accountant), 31 screens across the host app, cleaner and guest magic-link pages, and the data model for listings, compliance records, channel connections, reservations, guest registrations, pricing profiles, cleaning jobs, money and an audit log. Wrote down the rules the design follows, hedged for a lawyer to confirm: the Hotel Act, condo short-stay risk, TM30 under the Immigration Act, the PDPA and income tax on host income.

02

Clickable Demo on a Production UI Kit

Built 5 key screens on a production dashboard kit: Today with check-ins, check-outs and a Needs attention list with working actions, the multi-listing calendar with channel colours, overlaps, blocks and nightly prices, reservations with TM30 and details filters, the reservation detail with Prepare TM30 and Mark reported, and price suggestions with a chart, reasons and auto-apply mode. A listing switcher filters every screen; all actions run on local state.

03

What a Production Build Adds

A channel manager partner API (such as Channex or Rentals United) with iCal as the fallback, LINE, WhatsApp, email and SMS messaging, sign-in by magic link, Google, Apple or LINE, Opn Payments or Stripe billing, DeepL translation, push notifications and S3 storage in a region confirmed under the PDPA. Field-level encryption for passport numbers, an append-only audit log, the nightly purge job, the remaining 26 screens (including the cleaner and guest magic-link pages) and the mobile app.

Why It Works: The Day's Work on One Screen

Urgent First, Then Everything Else

Needs attention puts overlapping bookings, sync errors and overdue TM30 reports in red at the top, then unanswered messages, check-outs without a cleaner, arrivals without details, price suggestions, reviews and set-up tasks, each with the button that fixes it.

Overlaps and Sync Problems Are Visible

Two bookings on the same night stack in red with "Overlap" on the calendar and the reservations list, and each listing shows its sync line, such as "Agoda iCal · imported 3 h 6 min ago" in red when the saved link has gone out of date.

Passports Masked, Reports Recorded

Passport numbers show only the last four digits and each reveal is logged. Khomfai prepares the TM30 fields with copy buttons, the host files the report, and the reference they receive updates the status everywhere.

The Host Sets the Limits

Every suggestion shows its reasons and stays within the listing's minimum and maximum. Switching a listing to auto-apply asks for confirmation and repeats those limits, and iCal-only channels are flagged because they cannot receive prices.

Logo
Oceanlab

Enterprise Software Engineering - Human + AI

Languages

Locations

Global Headquarters

21 Merchant Road, 3rd Floor, Singapore 058267

Main corporate office and leadership operations

North America Office

548 Market Street, PMB 12345, San Francisco, CA 94104

Client operations and business development

India Office

402 Shivalik Shilp II, SG Highway, Ahmedabad 380015

Engineering and delivery center

© 2026 - Copyright. All Rights reserved Oceanlab