Getting started with Bookings
Create booking times, give registered players priority, and cancel one date when plans change.
On this page
What's a booking?
A booking is one participant's claim on a dated time. A time can be exclusive with one spot or shared by a group with several spots.
Bookings are perfect for:
- Private lessons (for example, one-on-one coaching)
- Facility rentals (for example, courts, fields, lanes, or rooms; see Spaces and the booking calendar)
- Group classes and clinics
- Camps, tryouts, and event signup times
- Volunteer shifts where each person claims one place in a time
Each participant completes a separate booking, so they keep their own payment, receipt, questions, waivers, cancellation, and check-in record. Bookings does not provide SignUpGenius-style item or quantity lists.
Use a Registration Activity instead when everyone registers for one event-wide capacity and does not need to choose a time.
Before you start
You can create bookings with no payment setup. If you want to charge online, complete Stripe setup first.
Create your first booking page
Go to Dashboard > Bookings > Booking pages and create a new booking page.
The create form includes:
- Title
-
Booking times (
Repeating weeklyorSpecific dates) - Spots per time
- Price per participant
Repeating pages default to Monday-Friday, 9:00 AM-5:00 PM. Specific-date pages open the Timeslots setup after creation so you can add the exact dates and times.
To reuse a page for another session, open Booking Pages, choose More > Copy booking page, then review the new draft. The copy includes its setup, but no booking times or player bookings. Add exact times or refresh repeating times before publishing it.
Set up the booking page
Use Edit on the booking page and work through the Setup and Settings sections.
To go straight to Timeslots from Dashboard > Bookings, choose Manage times. This shortcut appears when the list is filtered to one booking page or the organization has only one page. You can also open a booking and choose Manage times to manage that page's times.
Setup
Use Setup drilldowns for operational controls:
-
Timeslots (
Edit > Setup > Timeslots): review capacity, filled bookings, and remaining spots; add/edit/delete exact times on specific-date pages; or use More > Hide from booking page or Show on booking page -
Products (
Edit > Setup > Products): add products to checkout for one-time extras - Questions: collect booking-specific answers during checkout. Once the Booking Page has qualifying Activities, choose Ask for each question: Everyone, Drop-in players, or Registered players. Drop-in players are participants without a qualifying Registration for a linked Activity. Registered players have one. The same participant rule applies to price and access. Put drop-in-only questions on this Booking Page; included global questions are always asked of everyone.
- Waivers: require waiver signatures during checkout. Reuse uses the same waiver record on the Registration Activity and Booking Page, with reuse enabled, and applies to the selected participant. A parent who already signed does not cover a child who has not.
On specific-date pages, open Edit time under a future time to move it or change its spots, or delete it while it is unused. After a time has booking history, keep its date and time in place and update only its capacity. Capacity cannot be lower than the number of active and pending bookings.
Spaces, lengths, and member pricing
Booking pages that rent courts, fields, or rooms use three more Edit sections:
- Spaces: choose the spaces this page rents and how bookings use them. Pages that share spaces never sell the same space twice.
- Lengths and prices: sell longer bookings, like 2 or 3 hours, from the same start times.
- Member pricing: a lower price for players with a qualifying membership.
See Spaces and the booking calendar for each one.
Basic info
Set what players see:
- main photo (optional)
- booking page name
- price per participant (set
0for free bookings) - subtitle (optional)
- description (optional)
Use clear, player-facing language so people know exactly what they are reserving.
Availability
Choose how booking times are created:
- Repeating weekly generates future times from weekly availability.
- Specific dates lets you add exact future dates, times, and capacities in Timeslots.
Set the default Spots per time to 1 for an exclusive reservation or a
higher number for a group. Each participant reserves and, when applicable, pays
for one spot.
For repeating weekly pages, set:
- weekly availability by day (enable/disable each day)
- per-day start and end times
- booking length (minutes)
- start interval (minutes, optional under Advanced scheduling)
Example:
- Start: 9:00 AM
- End: 5:00 PM
- Booking length: 60 minutes
- Start every: 60 minutes
This creates back-to-back 1-hour booking times throughout the day.
Advanced settings
Use Advanced settings for booking rules and policy controls:
- weekly booking limit per player (0 to 4)
- player cancellation cutoff (hours before start)
- how far ahead repeating booking times are created (
Future slot horizon, days) - timezone
- visibility on your public site
Registration pricing
Registration pricing connects a Booking Page to the players in one or more Registration Activities. Use it when registered players should receive an earlier booking window, a lower price, or both.
Registration pricing answers two questions: which Activities qualify, and what those registered players pay. Booking access controls when each group can book and how many spots are available to drop-in players.
- Create the season or program as a Registration Activity. Its start and end dates must include every booking date it should cover.
- Create the Booking Page with the session dates, spots per time, and normal Price per participant for drop-in players.
- Open Edit > Registration pricing on the Booking Page.
- Under Qualifying registration Activities, select each Activity that should count.
- Set Price for registered players only if they should receive a different price. Enter 0 when the upfront registration includes each booking at no additional charge. Leave it blank when registered and drop-in players should pay the same price.
- Save the Booking Page.
For example, an organizer can collect one 16-week season payment through a Registration Activity, set each Booking time to 25 spots and a $10 drop-in price, then set Price for registered players to 0. A registered player books an available time for free; a drop-in player pays $10 for the same time.
Playpass checks the participant selected at checkout. That participant qualifies when they have an active individual Registration that is free or successfully paid, has not been refunded, does not use installments, and covers the booking date. Team and free-agent Registrations do not qualify.
Booking access
If registered players should have different access, set up Registration pricing first so Playpass knows who qualifies. Registered players can book and Maximum drop-in bookings per time appear once qualifying Activities are saved. Then open Edit > Booking access and configure any of these controls:
- Registered players can book: enter how many minutes, hours, or days before the time registered players may start booking. Leave it blank when registered players should follow the general opening time.
- Drop-in players can book: enter when general booking opens. Leave it blank to open general booking as soon as the Booking Page is published.
- Maximum drop-in bookings per time: enter the maximum number of bookings from players without a qualifying Registration. Actual availability is whichever is lower: this maximum or the total spots left. Leave it blank to share all spots, or enter 0 to allow only registered players.
- Booking closes after start: enter how many minutes after a time starts players may still book it. Enter 0 to close when it starts. Booking always closes by the time's end, even if the entered number is longer.
The registered-player opening must be the same as or earlier than the general opening. For a Repeating weekly Booking Page, set Advanced settings > Future slot horizon at least one day longer than the earliest opening. For example, an opening 7 days before the time needs a horizon of at least 8 days. Specific-date pages do not use this horizon.
Example: season players plus drop-ins
Suppose one session has 25 spots. Season players have already paid, may book 7 days ahead, and drop-ins pay $10 and may book 3 hours ahead. To set that up:
- Set Spots per time to 25 and Price per participant to $10.
- Under Registration pricing, select the season Activity and set Price for registered players to 0.
- Under Booking access, set Registered players can book to 7 days and Drop-in players can book to 3 hours.
- To allow at most 5 drop-ins per session, set Maximum drop-in bookings per time to 5.
The 5-booking maximum applies only to players without a qualifying Registration, but every booking still uses one of the same 25 total spots. If 22 registered players have already booked the time, only 3 drop-ins can book because only 3 total spots remain. If 18 registered players have booked, up to 5 drop-ins can book and 2 total spots remain available to registered players. A registered player who books later uses one of those remaining total spots.
This maximum does not release unused spots later. Change the setting if you want to make more bookings available to drop-in players.
What players see
Future dates stay visible. Before the first opening, the time is disabled and shows when booking opens. During priority access, the time says registered players can book. After the general opening, anyone can book until the general quota or total capacity is reached.
At checkout, the player chooses who is attending. Playpass applies the price, access, questions, and waivers to that exact participant. A parent making separate bookings for two children can receive different access, pricing, questions, and waivers for each child. Add new player is treated as a drop-in player: drop-in questions and waivers still appear even when the account holder is registered. When the registered-player price is 0, the booking itself does not require payment; optional products keep their own prices.
Matching answers from the qualifying Registration are copied onto the booking when the Booking Page question has the same name and answer type. Dashboard > Bookings and CSV export show those copied answers without looking up the Registration later.
Each booking remains a separate dated capacity, cancellation, receipt, and attendance record. The qualifying Registration and discount are saved on the booking receipt so historical reporting stays explainable even if the setup changes later.
Weekly booking limit
Set a per-player weekly cap:
-
0blocks new bookings -
1to4allows that many active bookings per week
Limits are enforced server-side, including concurrent booking attempts.
Products at checkout
Use Edit > Setup > Products to add products to checkout, like gear, merch, or other extras.
Players can choose those products while booking, and the product total is added to the reservation total and shown on the booking receipt.
Create products once and reuse them across booking pages from Dashboard > Orders > Products.
Refresh booking times after schedule changes
When availability-related settings change, Bookings shows a warning on the booking page:
- Availability changed. Refresh booking times to apply updates.
Click Refresh booking times to apply changes.
Refresh:
- updates future repeating booking times and their configured capacity
- keeps active bookings intact
- applies your latest availability rules forward
Specific-date pages are never changed by the weekly refresh or continuation job.
Publish and share
Publish the booking page, then share the public booking URL.
Players can then open your booking page and:
- view available booking times
- see spots remaining and full times
- reserve eligible times
- cancel before cutoff (if allowed)
Manage bookings
Open Dashboard > Bookings to review active and past reservations. For pages that rent spaces, Dashboard > Bookings > Calendar shows every booking by space, and staff can add bookings, weekly renters, and blocks there. See Spaces and the booking calendar. Choose Reports in a booking page's More menu to see its revenue, bookings, players, and cancellations. See Reports.
For a group roster, open Edit > Setup > Timeslots and choose the booking count beside that time. The filtered Bookings page shows each participant's separate booking. Choose Check in beside the time to open one attendance roster containing all active participants for that time.
Add a notice to one booking time
Use a player notice for a change that does not cancel the time, such as a new entrance, court, room, or arrival instruction.
- Open the Booking Page and choose Edit > Setup > Timeslots.
- Find the future time and choose More > Add player notice.
- Enter the update and choose Save player notice.
Playpass highlights the notice with that exact time on the public Booking Page, during checkout, and on each active booking receipt. New booking confirmation emails also include the notice. Edit the notice to change it, or save it blank to remove it. A notice does not change the time, capacity, price, or booking status. Saving or removing a notice does not send email to existing players.
Message everyone booked for one time
On Edit > Setup > Timeslots, open a time’s More menu and choose Message players for a time with confirmed bookings. Playpass starts a normal announcement draft addressed only to account holders with an active booking for that exact time. Pending, incomplete, and canceled bookings are excluded. If one account booked more than one participant, that account receives the announcement once.
Review the recipients and message before sending. You can edit the subject and message, send yourself a test email, choose the email format, send now, or schedule it for later. The message appears in each recipient's Playpass inbox and, when email is available, is sent by email. This is useful when a notice should also actively notify players; saving a player notice by itself does not send an announcement.
Cancel one player's booking
Players can cancel only before the Cancellation cutoff in Advanced settings. A manager can open an individual booking from Dashboard > Bookings and cancel it when needed, including after the player's cutoff.
When Playpass accepts an individual cancellation:
- Playpass requests a full refund of any refundable payment; the receipt shows the refund after Stripe confirms it
- the player's cancellation email is queued
- one spot becomes available again
- Playpass queues a reopened-time notification for organizer staff only if a previously full time becomes available
Remove or cancel a whole booking time
Open Edit > Setup > Timeslots to manage one future time. Open the time’s More menu and choose the action that matches what should happen:
| Action | Use it when | Result |
|---|---|---|
| Hide from booking page | You want to hide the time temporarily | The time disappears from the player page. Choose Show on booking page later to show it again. Existing bookings stay active. No email is sent. |
| Cancel this time | The session, lesson, or facility time will not happen | The time closes permanently and Playpass starts canceling current bookings, notifying players, and processing full refunds. |
| Cancel an individual booking | Only one participant should be canceled | That booking is canceled and the time stays open for other players. |
Cancel one future time
- Open the Booking Page and choose Edit > Setup > Timeslots.
- Find the future date and time, then choose More > Cancel this time.
- Enter the required Message to players. Explain what was canceled and why. This message appears in each player's cancellation email and booking receipt.
- Choose Cancel time and process refunds, then confirm the permanent action.
The time closes immediately and cannot accept another booking. Playpass then starts processing the affected bookings to:
- cancel every active or pending booking for that time
- queue the manager's message for each affected player
- request a full refund for each refundable paid booking
Every other date on the Booking Page stays unchanged. Timeslots shows whether processing completed or any booking still needs attention.
Canceling a time is permanent. It cannot be reopened with Show on booking page, so check the date and time before confirming. If you only need to hide a time, use Hide from booking page.
Check cancellation and refund progress
The cancellation details page shows progress and confirmed refund counts. From Timeslots, choose More > Cancellation details to return to it. The row shows one of these states:
| Status | What it means | What to do |
|---|---|---|
| Canceling | Cancellation emails or refunds are still being handled. | Wait and refresh. If it remains here, choose Retry if this stays stuck. |
| Canceled | Processing finished; details show canceled booking and confirmed refund counts. | No action is needed. |
| Needs attention | One or more bookings could not finish a refund or notification. | Review the listed players and error, then choose Retry failed bookings. |
A retry handles only unfinished work. It does not send completed cancellation emails again or create a second successful refund. If the message says a payment needs manual refund review, refund it in Stripe and retry. Contact Playpass Support from the dashboard if the status does not update.
The canceled time disappears from the public Booking Page. Each player can still open their receipt to see Canceled, the manager's message, and a confirmed refund amount when applicable.
Troubleshooting
Why are no booking times showing?
Check:
- the booking page is published
- at least one future time has an available spot
- for repeating pages, at least one weekday is selected and booking times were refreshed
- for specific-date pages, at least one exact future time was added in Timeslots
- timezone is correct
Why can a player not reserve?
Common reasons:
- weekly booking limit reached
- booking time is full
- booking time was removed from availability in Timeslots (
Edit > Setup > Timeslots) - the player's booking window is not open yet
- the general-booking quota is full and the selected participant does not have a qualifying Registration
- the selected participant's Activity does not cover the booking date, so registered priority does not apply
- booking page is paid but Stripe is not connected/enabled
Open Edit > Registration pricing to check the qualifying Activities, then Edit > Booking access to check the opening windows and general quota. Access and pricing follow the participant selected at checkout, not only the account or email used to pay.
Why did a registered player get the normal price or general access?
Check that the selected participant has an active individual Registration for a qualifying Activity and that the Activity covers the booking date. The Registration must be free or successfully paid, cannot be refunded, and cannot use installments. Team and free-agent Registrations do not qualify.
Also check that the correct participant was selected at checkout. A parent's account does not automatically give each saved player the parent's eligibility.
Why can I not save Booking access?
If registered players open early, Drop-in players can book must also have an opening time, and the registered opening must be the same as or earlier than the general opening. On a repeating Booking Page, Future slot horizon must be at least one day longer than the earliest opening window.
An early registered-player opening or Maximum drop-in bookings per time also requires at least one qualifying Activity under Registration pricing.
Why can I not delete a booking page?
Delete is blocked while active reservations exist. Cancel active reservations first, or archive/unpublish the booking page.
Why are booking times off?
Verify your booking page timezone in Advanced settings, then refresh booking times.
FAQ
Can I use Bookings without memberships?
Yes. Booking limits are configured directly on each booking page.
Can a parent book for a child?
- Yes. During booking checkout they can choose themselves, choose a saved player, or add a new player inline.
- On the website, manage saved players from Profile & Settings > Family > Players. In the iOS app, tap your profile picture and use Family.
- The parent account still owns the receipt and payment, while the selected player name appears on the booking receipt and in your dashboard.
Can members pay less for bookings?
Yes. Use Edit > Member pricing to set a price for members and choose the memberships that qualify. The participant chosen at checkout gets the member price while they have an active subscription. When they qualify for more than one price, they pay the lowest. See member prices.
Can staff add a booking for a phone or walk-in renter?
Yes, on pages that rent spaces. Choose Add booking on the booking calendar, then mark it Paid in cash, Unpaid, or No charge. Unpaid bookings can be paid from a payment link. See Spaces and the booking calendar.
Can I charge online for bookings?
Yes, with Stripe setup. Paid bookings go through Stripe Checkout. If Stripe is not connected, set the booking page price to 0 to keep it free.
Can I collect an upfront season payment separately from daily bookings?
Yes. Create a Registration Activity for the one-time season enrollment and a Booking Page for the dated capacity. Configure the Booking Page's normal drop-in price, then select the qualifying enrollment Activities under Registration pricing. Set Price for registered players only when they should pay a lower price, including 0 for bookings included in the season fee. Leave it blank when everyone should pay the normal Booking Page price.
Use Booking access to give qualifying players an earlier opening or limit general bookings per time. Access and any configured price follow the exact participant selected at checkout. Drop-in players follow general access and pay the normal price.
This is for fixed-term enrollment. When the upfront relationship should renew automatically, use a Membership and set a member price under Member pricing. See member prices. Membership status doesn't change Booking access.
Can registered players book early without receiving a discount?
Yes. Under Registration pricing, select the qualifying Activities and leave Price for registered players blank. Then set the registered and general opening times under Booking access. Registered players pay the normal Booking Page price but can book during the priority window.
Can I limit drop-ins while registered players use the remaining spots?
Yes. Set Maximum drop-in bookings per time under Booking access. This caps general bookings without creating separate inventory. The number of drop-ins who can still book is always whichever is lower: the unused part of this maximum or the total spots left. Registered and general bookings share the time's total capacity.
Enter 0 for registered players only. Leave the field blank when everyone should share all available spots.
Can I create exclusive and group booking pages?
Yes. Use one spot per time for private lessons or exclusive facilities and more than one spot for classes, clinics, tryouts, camps, event times, or shifts. Create separate booking pages when schedules, policies, or audiences differ.
Can several people reserve in one checkout?
No. Each checkout reserves one participant and creates one receipt, payment, waiver, and attendance identity. A parent can complete separate bookings for saved players.
Can I require checkout questions or waivers?
Yes. Use Edit > Setup > Questions and Edit > Setup > Waivers to add booking-specific requirements. Set Ask on each Booking Page question so everyone, drop-in players, or registered players see it. Reused waivers apply to the selected participant, not the whole account. Attach the same waiver to the linked Registration Activity and enable reuse if session members should not sign again.
Can I hide specific booking times without changing weekly availability?
Yes. Use Edit > Setup > Timeslots and choose More > Hide from booking page on an individual time. Choose Show on booking page to show it again.
Can I undo a canceled booking time?
No. Cancel this time is permanent because it cancels players and starts refunds. It never reopens automatically. Use Hide from booking page instead when you may want to show the time again later.
Can I hide booked times?
Booked times stay visible as unavailable so players can see what is full.
Can I delete a booking page with active reservations?
No. Delete is blocked while active reservations exist.
Should I create one booking page or multiple booking pages?
Use multiple booking pages when schedules, policies, or audiences differ (for example, private lessons vs facility rentals). Pages that rent the same spaces share them, so a court booked on one page is taken on the others.
What's next?
- Create your first booking page from Dashboard > Bookings > Booking pages
- Track reservations from Dashboard > Bookings
- Rent courts, fields, and rooms with spaces and the booking calendar
- Learn how to check in bookings and review attendance
- Learn about publishing your website content
- Learn about setting up Stripe for online payments
- Compare registration activities, memberships, and bookings to choose the right setup
- Learn about registration activities for one-time event signups
- Learn about memberships for recurring subscription access
- Learn about creating a storefront to sell products outside of bookings too
- Learn about waivers for digital signatures
More in Registrations & Payments
- Getting started with Registration Accept registrations, payments, discounts, questions, and waivers.
- Getting started with Memberships Set up recurring membership plans and automatic billing.
- Spaces and the booking calendar Rent courts, fields, and rooms by name, see every booking on one calendar, and add bookings at the desk.
- Check-in and attendance Record arrivals for activities, memberships, and bookings, then review attendance history.
- Registration, Memberships, and Bookings FAQ Choose the right setup for signups, recurring dues, and reservable times.
- Getting started with Sponsorships Sell sponsor packages, collect payment, and display approved sponsor logos.
- Getting started with Products and Storefronts Sell products at checkout or in a store, with options, stock, personalization, pickup, and shipping.
- Reports See revenue, signups, returning players, schedules, and attendance for your organization or one program.
- Accept payments online with Stripe Set up Stripe to accept payments and receive payouts.
Can't find it? Ask us.