Beds24 WordPress plugin: a booking engine that blends into your theme
Looking for a Beds24 WordPress plugin? There are three ways to take Beds24 bookings on a WordPress site: a button to your Beds24 booking page, Beds24’s free official plugin, or a booking engine that runs inside your own page. Here is what each one gives your guests, what Beds24 itself says about iframes, and how to install our block step by step.
Three ways to add Beds24 booking to WordPress
- A “Book now” button to your Beds24 booking page: nothing to install, guests book on the Beds24 page.
- The official Beds24 plugin: free, based on shortcodes, one of which shows your Beds24 booking page in an iframe.
- A booking engine inside your page, not in a frame: that is what our plugin does.
| Option | Where guests book | Design | Cost |
|---|---|---|---|
| Button to your Beds24 booking page | On the Beds24 booking page | Your Beds24 booking page, as set up in Beds24 | Included with Beds24 |
| Official Beds24 plugin | Depends on the shortcode; [beds24-landing] shows the Beds24 page in an iframe | Beds24’s design, as set up in Beds24 | Free for Beds24 customers |
| Our plugin | On your page; deposits and full payments on the Beds24 payment page | Your colours and fonts, real room names, photos | CHF 29 or 49 a month per property, excl. VAT |
The official Beds24 WordPress plugin: what you get
Beds24’s own plugin is called Beds24 Online Booking, and Beds24 states that “the plugin is free to use for all Beds24.com customers” (Beds24). It works with shortcodes: you “paste the shortcode into a post, page or sidebar”. Its [beds24-landing] shortcode “creates an embedded iframe” (wordpress.org).
At the time of writing (October 2026), its wordpress.org page shows 2,000+ active installations, version 2.0.30 and a rating of 4.3 out of 5 from 6 ratings. It also carries a notice that the plugin “hasn’t been tested with the latest 3 major releases of WordPress”.
That notice does not mean the plugin is broken: test it on a staging copy of your site first, as you should with any plugin, ours included.
If guests booking on the Beds24 page suits you, it is a sensible free choice; the trade-offs start when they should book on your page, especially on a phone.
The iframe problem: mobile, cookies and usability
An iframe is a window in your page that displays another website, here your Beds24 booking page. Beds24 is candid about its limits (Beds24 wiki):
- “Using iFrames are convenient but may have a sub optimal usability experience.”
- When a browser blocks third-party cookies, this “can also block our ability to pass data from the widget to the iFrame”.
- “iFrames on mobile devices are problematic.”
On a phone, that means scrolling inside a box inside your page, in a frame whose fixed height may not fit every step. Beds24’s own advice: “Consider opening the booking page in a new tab instead of embedding it in an iFrame.”
Install our Beds24 booking block, step by step
Our plugin places our Beds24 booking engine on any page, as a block or a shortcode. You need WordPress 6.0 or later, PHP 7.4 or later, and an account with us connected to your Beds24 account. The free trial is enough to test it.
- Download the WordPress plugin (a zip file).
- In WordPress, go to Plugins → Add New Plugin → Upload Plugin, choose the zip, click Install Now, then Activate Plugin.
- Open Settings → Bookpage24 and enter your property identifier: the last part of your hosted booking page address, shown in your dashboard. Save once: the plugin fills in the Fallback link with your original Beds24 booking page by itself, so check it. Keep the language on automatic.
- In your dashboard with us, add your website address to Allowed websites (with and without
wwwif your site uses both), or the booking engine will not load. - Edit the page where guests should book and add the “Bookpage24 booking engine” block, or paste
[bookpage24]into a Shortcode block. - Publish, then run a test search on your phone.
In the editor, the block only shows a placeholder: dates, rooms and prices appear on the published page. If you download the plugin from your dashboard instead, your property identifier and fallback link are already filled in.
Booking button or full booking form?
Two shortcodes cover both cases:
[bookpage24]
[bookpage24 lang="de" nights="2"]
[bookpage24_button text="Book now"]
[bookpage24_button text="Book your stay" arrival="2027-03-12" departure="2027-03-14" adults="2"]
[bookpage24]shows the full booking engine, ideally on a dedicated “Book” page.langforces a language (en, de, fr, it, es);nightssets the default stay length.[bookpage24_button]adds a button to your hosted booking page, in the visitor’s language, with optional dates and guests. Block themes style it like their other buttons. Use it in your header, on room pages or in blog posts.- Running several properties? Both shortcodes accept
tenantwith another property identifier.
Make it look like your website
In your dashboard you set your colours, a corner radius and two fonts. Enter the fonts your website already uses: your theme loads them, and the booking engine picks them up.
- Real room names, beds, descriptions and photos in English, German, French, Italian and Spanish, instead of the internal codes many Beds24 accounts use, such as “XGL” or “DBLV”.
- Several rates per room, side by side and cheapest first: flexible, non-refundable, breakfast included.
- City tax shown upfront: Beds24 does not include it in offer prices, so our page adds it per person per night and shows the total before the guest books.
More in our guide to customising your Beds24 booking page.
Bookings, payments and outages
- Live Beds24 data: availability and prices are read on every search and checked again before booking, with your Beds24 discounts, minimum stays and closures.
- Bookings in Beds24: each booking is written into Beds24 like any other, and the Beds24 channel manager closes the room on Booking.com, Airbnb, Expedia and your other channels.
- Payments on Beds24: you choose no online payment, a deposit, full payment or a card guarantee without charge. Payments go through the Beds24 payment page with your own Stripe or PayPal; card data never touches WordPress or us.
- Nothing stored in WordPress: no database tables, just one settings entry, deleted when you uninstall the plugin.
- Never an empty block: the block always contains a “Book now” link to your fallback page, which the engine replaces once it loads. Even if our server is down, guests can still book on your Beds24 page.
Not ready to edit pages? Start with your hosted page link behind your “Book now” buttons. For Wix, Squarespace or Webflow, see our Beds24 booking widget guide.
Frequently asked questions
Is the official Beds24 WordPress plugin free?
Yes. Beds24 says it “is free to use for all Beds24.com customers”. Our plugin is free to download; the booking engine behind it is a paid service with a 30-day free trial and no commission. See pricing.
Do I need the official Beds24 plugin to use yours?
No. Our plugin works on its own: it only needs your property identifier and an account connected to Beds24.
Does it work with Elementor or other page builders?
Yes. Paste [bookpage24] into your builder’s shortcode element, such as Elementor’s Shortcode widget. In the block editor, use the block.
Does it follow WPML or Polylang?
Yes: it follows WPML, Polylang or your site language (English, German, French, Italian or Spanish), or the one you force with lang="de".
Does it store guest or card data in WordPress?
No. Bookings go straight into your Beds24, and cards are only entered on Beds24’s secure pages.
Beds24 is a trademark of Beds24 GmbH. We are an independent service, not affiliated with Beds24.