Loading
About the Project

Property, Rentals & Chalets — One Marketplace

Khayma is a real estate marketplace that brings three products under one platform — buying and selling property, listing long-term rentals, and reserving chalets by the shift. It runs across a native mobile app for customers, a web surface for browsing, and dedicated dashboards for merchants and administrators, all powered by a single privacy-first API.

The idea was to take three very different transactions — a high-value property sale, a long-term lease, and a same-day chalet booking — and run them through one consistent, trustworthy system where listings stay anonymous, slots never double-book, and every state change is auditable.


Buy & Sell Property

Customers list a property for sale in a few steps and see the transparent platform fee before they submit. Every listing goes through an admin approval workflow before it reaches the public marketplace, and once it is live it carries zero owner-identifying data — buyers browse full property details with no name, phone, or email attached. Interested buyers submit a purchase request, and admins move it through its lifecycle until the property is marked sold.


Long-Term Rentals

The same trusted flow extends to long-term rent listings — with rent amount, deposit, lease length, and furnished status — kept entirely separate from the sale product. Renters browse approved listings, submit a rent request, and the admin team drives it to completion.


Chalet Daily Rental

The platform's real-time revenue engine. Merchants own chalets; admins configure them and set them live. Each day exposes two shifts — morning and evening — and customers reserve one or more slots, paying a configurable reservation fee online while the rest is settled with the merchant. Reservations use a hold-then-confirm flow: a slot is held the moment payment starts, confirmed on the gateway webhook, and auto-released if the hold expires — making it impossible for two customers to ever book the same slot.


Built for Operators

Merchants get a focused dashboard showing only their own chalets, bookings grouped by day/week/month, occupancy rates, and cash to collect. Admins get the full picture — revenue per product, pending listings and requests, conversion funnels, top performers, and approval rates — backed by an append-only audit log, soft-delete recovery, configurable fees and refund rules, phone + OTP authentication, role-scoped access, and rate limiting throughout.

  • Phone + OTP Authentication — No Passwords
  • Property Sale Listings with Admin Approval Workflow
  • Long-Term Rent Listings (Deposit, Lease, Furnished Status)
  • Chalet Daily Rental with Morning/Evening Shift Booking
  • Real-Time Availability Calendar per Chalet
  • Concurrency-Safe Reservations — No Double-Booking
  • Hold-Then-Confirm Payment with Auto-Release
  • Privacy-First Listings — Zero Owner-Identifying Data
  • Purchase & Rent Request Lifecycle Management
  • Owner Listing Stats — Views, Saves, Requests
  • Save / Favorite & "Overpriced" Crowd Signals
  • Merchant Dashboard — Chalets, Bookings & Occupancy
  • Admin Operations Dashboard — Revenue, Funnels & Analytics
  • In-App & Email Notifications on Every Lifecycle Event
  • Configurable Platform Fees, Cancellation & Refund Rules
  • Append-Only Audit Log & Soft-Delete Recovery
  • Native Mobile App for iOS & Android
  • Tiered Rate Limiting & Role-Scoped Access Control
Khayma

How It Was Built

Our process
Discovery & Domain Modeling Icon
01 .
Discovery & Domain Modeling

Mapped three distinct products — property sale, long-term rent, and chalet daily rental — across three roles (customer, merchant, admin). Defined the lifecycle of every listing, request, and reservation before a line of code was written.

API & Data Architecture Icon
02 .
API & Data Architecture

Built the core API on Laravel with phone + OTP authentication and role-scoped tokens. Designed the data model around privacy — public responses carry zero owner-identifying fields, enforced by automated tests on every build.

Booking Engine & Concurrency Safety Icon
03 .
Booking Engine & Concurrency Safety

Engineered the chalet shift system — per-day morning and evening slots with a hold-then-confirm payment flow. Database-level locking guarantees that no two customers can ever reserve the same slot.

Customer Surface & Mobile App Icon
04 .
Customer Surface & Mobile App

Delivered the buyer-facing experience — a native iOS and Android app plus a web browsing surface — for discovering listings, submitting requests, and reserving chalets with a transparent fee shown before every commitment.

Merchant & Admin Dashboards Icon
05 .
Merchant & Admin Dashboards

Built a merchant dashboard scoped strictly to each merchant’s own chalets, bookings, and occupancy, and a full admin operations dashboard covering revenue per product, pending queues, conversion funnels, and top performers.

Payments, Notifications & Hardening Icon
06 .
Payments, Notifications & Hardening

Wired in online reservation payments, in-app and email notifications on every lifecycle event, configurable fees and refund tiers, an append-only audit log, soft-delete recovery, and tiered rate limiting across the platform.

Khayma preview
Project Insights

Behind the
decisions we made.

Three Products, One Platform

Khayma is not a single app with extra features bolted on — it is three genuinely different transactions (a property sale, a long-term lease, and a same-day chalet booking) running through one consistent system, with shared identity, payments, notifications, and trust rules.

Privacy & Trust by Design

Every public listing is anonymous by construction — no owner name, phone, or email ever leaves the API. This guarantee is not a policy, it is enforced in code and asserted by automated tests on every build, so trust is structural rather than promised.

Concurrency-Safe by Construction

The chalet booking engine makes double-booking impossible. With hold-then-confirm slots and database-level locking, two customers racing for the same shift always resolve to exactly one winner — the kind of correctness that only matters when it is absolute.

Get In TouchStar

Get In TouchStar

Get In TouchStar

Get In TouchStar

Get In TouchStar

Get In TouchStar

Get In TouchStar

Get In TouchStar

Get In TouchStar

Get In TouchStar

Get In TouchStar

Get In TouchStar

Contact Us

Contact Us

Contact Us

Contact Us

Contact Us

Contact Us

Contact Us

Contact Us

Contact Us

Contact Us

Contact Us

Contact Us