Skip to content

Embed Booking Widget (WordPress/Wix/Squarespace)

Quick path: Settings → eCommerce → Copy embed code → Paste on your site

The Bloowatch booking widget is an iframe-based catalog you embed on any web page. Once embedded, visitors see your activities, available sessions, prices, and a full checkout flow with online payment. Bookings land straight in your Sales dashboard.

This article covers how to get the embed code, paste it into WordPress, Wix, or Squarespace, make it responsive, and troubleshoot the most common issues (blank widget, cross-origin errors, broken layout on mobile).

  • You’re on a PRO or GOLD plan (online booking is not available on START)
  • Online booking is enabled and at least one product is visible in the widget (see Set Up Online Booking)
  • You have editor access to your website (WordPress admin, Wix Editor, or Squarespace dashboard)

1. Get the embed code from Settings > eCommerce

Section titled “1. Get the embed code from Settings > eCommerce”

Open the Bloowatch back-office. Click the gear icon in the left sidebar, then click ECOMMERCE. The page displays the HTML embed code for your booking widget.

Click COPY THE CODE to copy the snippet to your clipboard.

eCommerce settings page

The code looks like this:

<style>
.bloowatch-booking-wrapper {
position: relative;
overflow: hidden;
width: 100%;
padding-top: 56.25%;
}
.bloowatch-booking-wrapper iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
border: 0;
}
</style>
<div class="bloowatch-booking-wrapper">
<iframe src="https://your-school.bloowatch.com/booking"
allowfullscreen></iframe>
</div>

Open your booking URL directly in a browser (e.g., https://your-school.bloowatch.com/booking) to confirm it loads correctly. You should see:

  • Your school name and logo
  • Category tabs matching your product categories
  • Product cards with image, name, price, and a BOOK button

Booking widget preview

Tip: If the widget is blank, check that at least one product has eCommerce enabled (see Set Up Online Booking, step 4).

Choose the instructions for your website platform below.

  1. Open the page or post where you want the booking widget in the WordPress Block Editor (Gutenberg).
  2. Click the + button to add a new block.
  3. Search for Custom HTML and select it.
  4. Paste the embed code you copied in step 1.
  5. Click Preview in the block toolbar to verify it renders.
  6. Click Update (or Publish) to save the page.

WordPress Classic Editor: Switch to the Text tab (not Visual) and paste the code there.

  1. Open the page in the Wix Editor.
  2. Click Add Elements (+) in the left panel.
  3. Go to Embed Code > Embed HTML.
  4. Drag the widget onto the page where you want the booking catalog.
  5. In the HTML settings panel, click Enter Code, paste the embed code, and click Update.
  6. Resize the widget frame to fit your layout (recommended: full page width, 700-900 px height).
  7. Click Publish to save.

Wix note: Wix sandboxes embedded HTML in its own iframe. The widget will still work, but the double-iframe can cause scrollbar issues. If scrolling feels awkward, set a fixed height (see step 4 below).

  1. Open the page in the Squarespace Editor.
  2. Click Edit on the section where you want the widget.
  3. Click Add Block > Code.
  4. Paste the embed code into the code block. Make sure the display toggle is set to HTML (not Markdown).
  5. Click Apply, then Save the page.

Squarespace note: Code blocks are only available on Business and Commerce plans.

The default embed code uses padding-top: 56.25% (16:9 ratio), which works well for wide layouts. Depending on your page design, you may need to adjust it.

Option A — Fixed height (recommended for most sites):

Replace the padding-top line in the <style> block with a fixed height:

.bloowatch-booking-wrapper {
position: relative;
overflow: hidden;
width: 100%;
height: 800px; /* adjust to your preference */
}

Option B — Taller ratio for narrow layouts:

If the widget feels cramped, increase the padding:

padding-top: 75%; /* 4:3 ratio -- taller */

Option C — Full viewport height:

.bloowatch-booking-wrapper {
width: 100%;
height: 100vh;
}

Tip: Open your page on a phone and a tablet to verify the widget looks right at different screen widths.

  1. Open the page with the embedded widget in an incognito/private window (to avoid cached sessions).
  2. Browse the catalog and click BOOK on a product.
  3. Select a session date and group size.
  4. Complete checkout (use a test payment method if possible).
  5. Verify the booking appears in Sales > Bookings with origin WEB.
  • The booking widget loads on your website and shows your enabled products with images, prices, and available sessions
  • Customers can browse, select dates, and pay without leaving your site
  • Each online booking appears in Sales > Bookings with origin WEB
  • You receive a notification for each new online booking
IssueWhy it happensFix
Widget is completely blankNo products have eCommerce enabled, or the booking URL is wrongCheck that at least one product is enabled in Resources > Products > eCommerce tab. Verify the iframe src URL is correct.
Widget loads but shows “no availability”No sessions exist on the Agenda for future datesAdd sessions to the Agenda (manually or with recurrence rules)
Cross-origin / mixed content errors in browser consoleYour website uses HTTPS but the iframe src uses HTTP (or vice versa)Make sure the iframe src starts with https://. Bloowatch always uses HTTPS.
Widget doesn’t scroll properly (Wix)Wix wraps embeds in an extra iframe, causing nested scrollbar issuesSet a fixed height on the embed wrapper (e.g., height: 800px) instead of using the responsive padding technique
Widget is cut off at the bottomThe responsive wrapper height is too short for the contentIncrease padding-top or switch to a fixed height (e.g., height: 900px)
Embed looks broken on mobileThe CSS wrapper doesn’t fit the mobile viewportTest with a fixed height and width: 100%; remove padding-top if it causes layout issues
”Refused to display in a frame” errorYour site or a browser extension blocks iframesCheck your site’s Content Security Policy headers. Disable ad-blockers temporarily.
Booking form doesn’t submit / payment failsPayment gateway not configuredCheck Settings > Payments and verify your Stripe integration is active
  • Open the booking URL directly in a browser (https://your-school.bloowatch.com/booking) — if it works there, the issue is in your website’s embed setup
  • Check the browser developer console (F12 > Console) for error messages
  • Try the embed code on a blank test page to isolate the issue
  • Clear your browser cache and try in an incognito window
  • Contact Bloowatch Support via the chat widget
Financiado por la Unión Europea — NextGenerationEU, Plan de Recuperación, Transformación y Resiliencia, Grupo SPRI, Gobierno Vasco