Bookinda Booking Widget
Bookinda Booking Widget
Description
The Bookinda Booking Widget plugin embeds the Bookinda online booking experience natively into any WordPress site. It supports four embed methods (Gutenberg block, Elementor widget, Classic editor toolbar button, shortcode) and two display modes (inline iframe, fullscreen lightbox).
The plugin is a thin client for the Bookinda SaaS booking platform (https://bookinda.hu). It loads the booking flow in an iframe from your Bookinda tenant subdomain ({slug}.bookinda.hu) and bridges its lifecycle events to the host page as native DOM CustomEvents.
You need an active Bookinda account to use this plugin. The plugin itself is free.
Features
- Gutenberg block in the Widgets category with sidebar InspectorControls for every parameter.
- Elementor widget with three tabs (Content, Preselection, Style) in the sidebar.
- Classic editor (TinyMCE) toolbar button with a dialog that inserts the appropriate shortcode.
- Shortcode
[bookinda]/[bookinda mode="lightbox"]for any template, widget area, or content block. - Inline mode: the booking iframe is embedded directly in the content (auto-resize).
- Lightbox mode: a button opens a fullscreen modal with the booking flow (mobile-optimized with sticky continue button, ESC and backdrop click to close).
- Preselection: pass
services,staff,category,promo,locationparameters to pre-select fields in the booking flow. - Host DOM events:
bookinda:complete,bookinda:error,bookinda:step,bookinda:resizeCustomEvents dispatched ondocumentfor custom integrations. - Optional GA4 and Meta Pixel tracking: if the host page already loads
gtagorfbq, the plugin can fire apurchaseevent on booking completion. Configured via plugin settings (off by default).
Where to find your tenant slug
Your tenant slug is the prefix of your Bookinda URL: https://YOUR-SLUG.bookinda.hu/manager/calendar. The slug is the part before .bookinda.hu.
External Services
This plugin connects to Bookinda (https://bookinda.hu), a third-party SaaS booking platform operated by Bookinda Kft. The connection is required for the plugin to function: the booking widget is hosted by Bookinda and embedded in your WordPress site via an iframe.
What is sent to Bookinda:
- When a visitor opens a page containing the booking widget, their browser loads
https://{your-tenant-slug}.bookinda.hu/embed/{your-tenant-slug}in an iframe. The URL includes the embed configuration parameters you set (mode, color, preselected service IDs, etc.) and an analytics-onlysource=wp-pluginparameter so Bookinda can distinguish WordPress plugin traffic from other embed sources. - When the visitor proceeds with a booking, they interact directly with the Bookinda iframe. Any data they enter (name, email, phone, payment details) is sent to Bookinda’s servers, not to your WordPress site. The plugin does not collect or store visitor data on the WordPress site.
What is received from Bookinda:
- The booking widget HTML, CSS, and JavaScript, served from the Bookinda CDN.
- postMessage events containing booking lifecycle data (completion confirmation, step changes, iframe height). The plugin re-broadcasts these as DOM CustomEvents on the host page.
Service documentation:
- Bookinda website: https://bookinda.hu
- Privacy Policy: https://bookinda.hu/adatkezeles
- Cookie Policy: https://bookinda.hu/cookie-szabalyzat
- Terms of Service: https://bookinda.hu/aszf
- Data deletion request: https://bookinda.hu/adatok-torlese
By installing and activating this plugin you acknowledge that visitor interactions with the embedded widget are subject to Bookinda’s Privacy Policy and Terms of Service. Please review them and ensure your site’s privacy notice reflects the data flow described above.
Installation
- Download the plugin zip from https://bookinda.hu/integracio/wordpress
- In WordPress admin, go to Plugins Add New Upload Plugin and select the zip file.
- Click Install Now, then Activate.
- Go to Settings Bookinda and enter your tenant slug.
- Embed the widget anywhere using the Gutenberg block, Elementor widget, Classic editor button, or shortcode
[bookinda].
Faq
Yes. The plugin embeds the Bookinda booking widget, which requires an active Bookinda account. You can sign up at https://bookinda.hu. The plugin itself is free.
Yes. The plugin is licensed under GPLv2 or later and is free to use. There is no one-time purchase fee and no annual subscription cost for the plugin. A Bookinda SaaS account is required for the booking functionality (separate from the plugin).
It is the prefix of your Bookinda URL: https://YOUR-SLUG.bookinda.hu/manager/calendar. The part before .bookinda.hu is your slug.
When a visitor opens a page with the booking widget, their browser loads the booking iframe from {your-slug}.bookinda.hu. The plugin does not send data from your WordPress site to Bookinda. All visitor interactions (filling in name, email, payment) happen directly inside the iframe and are subject to Bookinda’s Privacy Policy.
By default, no. The plugin only sends one analytics-only parameter to Bookinda (source=wp-plugin) so Bookinda can identify WordPress plugin traffic on its own analytics.
The plugin can optionally fire a Google Analytics 4 or Meta Pixel purchase event when a booking completes, but only if you explicitly configure the GA4 measurement ID or Meta Pixel ID in the plugin settings, and only if the host page already loads gtag or fbq (the plugin does not load any tracking scripts itself).
Lightbox (recommended for most cases): a button on the page opens a fullscreen modal with the booking flow. Mobile-friendly because the iframe gets its own scroll context.
Inline: the iframe is embedded directly in the content. Good for dedicated booking pages.
Download the latest zip from https://bookinda.hu/integracio/wordpress, deactivate and delete the current plugin in WP-admin, then install the new zip. Your settings (slug, primary color, tracking IDs) are preserved across updates.
Reviews
Changelog
1.1.3
- Aligned the text domain with the plugin slug (bookinda-booking-widget) for all translatable strings.
- Added the text domain to the block editor (JavaScript) strings and registered script translations via wp_set_script_translations().
- Renamed the translation template to bookinda-booking-widget.pot.
1.1.2
- Tested up to WordPress 7.0.
- Removed the manual load_plugin_textdomain() call. WordPress.org loads translations automatically for plugins hosted in the Plugin Directory.
1.1.1
- External Services disclosure section in readme (WordPress.org plugin guideline 6).
- Privacy Policy and Terms of Service links on settings page.
- Output escape audit on settings page (defense-in-depth).
- User-facing strings wrapped with
__()/esc_html__()for i18n. - Empty
/languagesfolder +.pottemplate so the Domain Path declaration validates cleanly. - Plugin name set to ASCII for the WordPress.org repository (“Bookinda Booking Widget”).
- Tested up to WordPress 6.7.
1.1.0
- New: Gutenberg block (“Bookinda Foglalás”) with sidebar InspectorControls for every parameter.
- New: Classic editor (TinyMCE) toolbar button with shortcode-inserting dialog.
- New: Host-side DOM events (
bookinda:complete,bookinda:error,bookinda:step,bookinda:resize). - New: GA4 + Meta Pixel auto-purchase tracking via plugin settings.
1.0.0
- Initial release. Shortcode + Elementor widget + lightbox modal mode.