How to build a rental booking platform with OpenAI Codex
Build a rental marketplace that runs bookings your way, not a vendor’s. Guests search and book, hosts manage their own listings and payouts, and you step in from an admin panel when something needs a human. Describe the whole thing in plain language from your terminal, and Codex writes the backend, auth, and every screen around it.
OpenAI Codex
$ Build a rental marketplace where guests can search and book stays, hosts manage their own listings and payouts, and an admin steps in on disputes. Lock every table down with row-level security so each role only reaches its own data.
- Schema and calendar in place
- Roles and payouts wired up
- Ready for your review
What a rental booking platform actually is
A rental booking platform, the shape Airbnb popularized, is where guests search and book a stay, hosts list a property and get paid for it, and someone in the middle keeps the whole marketplace honest.
Before a platform like this, a host runs bookings over email, a shared calendar, and a bank transfer, so double-bookings happen, payouts get delayed, and disputes have nowhere to go. A rental marketplace pulls all three sides into one system.
The genuinely hard parts are the availability calendar, which can never double-book a night, and the booking-and-payment lifecycle that holds a guest’s money, confirms the stay, and eventually pays the host their share. The listing pages are the easy part. Get those two right and the rest of the marketplace is mostly screens on top.
Three sides, one system
Guests, hosts, and admin all work off the same data: a booking a guest makes is the same row a host gets paid against, and the one an admin sees if something goes wrong.
A calendar that can’t lie
Availability has to be enforced in the database, where it can’t be gamed, rather than hidden in the UI, or two guests can end up confirmed for the same night.
Money that moves twice
A booking payment is held, confirmed, and then split into a host payout and a platform commission. Model that lifecycle once, and every screen that touches money reads from the same truth.
A market moving fast
$219.9B
in global short-term rental bookings in 2025, growing at a 5.3% clip toward $270.6B by 2029, per Phocuswright’s 2026 market-sizing report.
Phocuswright Research, 2026 (Global Short-Term Rentals 2026 report) · checked August 2026
The parts every rental platform is built from
Before you build, it helps to know the pieces. Almost every rental marketplace comes down to these six. Each one is something you can ask your AI coding tool to build or extend in plain words.
Listings and search
Hosts create listings with photos, amenities, and pricing. Guests search and filter by location, dates, and price. Everything else in the marketplace hangs off a listing.
An availability calendar that can’t double-book
Each listing’s calendar blocks a date the moment it’s booked, so two guests can never be confirmed for the same night.
The booking and payment lifecycle
A guest requests dates, pays, and gets a confirmation. The booking moves through hold, confirmed, completed, or cancelled without anyone editing a spreadsheet.
Host payouts and commission
The platform takes its cut and pays the host the rest, on a schedule the host can see, rather than a manual transfer you run yourself.
Reviews and messaging
Guests and hosts message each other about a booking and leave reviews afterward, so trust builds the way it does on any real marketplace.
Admin moderation and disputes
An admin has to step in when a listing is misrepresented or a booking goes wrong. Moderation tools and a dispute queue are what make that possible.
Own your marketplace or rent the software forever
Most people building a rental business reach for hosted booking software, then watch the bill climb with every listing they add. Owning your platform flips that. Here’s the trade-off, side by side.
Build your own
Your own rental platform is a one-time build you shape exactly to how you run bookings, and with an AI coding tool writing the plumbing, that build is days, not a quarter.
- Pay to build it once, then only your own infra bills: no per-listing or per-booking fee
- A booking flow, cancellation policy, and payout split that match exactly how you run stays
- Add unlimited listings and hosts without jumping to a bigger tier
- Keep 100% of your booking revenue: no revenue-share cut to a vendor
- Add your own AI features on the model you choose: guest replies, pricing suggestions, listing copy
- Full ownership of the code and data: export anytime, zero lock-in
Buy hosted booking software
Lodgify · Guesty · Hostaway · SharetribeHosted booking software, or a no-code marketplace builder, is faster to switch on, but the bill scales with every property, listing, or transaction you add, and you work inside their calendar and payout rules.
- Live in minutes: sign up and start, nothing to build or host
- Channel sync to Airbnb and Booking.com on Lodgify, Guesty, and Hostaway, but not on Sharetribe, which is its own marketplace rather than a channel manager
- Support and onboarding included
- Per-property, per-listing, per-reservation, or (on Sharetribe) a subscription plus per-transaction fees past a free quota. Every shape climbs as you grow
- Their booking flow, cancellation rules, and payout schedule: not yours to change
- Deep customization is capped or unavailable
- Your guest and payout data live on their servers
Basic and Starter are hard-capped at 1-2 properties, so a real multi-property operator lands on Professional or Ultimate, from $42/mo (1 property, annual) up to $270/mo (10 properties, Ultimate, monthly). Lodgify’s own FAQ, verbatim: “No, there’s no setup fee when joining Lodgify. Free onboarding is included,” and “No. Lodgify does not take a cut of your bookings. You pay a flat subscription fee and keep 100% of your rental income.”
lodgify.com · checked August 2026
Lite carries a flat 1% per-reservation fee on top of the subscription. Guesty’s page doesn’t say whether that continues once you’re quoted into Pro. Our three-sided marketplace competes with a multi-listing operation, which is Guesty’s Pro tier: no public price, quote only.
guesty.com · checked August 2026
Hostaway’s pricing page is a lead-gen funnel: it asks how many listings you manage, then asks for contact details to “get a free quote.” No price is published anywhere on the page, at any tier.
hostaway.com · checked August 2026
Build is the test-only plan, so a live marketplace starts at Lite. Lite has no custom domain, which is why Pro is the tier most marketplaces actually launch on: it adds a custom domain and third-party integrations, and includes 250 free transactions a month, then $0.19 or less per transaction beyond that. The page publishes yearly rates only, so no month-to-month figure is quoted here. Payment processing is not included: Sharetribe’s own FAQ says, verbatim, “Typically, this is around 1.5-3% of the transaction size,” charged by Stripe on top. Setup fee: none. The FAQ states, verbatim, “All of Sharetribe’s fees are outlined on this page.”
sharetribe.com · checked September 2026
Rule of thumb: if you run more than a handful of properties and want the booking flow, cancellation policy, and payout split to match exactly how you operate, building your own pays for itself within months of what a per-listing subscription would have charged. If you need built-in OTA channel sync today and would rather not touch a codebase, buy, then revisit once the bill outgrows the value.
Why build with Codex
Most software looks simple from the outside, but almost all of the actual work is invisible: a database, logins, permission checks, forms that validate what people type, and dozens of screens that read and write records. Doing that by hand means knowing the whole stack cold, so weeks pass before the first feature a customer would notice actually works.
Codex closes that gap by working the way a developer would, just faster. The whole workflow becomes a simple loop:
Describe
Tell Codex what you want, in plain language.
Build
It edits the real project files, backend and auth and UI, rather than replying in a chat.
Check
Run the app yourself and confirm the change works.
Repeat
Describe the next change.
None of that loop needs a computer-science background, which is why one person can take an idea to a working app over a handful of focused sessions.
Three hard partshandled for you
The data model, authentication, and access rules are the pieces that make software like this genuinely hard to build alone. Describe them and Codex scaffolds all three, leaving mostly screens to build on top.
Any language is the interface
There’s no code to write, and no requirement to describe it in English. Ask for a new field, a renamed step, or an AI summary in whatever language you think in, and Codex implements it.
Local files it edits directly
Codex works on the project on your own disk rather than a copy somewhere else, so what it changes is exactly what you see when you run the app. Point it at the handful of files that matter and it stays fast and focused.
Pay a developer, or do it with AI
Two ways to get the same app built: pay a developer for their hours, or spend your own describing it to an AI coding tool. Here is what each one costs to build, and what it costs to keep running once it is live.
Hire a developer
Custom build, from scratch- Developer
- ~$15k-$58k
- Supabase (backend)
- Free tier · $25/mo (Pro plan)*
- Hosting
- $0 free tier
- Build time
- ~290 hrs of their work
~$15k-$58k to build, then ~$25/mo after launch
That range is our ~290-hour estimate priced at market dev rates: North American freelance rates run about $40-$150/hr depending on seniority, and agencies add another 20-40% on top, so roughly $50/hr at the low end up to ~$200/hr for an agency, all spent just to get listings, bookings, payouts, and admin moderation working before launch. After that, your only ongoing costs are Supabase and hosting.
Build it with Codex
From scratch, with Codex- Codex
- ~$20/month (Plus) to ~$200/month (Pro)
- Backend (Supabase)
- Free tier · $25/month (Pro plan)*
- Hosting
- $0 on a free tier
- Your time
- ~139 hrs
~$20-$200/month while you build, then whichever plan you keep using
Codex itself is free to install. The cost sits in the ChatGPT plan behind it, or in API usage if you sign in with a key instead. Plus, around $20/month, covers a template import or a short build. A from-scratch build that runs for weeks usually needs Pro’s top usage-multiplier tier instead, which lands around $100 to $200 a month. The fee doesn’t shrink when you start from a template the way a per-hour developer bill would: the template changes how many of the hours in the estimator above you actually spend, not which ChatGPT plan you’re paying for.
* Supabase is free while you build and for light use, though projects pause after 1 week of inactivity, and the free tier caps you at 500 MB of database and 2 active projects. The Pro plan, from $25/mo, keeps your database running around the clock for real guests and hosts.
Either way you own the code outright, so there is no per-listing subscription and every new host account costs you nothing. The one cost neither column shows is the payment processor’s fee on each booking, because a guest’s money has to reach a host somehow. That fee is a percentage of what you take rather than a monthly bill, so it grows with your bookings and not with your listings. The payments section below prices the three usual ways to move it.
Prices and rates from supabase.com, developex.com and learn.chatgpt.com, checked August 2026.
Decide before you build
Get these right before you start building, and the rest is smooth sailing. Each is a decision to make, not code to write.
What a listing is
Every booking starts here: title, description, location, photos, amenities, base nightly price, and any extra fees (cleaning, pet, weekend). Decide what a listing needs before you write the schema, because it is the one table everything else links to.
Availability and pricing model
Price nightly, weekly, or both. Add a minimum-stay rule, blackout dates a host blocks by hand, and whether price varies by season or day of week. Settle this early, because it shapes the calendar table and the booking form both.
Who takes payment, and how payouts split
Decide whether your platform account takes the guest’s payment and pays the host their share afterward, or the host’s own connected account takes it directly. Either way, settle your commission percentage before you build the payout logic, not after.
Three-sided roles
Guest, host, and admin, plus whether one person can be both a guest and a host on the same account, which is the normal case on a real marketplace. Decide this before you write the access rules, because it changes what a role even means.
Cancellation policy
Flexible, moderate, or strict, plus how much of the guest’s payment gets refunded at each cutoff. This is a business decision as much as a technical one, and it drives the refund logic in the payment lifecycle.
Which payment provider
Stripe Connect is the standard choice for a marketplace that splits one payment between the platform and a host, because it is built for exactly that. Decide this up front, because it shapes the payments schema and the payout screens both.
Comparing your build options
The starting point decides how many of these hours go to setup instead of the features guests and hosts actually see. Here’s the same rental marketplace built three ways: by hand, with a UI kit that leaves the backend to you, or end-to-end with Codex working on the real source.
Weeks of setup (three sets of accounts, an availability calendar, payments, and payouts) before writing your first real feature. Full-stack complexity, entirely on you.
You get front-end screens for guests, hosts, and admin, but nothing behind them: no database, no booking logic, no payouts. The entire backend is still yours to build.
Point Codex at the repo and describe what’s missing. It edits the real backend, auth, and UI itself, from the terminal or an editor extension. The same task list, done by an agent working directly in your codebase.
Estimate your exact build timeframe
Tick the features your marketplace actually needs and get an instant, realistic estimate tailored to your exact scope, so you stop guessing at a timeline.
Your estimate
139 hrs
start to finish
Based on the 6 of 6 features you’ve selected, plus ~34h of groundwork. Toggle any on the left to watch the number move, and open the groundwork row to untick what you have already, such as a database that is already running or going live if you are only building a mock-up for now.
A rough estimate, not a quote. Real time depends on how much you customize and how clean your data is.
Let’s set up the tools you need
Before step 01, four things go on your computer. It takes about 15 minutes in total, and none of it is coding. Three are ordinary installers, and the fourth is a ChatGPT plan with Codex access switched on. After that, you build by describing what you want in plain language.
OpenAI Codex
Your main AI assistant. The app itself costs nothing and installs with a single command from OpenAI, then runs in your Terminal. What it costs to use is the next card: every request spends the usage allowance on your ChatGPT plan, and the free plan’s allowance is small enough that a build of this size stops early. Codex is also built into an extension for popular code editors and into the ChatGPT desktop app, which can hand a longer task off to Codex cloud to keep running in an isolated environment while you do something else.
Install Codex CLIChatGPT plan
Codex is technically included on the free ChatGPT plan too, but Free’s usage is the tightest of any tier. OpenAI doesn’t publish Free’s own cap, only that every paid tier gets a larger multiple of it, so treat Free as a way to try Codex rather than to build with it. ChatGPT Plus, around $20/month, is the realistic starting point, and a long, from-scratch build tends to need the top ChatGPT Pro tier, priced by usage multiplier at roughly $100 to $200/month. Codex can also run on pay-as-you-go API billing instead of a ChatGPT plan, if you’d rather pay per token than hold a subscription.
Compare ChatGPT plansNode.js engine
The engine that runs your app on your own computer. You never have to learn how it works: download the version marked LTS (the most stable one), install it, and forget about it.
Download Node.js (LTS)Supabase (database)
Where your project keeps its data. Install it, then sign in once by running supabase login. Words like migrations and row-level security turn up later in the guide, and Codex writes those parts for you.
Install Supabase CLINothing here is worth memorizing. These four just need to exist on your machine. From step 01 on, you say what you want and Codex runs the commands.
Build your marketplace core, one Codex task at a time
You still write no code. Describe what you want and Codex writes the files and runs the commands. The tasks below build the marketplace core in order: set up the project, define the data model, wire up auth and roles, lock the data down, and generate the screens. Hand Codex one task, review the diff it produces, then move to the next.
- 01
Bootstrap the project behind an AGENTS.md file
Wire up an empty app that talks to your database, and hand Codex an AGENTS.md file so its conventions carry forward without you repeating them. One task covers the whole setup.
PromptSet up the projectBefore you scaffold anything, write an AGENTS.md at the project root covering the stack (React 18, Vite, TypeScript, Tailwind, the Supabase JS client) and whatever conventions you want kept from here on. You’ll load that file automatically at the start of every task after this one, so nothing in it needs repeating by hand. Then build the project itself: wire up a typed Supabase client under src/lib, pulling VITE_SUPABASE_URL and the publishable key (the sb_publishable_… key that replaced the older anon key) from .env, and confirm .env is already listed in .gitignore so neither value can reach GitHub. Start the dev server once to prove it boots clean before you stop.
Writing AGENTS.md before the scaffold means every later task opens already knowing your stack and conventions, with nothing to remind Codex of by hand.
- 02
Write the listings and availability migrations
Hand Codex the two things a marketplace can’t work without: a listing, and a calendar that can never double-book it. Have it show you the migration before anything touches your database.
PromptSet up listings and availabilityWrite the Supabase migrations for the two tables this marketplace can’t run without. A listings table, owned by a host, holding a title, description, location, amenities, a base nightly price, and photos stored in Supabase Storage. And an availability table recording which date ranges are already booked on each listing, with a constraint or trigger that blocks any insert whose dates overlap a confirmed booking already on file, so two guests can never land on the same night. Print the SQL for me before it runs, and once it’s applied, regenerate the TypeScript types.
Enforce the overlap check as a database constraint, not application logic. Only the database sees every write, no matter which screen or script made it.
- 03
Wire up sign-in and the role model
Layer sign-up and login on top, followed by a guest/host/admin role model that lets one account carry more than one role. Auth is exactly the kind of sensitive change worth narrowing Codex’s permissions for, so scope it down to just this task first.
PromptAdd auth and rolesThis task touches authentication, so scope your permissions down to just this one rather than leaving the broader session settings you’d use for routine edits. Wire in Supabase Auth for email-and-password sign-up, login, logout, a persisted session, and a useUser hook. On top of that, build out the role model: an app_role enum covering 'guest', 'host', and 'admin', and a user_roles table that links a user_id to a role rather than storing it on the account itself. An account should be able to carry more than one, since a host is often a guest on someone else’s listing too. Add has_role(_user_id uuid, _role app_role), a SECURITY DEFINER function reading from user_roles, so the policies coming in the next task can call it without recursing into itself. One migration for all of it, and walk me through what changed before it runs.
A role kept in the user’s own metadata is editable by that same user, so has_role reads from a separate table instead.
- 04
Review the diff that locks bookings and payouts
Layer in the booking and payout tables next, then have the database enforce who can reach which rows. Read this diff closely before you approve it. It’s the one that decides who can see whose money.
PromptAdd bookings, payouts, and RLSAdd two tables: bookings (a listing plus a guest, with check-in and check-out dates, a status, and the total price) and payouts (a host plus a booking, with the platform’s cut split out from the host’s share). Turn on row-level security across listings, bookings, and payouts, and write the policies so a guest only reaches bookings they created, a host only reaches the listings and payouts tied to their own account (test ownership with has_role), and an admin, also verified through has_role, can reach every row for moderation. Every insert and update needs its own WITH CHECK clause naming exactly who is allowed to own the new row, so nobody can insert a booking or payout under someone else’s name. Once it’s applied, walk me through proving it: a second guest reading the first guest’s bookings should fail, a host reading another host’s payouts should fail, and an admin reading either should succeed.
Without this, one guest could browse another guest’s bookings, or one host could see what another host is earning.
- 05
Wire up each screen from the files it actually needs
Point Codex at the frontend now: search with filters, a listing page with live availability, checkout, and dashboards for hosts and admins. It only needs the handful of files each screen actually touches, not the whole project.
PromptBuild the screensWire up the screens on top of what you’ve built so far: listings need a search page with location/date/price filters, a detail page that shows live availability, and a checkout flow that creates the booking and takes payment through Stripe. Hosts need a dashboard covering their listings, bookings, and payouts. Admin needs a dashboard covering listings, disputes, and transactions. Keep the data access itself in typed hooks rather than scattered through the components.
- 06Destination
Round out reviews and messaging, then verify it
Add the last pieces, reviews and a booking-scoped inbox, then run the app yourself and walk the whole flow end to end, fixing whatever’s off as you go.
PromptAdd reviews, messaging, and testAdd the last two tables: reviews (tied to a completed booking, released once both sides have left one) and messages (a booking-scoped inbox between guest and host). Once that’s in, run the app yourself and take it end to end (search for a stay, book it, pay, send the host a message, leave a review after checkout), then fix whatever doesn’t hold up.
Built-in security for guests, hosts, and payouts
Security isn’t an afterthought when a booking moves someone’s payment and personal details. Here is how your data stays protected, in simple terms, and the core rule that keeps it secure.
Proven logins, three ways in
Guests, hosts, and admins all sign in through the same battle-tested system. You don’t build login security yourself. Email and password works out of the box. Social sign-in is a small add.
Overlapping user roles
A guest books, a host lists and gets paid, an admin moderates the whole marketplace. On a real platform, the same person is often a guest on one booking and a host on another. Decide the access rules with that overlap in mind, not as three separate user types.
Guest data and payout details stay protected
A booking platform holds two kinds of data that matter more than most: guest personal details tied to a real stay, and a host’s bank or payout information. Both need the same row-level protection as everything else. Neither should be reachable by a role that has no reason to see it.
Row-level security across a three-sided model
The template ships 121 row-level security policies precisely because three roles reaching the same tables from different angles is harder to get right than two: a guest reaches their own bookings, a host reaches their own listings and payouts, an admin reaches everything, and the database enforces all three at once.
Administrative keys stay protected
Your app only carries a “public” key that’s safe to share. The keys that can bypass access rules or move money live on the server only, never in the app or a public code repo: the database’s service key and the payment provider’s secret key.
Automatic daily backups on Pro
Daily backups are a paid feature: the free tier has none, so while you are building, your database is the only copy. Supabase Pro (from $25/mo) adds a daily backup with 7 days of history. Move to Pro before real bookings and real payouts depend on that data.
Review the access rules (row-level security policies) on every table. For each one, tell me in simple terms who can view, add, edit, and delete records, confirm that people can only reach their own data while the right roles can reach more, and flag anything left open that shouldn’t be.
Paste this before launch so Codex checks nobody can see data they shouldn’t.
The one rule that matters: never put a secret key, database or payment provider, in the app or a public repo. If one ever leaks, reset it right away.
What speeds the build, and what slows it
Speeds the build
- An AGENTS.md file at your project root: Codex reads it automatically before every task, so you never have to remind it
- Setting Codex’s permissions once for the session, instead of approving every small edit by hand
- Handing a long, well-scoped task to Codex cloud, so it keeps working in an isolated environment while you do something else
- Reviewing a diff in the IDE extension, next to the code it touched, before you keep it
Slows the build
- Leaving permissions wide open for a sensitive change instead of narrowing them for that one task
- Skipping the AGENTS.md file, so Codex starts each new task without your conventions loaded
- Handing Codex cloud a vague, open-ended task, where you can’t steer it mid-run the way you can in a live terminal session
- Merging a cloud task’s changes back in without reading the diff first
Git: what it is, and why you need it
Before you build anything, meet the one tool that makes building safe. You need no coding background for it: Git remembers every version of your project, so you can try things, break things, and get back to a working state in seconds.
What Git actually is
Git is a quiet recorder that runs alongside your project. Each time you save your work it keeps a full snapshot, so the entire history of your project lives on your computer, not just whatever the files look like right now.
Why you need it
Codex asks before it edits files or runs commands, unless you widen its permissions for the session. Once you do, Git is what makes that safe: there’s always a working version to return to, so you can hand it a bigger task without the fear of losing what already works.
A commit is a save point
Each commit is a snapshot with a short note, like “added the home page”. Make one after every working step and you can jump back to any of them later.
GitHub’s beginner guide to GitUndo anything, safely
If a change breaks something, you roll back to the last good commit instead of unpicking it by hand. It’s the safety net that keeps a Codex session low-risk even once you’ve widened its permissions.
GitHub is also where Codex can start from
Git lives on your computer. GitHub is a free, private cloud copy of the same project. Keep it private, and never commit secret keys or passwords. Once your project is pushed there, Codex cloud can pick up a task straight from a GitHub issue or repo, without you opening a terminal at all.
Create a free GitHub accountYou rarely type git commands
There’s little to memorize. Ask Codex to “commit this” or “undo the last change” and it runs the git steps for you, inside whatever permission boundary you’ve set. Prefer clicking to typing? The Codex extension for your editor shows each change next to the code it touched before you keep it, and GitHub Desktop gives you plain buttons for saving and rolling back.
Get CodexChoosing the right hosting for your rental platform
The site is just a bundle of ready-made files, so it runs on almost any hosting you like, free options included. Your data and logins live separately in Supabase (more on that below).
| Host | Best for | Notes | Free tier |
|---|---|---|---|
| Vercel | One-click deploys | Connect your project and it publishes itself. Standard Vite setup, so it just works. Note the free Hobby tier is for personal, non-commercial projects only: a live rental marketplace needs Pro, from $20/user/mo. | Pro from $20/user/mo (Hobby is non-commercial) |
| Netlify | Drag-and-drop or Git | Connect your project or drag the built folder in. Live in a couple of clicks. | Free tier |
| Cloudflare Pages | Cheapest at scale | Connect your project once for fast, worldwide delivery on Cloudflare’s network. | Generous free tier |
| GitHub Pages | Free Git-based hosting | Publishes straight from your GitHub project. Needs one small tweak so page links work. Catch: publishing from a private repository needs a paid GitHub plan, and this guide tells you to keep yours private, so this one is free only if you make the repo public, which for a marketplace handling real bookings and payouts you should not. | Free from a public repo only |
| Firebase Hosting | Simple setup, Google stack | A short one-time setup, then a single publish command. | Free Spark tier |
| AWS Amplify Hosting | Teams already on AWS | Connect your project in the AWS console. A one-time routing setting makes page links work. | Free tier (build + hosting) |
| Surge | Publish from the terminal | Publish with a single command. No repository needed. | Free - unlimited publishing |
| DigitalOcean App Platform | DigitalOcean users | Connect your project and it builds and hosts the site for you. | Free - 3 static sites, 1 GB/mo transfer |
Any of these works. One thing to check before you settle: a free tier is not automatically free for *business* use. Vercel’s Hobby tier is the strictest here, personal projects only, so a marketplace handling real guests and hosts belongs on a paid plan. Read the plan terms for the host you pick, not just the price.
Keep your data in Supabase
Your data and backend live in Supabase: Postgres, auth, and edge functions. Whichever frontend host you pick above, everything runs here.
| Service | Best for | Notes | Free tier |
|---|---|---|---|
| Supabase | Data, auth, functions | Postgres database, authentication, and edge functions. Create a free project and your AI coding tool connects the app to it. | Free tier, then usage-based |
Choosing your payment rail
Taking the payment yourself is a decision rather than a given. A booking-request site, where the app confirms the stay and the host is paid by transfer or on arrival, costs nothing to run and is how a good many small rental sites start. Taking the money inside the app means one of the three below, and what decides between them is the split: your platform collects from a guest and pays a host out of the same charge.
Built for the exact split a marketplace makes, which is why the payouts table in the build steps above holds the platform’s commission apart from the host’s share. Two lines sit on top of the card rate and both are easy to miss. A host only counts as an active account in a month you actually send money to their bank, and every payout carries a fee of its own, so paying each host once a month costs noticeably less than paying them after every stay.
stripe.com · checked September 2026
The most expensive of the three per booking, and the one a first-time guest booking a stranger’s home is most likely to recognise. On a $900 stay that is about $32 against $26 on the row above, before the international line, which a rental marketplace runs into far more often than a shop does. Worth offering beside a card rather than instead of one.
paypal.com · checked September 2026
The interchange-plus shape, where you pay the card networks what they actually charge and Adyen its margin on top. That beats a flat percentage once enough bookings run through it for the difference to be worth the setup. Read the caveat on their own page before you budget against it: Adyen calls the published figures indicative and asks you to get in touch, so this is the start of a conversation rather than a price you can sign up to this afternoon.
adyen.com · checked September 2026
Work out one number before you connect anything: the fee on a single booking, times the bookings you expect in a year. Three hundred stays at $900 costs roughly $7,900 a year on the first row and roughly $9,600 on the second, for the same money arriving, and paying twenty hosts once a month adds about $480 in account fees on top of the first. Connecting nothing is still a real answer: the calendar, the booking and the commission you record are all correct whether or not a card is ever charged, and a site that introduces guests to hosts and lets them settle up directly pays none of this.
Power your marketplace with native AI automations
Once the core marketplace works, AI is a few more prompts. Each one hangs off a small server-side function that talks to the model, so your key stays there rather than in the app.
Guest-message drafting
Suggests a reply to an incoming guest message from the booking details and the conversation so far. The host reviews and sends, rather than staring at a blank box.
Add a "Suggest a reply" button on the host inbox that sends the guest’s message, the booking details, and the last few messages in the thread to your ai function, and returns a short, editable reply draft the host can edit before sending.
Dynamic pricing suggestions
Looks at a listing’s upcoming occupancy and how far out a date is, and suggests a nightly price for open dates, so hosts aren’t guessing or leaving money on the table.
Add a "Suggested price" panel on the host’s calendar that sends the listing’s upcoming occupancy, day of week, and how far out the date is to your ai function, and returns a suggested nightly rate with a one-line reason the host can accept or ignore.
Review summarisation
Rolls a listing’s reviews into a short summary of what guests consistently like and flag, so a new guest doesn’t have to read fifty reviews to get the gist.
Add a "Summary" block on the listing page that sends its most recent reviews to your ai function and returns a short summary of recurring praise and complaints, refreshed whenever a new review is added.
Listing-description generation
Turns a host’s bullet points about the property into a polished listing description, so a first draft doesn’t stall the listing going live.
Add a "Generate description" action on the listing editor that sends the property’s type, amenities, and the host’s rough notes to your ai function and returns a polished draft description the host can edit before publishing.
Each prompt above should pick whichever model tier fits the job: a fast, lower-cost model for high-volume work, and a stronger reasoning model for anything that weighs tradeoffs against each other. Codex’s model names change faster than this page does, so check OpenAI’s current model line-up (linked in the references below) before you build, rather than copying a name you saw once. Keep all of it behind that same ai function, so one key and one rule set covers every feature you add.
Get a head start with our template
The guide above shows how to build this rental platform from scratch. Prefer to skip the boilerplate? Launch with our ready-made template and spend your time customizing, not scaffolding.
Rental Booking Platform
The exact rental marketplace this guide builds, packaged so you can open it, point it at your own backend, and make it yours from there. A full rental booking platform in the spirit of Airbnb, where guests book stays, hosts manage listings and payouts, and you run the whole thing from an admin panel. It hands you the entire three-sided business instead of just a listings page.
The key benefits of starting with a template
The hard, invisible parts are already built and working: listings, availability, payments, payouts, and role-based access. Your time goes straight to what makes the platform yours.
Building the core from scratch
~139 hrs
Opening the template, already built
~1 hr
~138 hrs of building you skip
These measure different things, which is the point: ~139 hrs is what it takes to build the core yourself, and ~1 hr is how long the template takes to open and connect, because that core already exists. Customizing it to your guests, hosts, and brand is time you spend either way, so it is not counted on either side.
A working marketplace from day one
Open a functional app, not an empty folder. Listings, bookings, payouts, and dashboards for all three roles are ready to go.
Pre-configured security and access
Authentication, three-sided roles, and 121 row-level security policies work out of the box, so guests, hosts, and admins each see only what they should.
A polished UI out of the box
Search, listing, checkout, host, and admin screens come already designed, clean and responsive on any device, so it looks like a finished product before you change a thing.
Clean code that’s easy to extend
Typed, well-organized, and documented, so every change you ask your AI coding tool for stays consistent and the app is a pleasure to grow.
From founders who build on our templates
Building a complex marketplace with separate permissions normally means sinking massive effort into infrastructure, disputes, and payment flows. Since the template handled all the heavy lifting upfront, we jumped straight into perfecting the brand identity and map search.
Matt GrahamFounder & CEO, RapidDevCommon questions
No. Your AI coding tool writes the backend on Supabase for you from plain-language prompts: listings, bookings, payouts, and access rules. You create your own free Supabase project, and it wires the app to it, so everything runs on your own data.
Yes, and on a real marketplace they usually are. Roles are assigned per account rather than baked into a single user type, so one person can book a stay as a guest and list their own property as a host.
Yes. Add a small server-side ai function for guest-message drafting, dynamic pricing suggestions, review summaries, or listing-description generation. Pick the tier that fits the job, a fast model for high-volume tasks or a stronger one for judgement calls, and keep your API key on the server, never in the app.
Only the third-party services you connect with your own accounts: mainly Supabase for the backend, a payment provider, and a host for the site. Supabase and hosting both start free. For an always-on marketplace with real bookings, Supabase Pro starts at $25/mo (free projects pause after 1 week of inactivity). You pay those providers directly.
Only the people a role allows: a guest sees their own bookings, a host sees their own listings and payouts, an admin sees everything for moderation. The app runs on your own Supabase project, so for GDPR purposes you are the sole controller of that data.
Through row-level security. Only the public key ever ships to the browser, and every table is protected by Postgres row-level security, so each role can only touch the rows it is allowed to. Secret keys, the database’s and the payment provider’s, stay on the server.
No lock-in. Everything lives in a standard PostgreSQL database, so you can export it all with standard Postgres tools and move to any Postgres host whenever you want.
Yes. Whichever host you pick for the frontend lets you connect a custom domain with free HTTPS in a few clicks.
No, though you will type the occasional command: installing Codex, starting the app, applying a database change. The setup section above lists what you need, with a link for each, and once it’s on your machine Codex runs most of those commands for you.
A regular ChatGPT chat can sketch ideas and write snippets, but it isn’t working on your actual project. Codex reads and edits the real files on your computer. The app you get out of it is one you can run and publish, not a preview.
On a ChatGPT plan, Codex’s usage resets on a rolling window rather than billing per token, so a heavy day of building can bump into a limit. You either wait for it to reset, move up a plan, or switch to pay-as-you-go API billing for the rest of the session. Nothing you’ve already built is lost either way, so the work only pauses.
References
Sources checked August 2026- 01Global short-term rental bookings reached $219.9B in 2025, PhocusWire (Phocuswright Research). phocuswire.com
- 02Pricing, Lodgify. lodgify.com
- 03Pricing, Guesty. guesty.com
- 04Pricing, Hostaway. hostaway.com
- 05Pricing, Sharetribe. sharetribe.com
- 06Pricing (Pro plan, free-tier limits), Supabase. supabase.com
- 07Web developer hourly rates 2026 (freelance and agency benchmarks). developex.com
- 08Row Level Security, Supabase docs. supabase.com
- 09Connect pricing (per-account and payout fees), Stripe. stripe.com
- 10Merchant fees (PayPal Checkout, US), PayPal. paypal.com
- 11Pricing (interchange-plus card rates), Adyen. adyen.com
- 12Pricing (plans, usage limits), ChatGPT docs. learn.chatgpt.com
- 13Codex CLI, ChatGPT docs. learn.chatgpt.com
- 14API pricing (models), OpenAI for developers. developers.openai.com
- 15IDE extension, ChatGPT docs. learn.chatgpt.com
- 16ChatGPT desktop app, ChatGPT docs. learn.chatgpt.com
- 17Codex cloud, ChatGPT docs. learn.chatgpt.com
- 18AGENTS.md, ChatGPT docs. learn.chatgpt.com
This guide is general information. Third-party prices, plan limits, and market rates are quoted from the sources above and were last checked on the date shown. Vendors change them without notice, so confirm before you budget. Build hours and the cost estimates derived from them are our own estimates, not quotes. Testimonials are from named customers. The integration figures are illustrative. Codex, ChatGPT, and the OpenAI API are products of OpenAI. Verify current capabilities and pricing before relying on them.