Bookings & payments

Taking bookings online

Booking workflow

  1. A customer books on your booking page, on the widget on your own website, or through the API. Your staff can also make a booking in the admin.
  2. FullClass checks that the spots are free and holds them, so the class is never oversold.
  3. FullClass checks everything the customer entered. That includes their details, the people coming, waivers, the cancellation policy, add-ons, promo codes, gift cards, notes, tax and payment.
  4. For a paid online booking, the payment is taken. Some bookings made in the admin skip the payment or record it by hand.
  5. The booking is saved with its payment details, the Stripe or Square reference, the spots, the totals and its status.
  6. FullClass sends the emails your settings ask for. These go to the customer, you, the instructor and staff, and include reminders and calendar invites.
  7. Spots left, the customer's history, reports and the activity log all update.

What customers see. The schedule is grouped by day. Each class card shows its photo, time, instructor, price per spot and a Book button. If you put classes in categories (Settings → Categories), filter tabs appear above the schedule so customers can narrow it. A course shows under a tab when any of its sessions runs a class in that category. Your booking page shows the ways to pay that you have turned on (card or wallet). The price shown, with any promo or gift card discount, is the final amount the customer pays. FullClass works it out, and the customer never types it. A class that has started stays on the schedule until it ends, marked In Progress. It does not vanish halfway through. People can still book it. If you do not want late arrivals, set a Booking cutoff on the class (Classes → Booking rules). Once checkout opens, a bar across the top shows Details, Your Info and Review. Customers can click it to jump back and change their number of spots or fix a typo, without stepping back one screen at a time. It never skips a step they must agree to. Clicking Review before they accept a waiver, terms or cancellation policy takes them to that document, not past it.

Put booking on your own website. You do not need a website to take bookings, because the booking page we host works on its own. If you do have one, go to Settings → Booking Widget and find Embed on your website. It gives you code that is ready to paste, with your booking key already filled in. Copy it into any page that allows custom HTML, such as WordPress, Wix, Squarespace and most site builders. The same widget then runs on your own site with nothing else to set up. The Step-by-step install guide, linked from that section, covers each website builder.

On WordPress, use the plugin. In WordPress, go to Plugins → Add New Plugin and search for FullClass Booking. Install and activate it. Copy the code from Settings → Booking Widget in FullClass. Paste it in WordPress under Settings → FullClass Booking and save. Then add the FullClass Booking block to the page where customers should book. On a page that does not use blocks, type [fullclass_booking] instead. It is the same widget, so it follows every setting on this page. The block's sidebar can also show just one category, or pick the list or calendar view for that one page.

Tell us which page you pasted it on. On the same settings page, under Where our links send customers, choose A page on my own website. Enter the address of the page with the widget in Page address. This tells us where to point the links we make for you. They include the share buttons on your dashboard, gift card QR codes and emails, waitlist offers, referral links, class pass links and links to unlisted events. Buttons that open a customer's own booking (to view or cancel it) always go to FullClass, because that is where customers manage bookings. If you choose My FullClass booking page instead, those links go to the page we host for you, which takes bookings just as well. Your own website needs its page address, so we will not save that choice without one. The card tells you where customers are being sent right now, so you can check it at a glance.

Pay on site. Under Settings → Booking Widget, set How customers pay to Allow pay on site (reserve now, pay in person). Customers can then book a spot without paying online. At checkout they choose Pay now or Pay on site. A pay on site booking is held with its payment marked as pending, and it does not expire. The spot stays held until you record the payment in person. The spot is taken either way, so it counts toward your plan usage whether or not the customer shows up. When this is on, your class rosters show who has Paid and who is Unpaid. That is true on screen, in print and in the roster email to the instructor. See Recording an on-site payment below.

Required customer details. Under Settings → Booking Widget, the Booking form checkboxes decide whether customers must enter a phone number and answer "How did you hear about us?" before they can finish booking. Both are on to start with. Turn either one off to make that field optional. The change applies to your booking page and every widget on other websites.

Marketing opt-in. In the same place, Show a marketing opt-in checkbox adds a tick box asking customers if they want your emails. It shows on the booking form and on gift card and class pass purchases. There is one box for both kinds of email, because both sign the customer up to the same list. The box starts unticked, so only customers who tick it are signed up. Even then, only people who are new to you are signed up. If someone is already your customer, a booking or purchase never changes the choice they made before. So nobody who opted out is quietly signed back up. Leave Checkbox wording blank to use our wording. It names your studio, says customers can unsubscribe at any time, and is translated into every language your booking page offers. If you type your own wording, all your customers see it exactly as you wrote it, whatever language they read. So keep your studio's name and the promise that they can unsubscribe.

Instructor details. Under Settings → Booking Widget, two checkboxes decide what customers see about your instructors. Show instructor name shows or hides the instructor's name and picture on each class card. Show instructor bio shows or hides the "About Your Instructor" section inside the booking window. That section only shows when the instructor has a bio. Both are on to start with, and you can turn each one on or off by itself. The change applies to your booking page and every widget on other websites.

Class photos. Under Settings → Booking Widget, the Lead class cards with the class photo checkbox decides whether a class with a photo shows it on its card. It is on to start with. Turn it off and every card shows a month and day date block instead, even for classes with a photo. Classes without a photo always show the date block. The change applies to your booking page and every widget on other websites.

List or calendar. Under Settings → Booking Widget, Default view picks the layout customers see first. List shows your classes grouped by day, one after another. Calendar shows a whole month. Days with something on are highlighted with a count, and clicking a day lists its classes below. A course shows on every day one of its sessions runs. Booking it from any of those days books the whole course. Customers can switch between the two at any time with the List and Calendar buttons above the schedule, so this setting only picks where they start. A calendar suits a studio with classes spread across the month. A list suits one with a handful of classes in the next few days.

Sending customers to your own thank you page. When a customer finishes booking, they see the FullClass™ confirmation screen. It shows their booking number and what they paid. If they chose to pay on site, it shows what they still owe instead. It also reminds them to check their spam folder if the email has not come. You may want to send them to a page on your own website instead. If so, put its address in Thank you page URL under Settings → Booking Widget. Most studios who do this are setting up a Google Ads conversion, which counts visits to one page.

Before you turn that on. Your thank you page replaces our confirmation screen completely. So anything customers used on that screen needs to be on your page instead. Add {booking_number} anywhere in the address and we fill in the booking number, for example https://your-site.com/thank-you?booking={booking_number}. Gift card purchases are never sent to your page, because our screen is where the gift card code shows. If your website checks the booking before it shows the page, it can look the booking up by that number with a secret API key, using GET /v1/bookings?booking_number=SHG8GS. For a course, the answer includes the whole course and the total paid for it, not just one session.

Showing only one view. If you want customers to see just one layout, turn off Let customers switch between list and calendar under Settings → Booking Widget. The List and Calendar buttons go away, and everyone sees only the view you picked above. Leave it on (it starts on) and customers choose for themselves each visit.

How many classes at a time. Under Settings → Booking Widget, Classes shown at a time sets how many classes the list shows before the Load More button, which shows the next batch. It starts at 12, and you can set anything from 3 to 50. A smaller number keeps a widget on a busy homepage short. A bigger one saves clicks for a studio with a full schedule. The calendar view does not change, because it always shows a whole month.

Widget appearance. Under Settings → Booking Widget → Widget appearance you can set the widget's colors, including text, button text and accent colors. You can also set the font and how rounded the corners are. You see a live preview, and one click resets everything to the defaults. The preview beside the settings is your real booking page, at phone or desktop size. Colors, font and corners change as you edit them, and everything else shows after you save. Bookings are turned off inside the preview, so you can click around freely. Your choices apply to your booking page, widgets on other websites and the customer portal. You can also set a header color for the band behind your logo at the top of your booking page and the customer portal. This helps when your logo has its own background color. Leave it blank to use the surface color. The display checkboxes above live in the same Booking Widget settings, and apply everywhere the widget shows, including on your own website. You can leave button text on Choose it automatically. It picks white or dark text, whichever is easier to read on your button color. If a color you set is hard to read on your button color, the setting warns you and shows a score, so you can decide. FullClass never changes your colors for you.

Page header contact details. Under Settings → Booking Widget, the Hosted booking page header checkboxes decide what shows at the top of your booking page. Show website link and Show contact email button are on to start with. Show call button (a tap-to-call link to your business phone) is off to start with. Set your website and phone number under Settings → General. The Contact button emails your reply-to address, which you set under Settings → Email. These apply only to the booking page we host for you, not to widgets on other websites.

Add to home screen. Customers can save your booking page to their phone's home screen. In Chrome on Android, they tap Add to home screen or Install app. In Safari on iPhone, they tap Share → Add to Home Screen. The icon is your thumbnail, or your main logo if you have no thumbnail. It sits on your booking page header color, or your surface color if you have not set one. It is labeled with your business name. If you have uploaded neither image, the icon is a square in your brand color with the first letter of your business name. The icon opens your booking page in the browser, so checkout and payments work just as they always do. This only applies to the booking page we host for you, not to your own website.