Embeddable booking widget

Embeddable booking widget.

Keep customers on your own site. Drop the full class booking flow into any page with a few lines of JavaScript, theme it to match your brand, and let customers browse, reserve spots, and pay without ever leaving your website.

For: studios, workshops, and instructors who already have a website and want bookings to happen on their own domain, not on a separate page.

How it embeds

A few lines of JavaScript, then it is your site.

Add a container element and the widget script to any page, point it at a public API key, and the complete booking flow renders inline: upcoming classes, spot selection, and a branded checkout. No iframe redirect, no separate page; your visitors stay on your domain from browsing to confirmation.

Public API keys are scoped and locked to the origins you allow, so the same key only works on the sites you approve. The widget runs on the same engine as the hosted page and the API, so multi-spot checkout, spot locks, and idempotency all work exactly the same way.

fullclass.io/b/river-studio
Upcoming classes

River Studio workshops

APR24

Handmade Pasta

6:30 PM with Elena Martinez

3 spots
APR25

Weekend Wheel Throwing

10:00 AM with Sam Okafor

8 spots
APR26

Kids Science Camp

1:00 PM with Priya Shah

12 spots

Complete booking

No account password. Confirmation by email.

2 spots$190.00
Promo code- $20.00
Tax$8.50
Total due$178.50
Credit card, gift card, or class pass
The snippet

Two lines of HTML, then paste it anywhere.

Add a container with your public key and load the script. The widget auto-initializes and renders the booking flow inline.

Copy & paste

auto-init
<div data-fullclass-booking data-fullclass-apikey="pk_…"></div>
<script src="https://app.fullclass.io/sdk/v1/booking.min.js"></script>

Drops cleanly into a WordPress Custom HTML block, a Wix or Squarespace code block, or any page that allows custom HTML and external scripts. Prefer code? Call FullClassBooking.init(…) with a target element and a config object instead.

What it replaces

The end of sending customers elsewhere to book.

If any of these sound familiar, a bolt-on booking link is costing you bookings.

Off-site redirects

Sending customers to a third-party page that breaks your branding and loses trust.

Mismatched design

A booking tool that ignores your fonts, colors, and spacing on every screen.

English-only checkout

No way to show the booking flow in the language your customers actually read.

No analytics

Bookings happen on someone else's domain, so your analytics never see the funnel.

Exposed keys

Embed scripts with no scopes or origin limits, usable by anyone who copies them.

Manual payments

Chasing e-transfers and reconciling them against your class list by hand.

How FullClass fits

A drop-in widget, themed and controlled by you.

  • Drop-in JavaScript. Add the widget to any page with a few lines of script, no website rebuild required.
  • Deep theming. Around 180 CSS custom properties let you match brand colors, type, and spacing precisely.
  • Bare mode. Set data-fullclass-bare="true" for headless, unstyled markup when you want total design control.
  • Built-in languages. English, French, Spanish, and Italian out of the box, plus custom strings for any label.
  • Custom states. Define your own loading, empty, and error states so the widget always looks intentional.
  • Auto-configured payments. The widget reads your tenant's Square or Stripe setup, so you do not paste payment credentials into the embed.
  • Gift cards & multi-session courses. Sell gift cards and let customers book single classes or full multi-session courses, all in the same widget.
  • Conversion tracking. Fire Google Ads conversion, GA4, and GTM events, including a purchase event after checkout, using your own tracking IDs.
  • Your currency. The widget shows your currency symbol throughout the flow, configured per tenant.
  • Analytics & safety. Tracking events fire on scoped public keys restricted to your allowed origins.
Example workflow

From snippet to booked, on your own site.

1

Create a public key

Generate a scoped public API key and restrict it to the origins where your widget will run.

2

Paste the snippet

Add the container and widget script to your page; the booking flow renders inline in seconds.

3

Theme and translate

Tune the CSS variables to your brand, pick a language or set custom strings, and define your states.

4

Customers book on your site

Spots lock, classes or full courses are reserved, gift cards and promo codes apply, payment runs on your tenant's provider, and a purchase conversion event fires.

Get started today

Embed class booking on your own site.

Start taking bookings in minutes. Publish a booking page, embed the widget, or build on the API.

30-day free trial · Cancel anytime