Setting Up Two-Way Calendar Sync (ICAL) with Airbnb, VRBO, Booking.com and Other Listing Sites
This article is related to PromoteMyPlace Version 1 only. Not sure which version of the application you're using? See Which version of PromoteMyPlace am I using?
When you list your property on multiple platforms (Airbnb, VRBO, Booking.com, etc.) alongside your PromoteMyPlace website, you need two-way calendar sync to keep availability in sync and prevent double bookings. This guide explains how to set it up correctly.
How Two-Way Sync Works
Two-way sync has two parts:
- Import - Your website pulls calendars from Airbnb, VRBO, etc. so their bookings appear on your website calendar.
- Export - Your website provides a calendar URL that you add to Airbnb, VRBO, etc. so your direct bookings appear on their calendars.
When set up correctly, a booking on any platform automatically blocks those dates everywhere else.
Step 1: Import - Pull Bookings From Listing Sites Into Your Website
- Go to Reservations > ICAL Import Options.
- Paste the ICAL calendar URL from your listing site (e.g. from Airbnb: Hosting > Calendar > Availability Settings > Export Calendar).
- End date setting - Choose the correct option for your listing site:
- Airbnb: Select "End date of the reservation is the checkout day"
- VRBO: Select "End date of the reservation is the checkout day"
- Booking.com: Select "End date of the reservation is the checkout day"
- If you're unsure, check a known booking on the listing site and compare the dates in the ICAL feed. Getting this wrong will cause dates to be off by one day.
- Source - Select the appropriate listing site (e.g. "Found on Airbnb").
- Include Non-Reservation Events - Tick this box if you want blocked/unavailable dates from the listing site to be imported as well as confirmed bookings. Leave unticked if you only want confirmed reservations.
- Click Save.
Repeat for each listing site you use.
Step 2: Export - Push Your Website Bookings To Listing Sites
- Go to Reservations > ICAL Export Options.
- Tick "Ignore bookings imported using ICAL" - This is critical. It prevents a circular sync loop where imported bookings get exported back to the same listing sites, which then re-import them, creating duplicate and phantom reservations.
- Click Save.
- Copy the ICAL export URL provided.
- Add this URL to each listing site's calendar import settings (e.g. on Airbnb: Hosting > Calendar > Availability Settings > Import Calendar).
Important: Avoiding Duplicate and Phantom Reservations
The most common issue with two-way sync is a circular sync loop that creates hundreds of duplicate cancelled reservations. This happens when:
- You import bookings from Airbnb into your website
- Your website exports those same Airbnb bookings back out via ICAL
- Airbnb sees these as blocks from your website and reflects them back in its calendar
- Your website imports them again as new reservations
- The cycle repeats on every sync
The fix: Always tick "Ignore bookings imported using ICAL" in your ICAL Export Options. This ensures your website only exports direct bookings and owner blocks - not bookings that were already imported from other platforms.
If You Already Have Duplicate Reservations
If you're already seeing duplicate or phantom reservations from a sync loop:
- First, fix the export setting - tick "Ignore bookings imported using ICAL".
- Go to Reservations and bulk-delete the inactive/cancelled duplicates:
- Use the checkbox in the top-left header to select all rows on the page
- Untick any genuine reservations you want to keep
- Delete the selected rows
- Repeat for each page
- The next sync cycle should import cleanly without creating duplicates.
Troubleshooting
- Bookings appear with dates off by one day - Check that the "End date" setting in ICAL Import Options matches what your listing site uses. Most major platforms use checkout day as the end date.
- Blocked dates from a listing site aren't appearing - Make sure "Include Non-Reservation Events" is ticked in the ICAL Import Options for that feed.
- Hundreds of overlapping cancelled reservations - This is a circular sync loop. Tick "Ignore bookings imported using ICAL" in your ICAL Export Options and clean up the duplicates as described above.
Comments
0 comments
Article is closed for comments.