Two holiday housesBooking calendars that can’t double-book
A direct booking page that reads its calendar straight from Airbnb, so guests only ever see dates that are really free.
The problem
The owner of two holiday houses took most bookings through Airbnb, and wanted guests to be able to book direct as well. A direct booking page is only useful if its calendar is right. Show a date as free when it’s taken, and a house is double-booked.
What I did
- The website reads each house’s booking calendar straight from Airbnb and refreshes it every half hour, so the dates shown are the dates that are free.
- If Airbnb can’t be reached, the page keeps the last calendar it had for a few hours, then stops showing dates and asks guests to enquire instead. It never shows a date as free when it can’t be sure.
- Booking requests come in by form or email and go straight to the owner, who confirms them. Nothing is charged online.
What changed
- Guests see real availability and can ask to book direct.
- The owner keeps one calendar. Airbnb stays the one place bookings are recorded.
- The website can’t cause a double booking: it only shows dates it knows are free, and the owner confirms every request.
Under the bonnet
- Airbnb calendar feeds (iCal), fetched every 30 minutes
- Fails closed: last good calendar for a few hours, then no dates and the enquiry form
- Node.js and Express, the calendar rendered on the server
- Booking requests by email; Cloudflare Turnstile on the form
Services this touched
Got something like this?
A free chat about the problem, then a written quote before any work starts.
Get in touch
or email hello@leahyandco.com.au