# OpenCourt Help - For facility operators: undefined - [For facility operators](/help/facility-operators): Running your club on OpenCourt — scheduling, memberships, passes, payments, access control, check-in, integrations, and reports. - Community: The Community feature makes it easy for clubs to build stronger connections with their players. You can create groups, share updates, and let your players coordinate games, clinics, or just chat with each other. - [Community](/help/facility-operators/community): The Community feature makes it easy for clubs to build stronger connections with their players. - [Community Groups & Chats](/help/facility-operators/community/community-groups-and-chats): The Community feature makes it easy for clubs to build stronger connections with their players. You can create groups, share updates, and let players coordinate games, clinics, or just chat with each other. - [Creating groups / chats](/help/facility-operators/community/creating-groups-chats): The Community feature helps you keep your players engaged and connected. Create groups around skill levels, events, or interests, share important updates, and give your players an easy way to coordinate games, clinics, and conversations — all right inside your club’s app. - Court Bookings: Set up your schedule, take and manage court reservations, and control when and how your spaces can be booked. - [Court Bookings](/help/facility-operators/court-bookings): Set up your schedule, take and manage court reservations, and control when and how your spaces can be booked. - [Introduction to Court Scheduling](/help/facility-operators/court-bookings/introduction-to-court-scheduling): The Schedule is the heartbeat of OpenCourt — every reservation, event, any court block lives here. From this single view you can see what’s booked, spot open gaps, and make quick adjustments without hunting through separate screens. - [Reservations vs. Events](/help/facility-operators/court-bookings/reservations-vs-events): Both Reservations and Events block time on one or more courts, but they differ in who creates them, how players join, and how pricing works. - [Creating a reservation](/help/facility-operators/court-bookings/creating-a-reservation): In a vast majority cases, your customers will be making their own court reservations. - [Schedule Configuration Customizations](/help/facility-operators/court-bookings/schedule-configuration-customizations): We allow configuring your court sheet schedule in a variety of different ways, including setting up varying schedule time segment durations for the whole day or in different portions of the day. - [Blocking Off Courts or Marking Time as Unavailable](/help/facility-operators/court-bookings/blocking-off-courts-or-marking-time-as-unavailable): Sometimes, clubs need to make certain courts temporarily unavailable — for maintenance, cleaning, internal use, or private activities. The Unavailable option lets you block off time without creating a visible event or sharing any details with players. - [Dependent Spaces](/help/facility-operators/court-bookings/dependent-spaces): Dependent spaces let you link courts or spaces that share a physical footprint — like a full tennis court that can also be split into two pickleball courts. When one space is booked, OpenCourt automatically blocks off the others in the same time window, across reservations, events, and programs. No more double-bookings or manual coordination. Just set up the rules once and OpenCourt handles the rest. - [Resources (Ball Machines, Equipment & More)](/help/facility-operators/court-bookings/resources-ball-machines-equipment-and-more): Resources are bookable items at your club that members can add to their court reservations — ball machines, pitching machines, or any other equipment that needs to be reserved for a specific time slot. When a member books a court, they can optionally add a resource to their reservation. The system tracks availability so two people can't book the same ball machine at the same time, and handles pricing automatically. - Events & Programs: Create one-off events, recurring series, leagues and clinics, then manage rosters, waitlists and participant communication. - [Events & Programs](/help/facility-operators/events-and-programs): Create one-off events, recurring series, leagues and clinics, then manage rosters, waitlists and participant communication. - [Creating an event](/help/facility-operators/events-and-programs/creating-an-event): Events are Open Plays, Socials, Clinics, Tournaments, Leagues, Opening Parties, etc: anything that your customers can join as a participant. - [Creating a private event](/help/facility-operators/events-and-programs/creating-a-private-event): The Private Event feature allows you to reserve courts or host events that aren’t open to the public. It’s perfect for birthdays, corporate outings, or any occasion where you only want invited guests to join. You can create two types of private events, depending on what you want to achieve. - [How time slots work for various types of events](/help/facility-operators/events-and-programs/how-time-slots-work-for-various-types-of-events): When you create a reservation or an event, you’ll inevitably have to deal with the concept of Time Slots. - [Creating recurring event series](/help/facility-operators/events-and-programs/creating-recurring-event-series): Recurring events are ideal for activities that take place on a regular schedule, such as weekly Open Plays, clinics, or other programs. Instead of creating each event individually, you can set up a recurring series to save time. Each session in the series will still be created as a separate event, with its own sign-up list and payment. This means customers will register and pay for each session individually. - [Creating a Multi-Date Event (e.g. League)](/help/facility-operators/events-and-programs/creating-a-multi-date-event-eg-league): A league is a structured competition in which players or teams compete in multiple matches over a set period, often lasting several weeks or months. Unlike an Event Series, a league is created as one single event with multiple dates. Players register once for the entire league and make one payment that covers all dates. - [Editing Programs (Event Series)](/help/facility-operators/events-and-programs/editing-programs-event-series): Quickly update multiple upcoming events in a program without having to edit or recreate each one manually. - [Creating Events with Divisions](/help/facility-operators/events-and-programs/creating-events-with-divisions): The Event Divisions feature lets you organize participants into groups within the same event—such as men’s and women’s brackets for a tournament, or different skill level brackets. This is especially useful when you want balanced participation or specific limits for each group. - [Event Tags](/help/facility-operators/events-and-programs/event-tags): Event tags let you organize and categorize your events with custom labels like "Beginner", "Advanced", "Ladies Night", "Youth", or anything that fits your club. Tags show up as colored badges on events in the admin panel, and — more importantly — they can replace the default event type tabs on the user-facing Join page with your own custom filters. Tags also integrate with booking passes, so you can create passes that only work for events with certain tags (e.g., a "Beginner Clinic Pass" that only applies to events tagged "Beginner"). - [Event Waitlist](/help/facility-operators/events-and-programs/event-waitlist): The Event Waitlist feature lets clubs manage fully booked events more smoothly by allowing players to join a waitlist when no spots are available. When a spot opens up, players on the waitlist are notified automatically — helping clubs fill events faster and reduce last-minute drop-offs. You can choose between two types of waitlists depending on how much control you want over who gets invited and when. - [Auto-Cancellation for Events](/help/facility-operators/events-and-programs/auto-cancellation-for-events): The Auto-Cancellation feature makes it easy for clubs to manage events that depend on a minimum number of participants, such as clinics and open plays. If an event doesn’t reach the required number of sign-ups by a set time, it will be automatically canceled, and refunds will be issued to participants. - [Event Reminders](/help/facility-operators/events-and-programs/event-reminders): The Event Reminders feature helps clubs reduce no-shows by automatically sending reminders to participants before an event starts. You can configure reminders by event type (for example, leagues, tournaments, clinics) or customize them for individual events. This is especially useful for events people sign up for well in advance—such as leagues or tournaments—where reminders help ensure players don’t forget to attend. - [Sending Emails to Event Participants](/help/facility-operators/events-and-programs/sending-emails-to-event-participants): Admins can send a custom email directly to the participants of any event — a clinic, open play, tournament, or any other event type. This is useful for sharing last-minute updates or any message that applies specifically to the people in that event. - [Swish Integration - Effortless Game Management](/help/facility-operators/events-and-programs/swish-integration-effortless-game-management): Swish is a platform that makes it very easy for you to run leagues, tournaments, and a variety of other types of organized games, such as round robins, king… - Pricing & Discounts: Decide what your court time and events cost, run promotions with promo codes, add upsells, and process refunds. - [Pricing & Discounts](/help/facility-operators/pricing-and-discounts): Decide what your court time and events cost, run promotions with promo codes, add upsells, and process refunds. - [Pricing Models](/help/facility-operators/pricing-and-discounts/pricing-models): OpenCourt supports a wide range of pricing models so clubs can charge for court time in the way that best fits their policies and membership structure. You can combine different pricing rules — such as per-court fees, per-person fees, fixed reservation pricing, day passes, and guest fees — and apply them differently to members, non-members, and specific membership tiers. - [Booking Upsells](/help/facility-operators/pricing-and-discounts/booking-upsells): The Booking Upsells feature lets your club offer add-on products and services during court reservations or event sign-ups. It’s a great way to increase revenue while improving player experience — whether you’re renting paddles, selling balls, or offering food and beverage packages. - [Creating and Managing Promo Codes](/help/facility-operators/pricing-and-discounts/creating-and-managing-promo-codes): Promo codes let clubs offer discounts on court reservations, events, store products, and booking-pass packages. You control what a code applies to, how big the discount is, when it can be redeemed, and how many times. - [Limit a promo code to specific booking dates](/help/facility-operators/pricing-and-discounts/limit-a-promo-code-to-specific-booking-dates): Set a booking-date window so a promo code discounts only reservations and events that start on the dates you choose, separately from the dates the code itself can be redeemed. - [Processing refunds](/help/facility-operators/pricing-and-discounts/processing-refunds): OpenCourt makes it easy to handle refunds automatically according to your club’s cancellation policy. - Skill Rating: Learn how to use skill ratings to run better events — from having coaches assign verified ratings to your customers, to gating events by skill level using self-rated, club-verified, DUPR, or WorldPadelRating scores. - [Skill Rating](/help/facility-operators/skill-ratings): Learn how to use skill ratings to run better events — from having coaches assign verified ratings to your customers, to gating events by skill level using self-rated, club-verified, DUPR, or WorldPadelRating scores. - [Skill Rating: Create Balanced and Competitive Games](/help/facility-operators/skill-ratings/skill-rating-create-balanced-and-competitive-games): The Skill Rating feature helps clubs organize events where players are evenly matched — ensuring every game feels competitive, fair, and fun. Nothing frustrates players faster than joining a group that’s too advanced or not challenging enough. By setting skill levels, you create consistent, enjoyable experiences that keep players coming back. - [Setting skill ratings to players](/help/facility-operators/skill-ratings/setting-skill-ratings-to-players): OpenCourt supports two kinds of skill ratings for players: - [WPR (WorldPadelRating)](/help/facility-operators/skill-ratings/wpr-worldpadelrating): WorldPadelRating (WPR) is the global rating system for padel. When connected, your competition and social ratings appear on your profile and can be used to qualify for skill-gated padel events at participating clubs. - [DUPR Rating](/help/facility-operators/skill-ratings/dupr-rating): DUPR (Dynamic Universal Pickleball Rating) is the global standard rating system for pickleball. When your DUPR account is connected to OpenCourt, your verified singles and doubles ratings appear on your profile, can be shown to other players in events, and may be required to register for skill-gated games. - Memberships and Rule Sets: Learn how to set up and manage memberships, member benefits, rules, and restrictions. - [Memberships and Rule Sets](/help/facility-operators/memberships-and-rule-sets): Learn how to set up and manage memberships, member benefits, rules, and restrictions. - [Memberships & Rule Sets – Overview](/help/facility-operators/memberships-and-rule-sets/memberships-and-rule-sets-overview): Memberships let you create and sell recurring or one-time plans to your customers. - [Creating and Editing Memberships](/help/facility-operators/memberships-and-rule-sets/creating-and-editing-memberships): Before creating a membership, make sure you understand the what Memberships and Rule Sets are, and the relationship between them: [read here](./memberships-a… - [Setting Up Membership Plans & Pricing](/help/facility-operators/memberships-and-rule-sets/setting-up-membership-plans-and-pricing): Each membership can have multiple pricing plans — different ways for customers to pay for the same membership. - [Creating and Managing Rule Sets](/help/facility-operators/memberships-and-rule-sets/creating-and-managing-rule-sets): Memberships in OpenCourt have two distinct layers of configuration: Membership settings and Rule Sets. Every membership must be assigned exactly one rule set. The rule set defines the booking behavior and pricing that applies to all members holding that membership. Multiple memberships can share the same rule set. - [Run a membership presale](/help/facility-operators/memberships-and-rule-sets/run-a-membership-presale): Collect early signups for memberships before they go live — with an optional presale fee or deposit — then turn each signup into a real membership when you're ready. - [Family & Group memberships](/help/facility-operators/memberships-and-rule-sets/family-and-group-memberships): OpenCourt has two related but separate concepts: - Customers & Families: Let's learn how to add new members and assign memberships. This tutorial covers member and non-member distinctions, waiver processes, payment method setup, payment schedules, and managing membership renewals and cancellations. - [How family memberships work](/help/facility-operators/customers-and-families): Let one customer share a single membership with their family — spouse, kids, and dependents — on one bill, with optional per-person rule sets and booking passes. - [Adding a new customer](/help/facility-operators/customers-and-families/adding-a-new-customer): Most of the time, new customers create an account on OpenCourt on their own within a minute by entering their email and their name. - [Selling a membership to customers](/help/facility-operators/customers-and-families/selling-a-membership-to-customers): You can bring in someone fresh or turn a non-member into a full-fledged member. This guide walks you through the process. - [Custom Fields in Memberships](/help/facility-operators/customers-and-families/custom-fields-in-memberships): The Custom Fields feature allows clubs to collect additional information from members during the membership purchase process. This is especially useful for family or couples memberships, where you may need to know more about other people included in the plan. - [Upgrading / Downgrading Membership](/help/facility-operators/customers-and-families/upgrading-downgrading-membership): The Membership Upgrade/Downgrade feature makes it easy to switch members between different plans — whether they’re moving from monthly to annual, upgrading to a higher tier, or switching to a lower one. - [Club Credit](/help/facility-operators/customers-and-families/club-credit): Club Credit lets customers store value in their OpenCourt account and use that balance to pay for almost anything at the club — from court bookings and event registrations to POS purchases in the pro shop. - [Freezing a Membership](/help/facility-operators/customers-and-families/freezing-a-membership): The Freeze Membership feature allows clubs to temporarily pause a member’s membership without canceling it. This is useful when members go on vacation, take a short break, and they don't want to lose their spot and get on the waitlist or pay initiation fee again. - [Families & Group Memberships](/help/facility-operators/customers-and-families/families-and-group-memberships): The Families & Group Memberships feature allows clubs to group related members together under a single primary membership. This makes it easy to manage family or group plans where one person pays for the membership and others receive the same benefits as dependents. - [Creating and managing a family account](/help/facility-operators/customers-and-families/creating-and-managing-a-family-account): Learn how both users and club admins can create and manage a family account, add family members, and control how family benefits are shared. This article gives a quick overview of what each side can do and how family accounts work. - [Set up a family membership](/help/facility-operators/customers-and-families/set-up-a-family-membership): Turn a membership plan into a family plan: enable family, set a member limit, add member types with their own rule sets and passes, and choose who manages the roster. - [Family member types, rule sets & passes](/help/facility-operators/customers-and-families/family-member-types-rule-sets-and-passes): A reference for how rule sets, booking passes, member limits, and the membership lifecycle apply to family members on a membership. - Coach Booking: The Coach Booking feature brings private lessons, group classes, and clinics into one simple, organized system. Members can browse coach profiles, view bios and qualifications, check availability, and book lessons directly through the app — all in just a few taps. - [Coach Booking](/help/facility-operators/coaches): The Coach Booking feature brings private lessons, group classes, and clinics into one simple, organized system. - [Coach Booking Overview](/help/facility-operators/coaches/coach-booking-overview): The Coach Booking feature brings coaching into your club's digital experience. - [Creating a Coach Profile](/help/facility-operators/coaches/creating-a-coach-profile): Learn how to activate Coach Booking at the club level and configure default settings like booking windows, payment modes, and court restrictions. Then set up coach profiles with bios, contact details, and photo, and optionally link them to user accounts so coaches can access their own schedules in the app. - [Setting Up Private & Group Lessons](/help/facility-operators/coaches/setting-up-private-and-group-lessons): Learn how to configure a coach’s availability, create lesson types, and control pricing. Set weekly schedules with date exceptions, define private, semi-private, or group services, and customize pricing per participant or membership role — all while ensuring lessons are bookable only when both the coach and a court are available. - [Setting up Court Restrictions & Priority](/help/facility-operators/coaches/setting-up-court-restrictions-and-priority): By default, the system auto-assigns any available court for a lesson. You can restrict which courts are used and set a priority order. - [How Members Book a Lesson](/help/facility-operators/coaches/how-members-book-a-lesson): See the full booking experience from the member’s perspective — from browsing coach profiles and selecting a service to choosing a date, adding participants, and completing payment. This guide walks through each step so you understand exactly how lessons appear and how bookings are confirmed in the app. - [Managing Lessons as an Admin](/help/facility-operators/coaches/managing-lessons-as-an-admin): Learn how to use the Coach Agenda to view and manage all booked lessons and assigned events in one place. This guide explains how to review participant details, monitor payment status (paid, pending, cancelled, refunded), and collect payments for deferred bookings directly from the admin panel. - [Assigning Coaches to Events](/help/facility-operators/coaches/assigning-coaches-to-events): Beyond private lessons, you can assign coaches to any event — clinics, group classes, drills, camps, or any other event type. This lets members see who's teaching before they sign up, and gives coaches visibility into their full schedule. - [Coach's Own Schedule View](/help/facility-operators/coaches/coachs-own-schedule-view): When a coach has a linked user account, they can view their own schedule at My Profile → Coach Schedule. - Booking & Guest Passes: Learn how to create booking and guest passes, and redeem them. - [Booking & Guest Passes](/help/facility-operators/booking-and-guest-passes): Learn how to create booking and guest passes, and redeem them. - [What Are Booking Passes?](/help/facility-operators/booking-and-guest-passes/what-are-booking-passes): Booking passes are benefits that members receive as part of their membership — things like "4 open play sessions per month", "10 hours of court time", "20% off clinics", or "unlimited drop-in access". Instead of manually tracking what each member is entitled to, booking passes handle it automatically. Each pass has a specific value (number of uses, minutes, or a discount), validity dates, and rules about what it can be used for. When a member books an event or reserves a court, the system checks their available passes and applies the right one. - [Redeeming Booking Passes / Guest Passes](/help/facility-operators/booking-and-guest-passes/redeeming-booking-passes-guest-passes): There are 3 types of booking passes: - [Creating Booking Passes](/help/facility-operators/booking-and-guest-passes/creating-booking-passes): This guide walks you through creating a booking pass template step by step. Once a template is created, you can allocate passes to members manually or automatically via allocation rules tied to memberships. - [Creating an Allocation Rule](/help/facility-operators/booking-and-guest-passes/creating-an-allocation-rule): Once you created a template of the passes - [Auto-Allocating with Memberships](/help/facility-operators/booking-and-guest-passes/auto-allocating-with-memberships): There are three pieces to the system: - [Creating a Guest Pass](/help/facility-operators/booking-and-guest-passes/creating-a-guest-pass): Give your members a set number of free guest visits per month. When a member adds a guest to a reservation or event, the guest's fee is automatically waived — one pass is consumed per guest visit. - [Creating a Free Reservation Pass](/help/facility-operators/booking-and-guest-passes/creating-a-free-reservation-pass): Give your members a set number of free court reservations per month. Each time a member books a court, one pass is consumed and the booking fee is waived. Example: Premium members get 4 free court reservations per month. - [Creating a Free Court Hours Pass](/help/facility-operators/booking-and-guest-passes/creating-a-free-court-hours-pass): Give your members a pool of free court hours per month. Instead of counting individual bookings, the pass tracks total time — each reservation deducts its duration from the pool. - [Create a Free Event Pass](/help/facility-operators/booking-and-guest-passes/create-a-free-event-pass): Give your members a set number of free event entries per week/month. Each time a member joins a qualifying event, one pass is consumed and the fee is waived. - [Creating a Free Pass for Events with a Specific Tag](/help/facility-operators/booking-and-guest-passes/creating-a-free-pass-for-events-with-a-specific-tag): Give your members free access to events tagged with a specific category — like a skill level, age group, or program name. Only events with the matching tag are covered. - [Creating a Free Lesson Pass](/help/facility-operators/booking-and-guest-passes/creating-a-free-lesson-pass): Give your members free private lessons with a specific coach. You can restrict the pass to a specific coach and a specific service type — so the pass covers "1-hour Private Lesson with Coach Sarah" but not 90-minute lessons or other coaches. - [Create a Family-Shared Pass](/help/facility-operators/booking-and-guest-passes/create-a-family-shared-pass): Let an entire family share a single pass pool. When family sharing is enabled, all family members linked to the pass holder can use the pass independently — no need to book through the primary member. - [Creating a Pass Package](/help/facility-operators/booking-and-guest-passes/creating-a-pass-package): A Pass Package is a product that bundles one or more booking passes together. When a customer purchases the package, the passes are automatically allocated to their account. Unlike allocation rules (which tie passes to memberships), packages are one-time purchases — sold through your online store, POS, or payment links. - [Creating and Managing Subscriptions](/help/facility-operators/booking-and-guest-passes/creating-and-managing-subscriptions): A subscription lets you give users recurring benefits on a set schedule, such as every month or every quarter. For example, a subscription can include 2 clinic booking passes per month, 4 private lessons per month, or other recurring packages. The user is then charged automatically based on the billing frequency you set (monthly, quarterly etc). - Waivers: Learn how your customers can sign the waiver online, at the Front Desk, and how to check if a customer signed a waiver - [Waivers](/help/facility-operators/waivers): Learn how your customers can sign the waiver online, at the Front Desk, and how to check if a customer signed a waiver - [Signing a waiver at the Front Desk](/help/facility-operators/waivers/signing-a-waiver-at-the-front-desk): You can create a QR code for your waiver and keep it printed at the front desk. - [Signing a waiver online](/help/facility-operators/waivers/signing-a-waiver-online): If your club requires players to sign a waiver before participating, OpenCourt automatically prompts users to complete it during key actions. - [Checking if a customer signed a waiver](/help/facility-operators/waivers/checking-if-a-customer-signed-a-waiver): You may occasionally need to confirm whether a customer has signed your club’s waiver. - POS & Products: Learn how to sell gear, merchandise, or any other items directly through OpenCourt. - [POS & Products](/help/facility-operators/point-of-sale): Learn how to sell gear, merchandise, or any other items directly through OpenCourt. - [Purchasing POS Terminal](/help/facility-operators/point-of-sale/purchasing-pos-terminal): In order to accept in-person payments, you need to purchase a Point-of-Sale terminal. - [Connecting POS Terminal](/help/facility-operators/point-of-sale/connecting-pos-terminal): Connecting the Stripe terminal is a 3-step process: - [Adding products](/help/facility-operators/point-of-sale/adding-products): You can sell gear, merchandise, or any other items directly through OpenCourt. But first, you’ll need to add them to the platform. Here’s how. - [Managing Categories](/help/facility-operators/point-of-sale/managing-categories): You can easily organize your products in OpenCourt by creating categories such as Beverages, Merch, or Gear. Here’s how to add a new category and assign products to it. - [Sell and manage gift cards](/help/facility-operators/point-of-sale/sell-and-manage-gift-cards): Set up digital gift cards, sell them online and at the front desk, give free ones, and fix a card that went wrong. - Ad and Conversion Tracking: Report your bookings and purchases to Meta, Google Analytics 4, and Google Ads. - [Ad and conversion tracking in OpenCourt (overview)](/help/facility-operators/ad-and-conversion-tracking): Report real bookings and purchases to your ad platforms so campaigns optimize toward revenue, not clicks — with Meta, Google Analytics 4, and Google Ads. - [Set up Meta conversion tracking](/help/facility-operators/ad-and-conversion-tracking/set-up-meta-conversion-tracking): Create your Meta dataset, get the Dataset ID and Conversions API token, and connect them in OpenCourt so your bookings and purchases report to Facebook and Instagram ads. - [Set up Google Analytics 4 conversion tracking](/help/facility-operators/ad-and-conversion-tracking/set-up-ga4-conversion-tracking): Connect your GA4 property so OpenCourt sends page views, checkouts, and purchases to Google Analytics. - [Set up Google Ads conversion tracking](/help/facility-operators/ad-and-conversion-tracking/set-up-google-ads-conversion-tracking): Connect your Google Ads account so OpenCourt reports real sales as offline conversions Google can optimize toward. - [Send a test event](/help/facility-operators/ad-and-conversion-tracking/send-a-test-event): Use OpenCourt's built-in test console to prove your Meta connection works before real ad money depends on it. - [What OpenCourt sends to Meta and Google — and what it never sends](/help/facility-operators/ad-and-conversion-tracking/what-gets-tracked): A plain-English breakdown of the conversion data OpenCourt shares with ad platforms, how it protects your customers' privacy, and what stays private. - [Understand your conversion data in Meta](/help/facility-operators/ad-and-conversion-tracking/understand-your-conversion-data): How to read OpenCourt's Purchase and Subscribe events in Meta, break out sale types with content_category, and set realistic attribution expectations. - [Monitor and troubleshoot](/help/facility-operators/ad-and-conversion-tracking/monitor-and-troubleshoot): Check your conversion tracking health inside OpenCourt and fix the most common problems — missing test events, failing sends, and numbers that look off. - Access Controls & Smart Locks: Connect smart locks and access-control systems to OpenCourt: automatic per-booking door codes, in-app unlock, and NFC/BLE proximity keys. - [How access controls work in OpenCourt (overview)](/help/facility-operators/access-controls): How OpenCourt connects to your club's smart locks for per-booking door codes and in-app unlocking — and how to choose between Seam, RemoteLock, Rhombus, and UniFi Access. - [Which locks work with OpenCourt](/help/facility-operators/access-controls/choose-a-lock-for-your-club): Check whether a smart lock or access system works with OpenCourt — PIN door codes, in-app unlock, and NFC/BLE proximity keys — across August, Yale, Schlage, Kwikset, Lockly, Salto, UniFi Access and more. - [Connect a Seam lock to your club](/help/facility-operators/access-controls/connect-a-seam-lock): Connect your club's smart locks through Seam so bookings get automatic door codes. - [Connect RemoteLock to your club](/help/facility-operators/access-controls/connect-remotelock): Connect your club's RemoteLock account so bookings get automatic door codes and you can unlock doors from the admin app. - [Connect Rhombus to your club](/help/facility-operators/access-controls/connect-rhombus): Connect your club's Rhombus access-control organization so you and your customers can unlock mapped doors from the OpenCourt app. - [Connect UniFi Access to your club](/help/facility-operators/access-controls/connect-unifi): Connect your club's UniFi Access console so every booking gets its own door code and you can unlock mapped doors from the OpenCourt app. - [Make your UniFi console reachable (Cloudflare Tunnel)](/help/facility-operators/access-controls/expose-unifi-console-cloudflare-tunnel): Expose your UniFi Access console to OpenCourt securely with a Cloudflare Tunnel — no open firewall ports — so OpenCourt can issue door codes and unlock doors. - [Set who can unlock doors from the app](/help/facility-operators/access-controls/set-who-can-unlock-doors): Turn on in-app door unlocking for customers, and set per-lock rules for who can unlock and when. - [Salto KS mobile access](/help/facility-operators/access-controls/salto-ks-mobile-access): How mobile-key access works on a Salto KS system — getting connected, assigning and revoking keys per customer, and what customers see at the door. - [Access codes & scheduling](/help/facility-operators/access-controls/access-codes-and-scheduling): When door codes activate and expire, and how Just-in-Time scheduling keeps high-volume clubs within their locks' code-storage limits. - [Door codes day-to-day: view, share, and manage access codes](/help/facility-operators/access-controls/door-codes-day-to-day): After your locks are connected, this is how door codes behave every day — where to look one up, what the customer sees, and what happens when a booking changes. - [Disconnect or switch your lock provider](/help/facility-operators/access-controls/disconnect-or-switch-lock-providers): Disconnect a lock provider, understand what disconnecting revokes and removes, and switch to a different provider — Seam, RemoteLock, Rhombus, or UniFi Access. - [A customer can't get in — troubleshoot door access](/help/facility-operators/access-controls/troubleshoot-customer-cant-get-in): The customer says the door won't open. Find out whether the lock is down for everyone or just this one customer's access is blocked — then fix the right thing. - [Kisi access control (coming soon)](/help/facility-operators/access-controls/kisi-access-control): OpenCourt is building an integration with Kisi access control, using Kisi access links to give each booking its own QR code. Here's how it would work and how to register your interest. - [Thermostat control (coming soon)](/help/facility-operators/access-controls/thermostat-control): OpenCourt is building smart thermostat control so heating and cooling follow your bookings — built for clubs running unstaffed around the clock. Here's what it will cover and how to register your interest. - [Home Assistant](/help/facility-operators/access-controls/home-assistant): Send your OpenCourt bookings to Home Assistant with webhooks, so they can drive lights, HVAC and anything else you automate — with your club keeping control of the automation itself. - BayControl: Lock each simulator bay's PC when nobody has booked it and open it for the customer who did: setup, installing on a bay PC, bay codes, and running your bays day to day. - [How BayControl works for simulator bays](/help/facility-operators/bay-control): BayControl locks each golf simulator bay when nobody has booked it and opens it for the customer who did — so you can sell a 9pm Saturday slot with nobody on site. - Check-In & QR Scanner - [Check-In & QR Scanner](/help/facility-operators/check-in): Check customers in at the door by scanning their QR code, and see who has arrived on your Today page. - [Check a customer in with the QR scanner](/help/facility-operators/check-in/check-a-customer-in): Scan a customer's Check-In QR from any admin page to check them in, and handle anyone who needs attention. - [Choose a QR scanner for your front desk](/help/facility-operators/check-in/choose-a-qr-scanner): Any USB 2D/QR scanner works with OpenCourt check-in — what to look for, the models we recommend, and the one setting to change for a front desk. - [Set up the QR scanner at your front desk](/help/facility-operators/check-in/set-up-the-qr-scanner): Plug in a USB or Bluetooth QR scanner, verify it with the built-in scanner test, and check customers in from any admin page — no configuration needed. - [Let customers check themselves in with a posted QR code](/help/facility-operators/check-in/let-customers-self-check-in): Create a self check-in QR code, choose Static or Dynamic, display it at your club, and set the payment and check-in-window rules customers meet. - [Check-in reasons and troubleshooting](/help/facility-operators/check-in/check-in-reasons-and-troubleshooting): Every result a scan can show — Needs attention reasons, waiver and payment states, statuses, and source badges — and what to do about each. - Website Integrations - [Website Integrations](/help/facility-operators/website-and-integrations): Embedding OpenCourt in your website and the lobby TV schedule. - [Embedding OpenCourt into your website](/help/facility-operators/website-and-integrations/embedding-opencourt-into-your-website): There are several ways you can link to or embed OpenCourt on your website to give your visitors direct access to your club’s schedule and events. - [Set up a TV schedule display for your lobby](/help/facility-operators/website-and-integrations/set-up-a-tv-schedule-display-for-your-lobby): Mount a TV in your lobby or pro shop and show a live, full-screen view of every court — reservations, classes, and events — updating itself all day. - Emails & Notifications: Who your booking and event emails come from, where replies land, and how to send from your own domain. - [How OpenCourt sends your club's emails (overview)](/help/facility-operators/emails-and-notifications): The three parts of your email identity — sender name, From address, and reply-to — and where a customer's reply goes. - [Set your email sender name and reply-to address](/help/facility-operators/emails-and-notifications/set-your-email-sender-name-and-reply-to): Choose the name customers see in their inbox and the inbox that receives their replies, then send a test to confirm it works. - [Send emails from your own domain](/help/facility-operators/emails-and-notifications/send-emails-from-your-own-domain): Add your own domain with two DNS records, choose a From address on it, and keep the domain verified. - Payment Processing & Payouts - [Payment Processing & Payouts](/help/facility-operators/payments-and-payouts): Stripe, settlement, payouts, and what an 'incomplete' payment means. - [OpenCourt + Stripe Integration](/help/facility-operators/payments-and-payouts/opencourt-stripe-integration): OpenCourt uses Stripe to allow you to collect the payments from your customers for things like court reservations, event signups, memberships, POS. - [Payment Settlement & Revenue Disbursement](/help/facility-operators/payments-and-payouts/payment-settlement-and-revenue-disbursement): OpenCourt does not collect or hold any funds we process on your behalf. - [Why Do I See "Incomplete" Payments in My Stripe Dashboard?](/help/facility-operators/payments-and-payouts/why-do-i-see-incomplete-payments-in-my-stripe-dashboard): If you've noticed a number of payments marked as "Incomplete" in your Stripe dashboard, don't worry — this is completely normal and does not indicate any issue with your account, your customers, or OpenCourt. - Reports - [Reports](/help/facility-operators/reports): The revenue and itemized reports, and bookkeeping. - [Understanding the Revenue Report](/help/facility-operators/reports/understanding-the-revenue-report): The Revenue Report gives you a high-level view of your sales activity. - [Understanding the Itemized Report](/help/facility-operators/reports/understanding-the-itemized-report): The Itemized Report gives you a detailed, line-item-level view of every transaction. - [Financial Reports and Bookkeeping](/help/facility-operators/reports/financial-reports-and-bookkeeping): This article covers important context for facility owners and bookkeepers who use OpenCourt's financial reports for accounting and reconciliation purposes. - Branded App: Set up and maintain your company's own branded app — also known as a white-label app — on the App Store and Google Play. - [Branded App](/help/facility-operators/branded-app): Set up and maintain your company's own branded app — also known as a white-label app — on the App Store and Google Play. - [Overview / How your branded app is published](/help/facility-operators/branded-app/overview-how-your-branded-app-is-published): How your company's branded (white-label) app gets published under your business on the App Store and Google Play — who does what, costs, and timeline. - [Get your D-U-N-S number](/help/facility-operators/branded-app/get-your-d-u-n-s-number): How to find or request your free D-U-N-S number — the business ID Apple and Google require to publish your branded (white-label) app. - [Create your Apple Developer account and invite OpenCourt](/help/facility-operators/branded-app/create-your-apple-developer-account-and-invite-opencourt): Set up the Apple Developer account your branded (white-label) iOS app is published under, and give OpenCourt access. - [Create your Google Play account and invite OpenCourt](/help/facility-operators/branded-app/create-your-google-play-account-and-invite-opencourt): Set up the Google Play account your branded (white-label) Android app is published under, and invite OpenCourt. - [Common questions about your branded app](/help/facility-operators/branded-app/common-questions-about-your-branded-app): Answers to the questions companies ask most about their branded (white-label) app — ownership, fees, keeping it live, and timelines. - For players: undefined - [For players](/help/players): Using the OpenCourt app at your club — booking, your membership, your family, waivers, checking in, and getting through the door. - Your Family: undefined - [Family memberships](/help/players/customers-and-families): Put your family on one membership — what a family membership is, who you can add, and where to manage everyone. - [Add family members to your membership](/help/players/customers-and-families/add-family-members-to-your-membership): Put your spouse, kids, or other dependents on your family membership — at checkout or from your membership page. - [Why can't I add or move a family member?](/help/players/customers-and-families/why-cant-i-add-or-move-a-family-member): The common reasons adding, moving, or removing a family member is blocked on a family membership — and what to do about each. - Access Controls: undefined - [Getting through the door at your club](/help/players/access-controls/unlock-a-door-from-the-app): How you'll get into your club — a door code, unlocking from the OpenCourt app, or both — and what to do if you're stuck. - Simulator Bays: Getting into a golf-simulator bay you booked: your bay unlock code, when it works, and what to do if the bay does not open. - [Simulator bays](/help/players/simulator-bays): At clubs with locked simulator bays, your booking comes with a code that opens the bay screen for your session. - [Unlock your simulator bay](/help/players/simulator-bays/unlock-your-simulator-bay): Your bay's screen is locked until you type your code. Here is where to find it, when it works, and what to do if the bay does not open. - Checking In: undefined - [Checking in at your club](/help/players/check-in): How to check in when you arrive — show your Check-In QR Code to staff, or scan the club's posted QR to check yourself in. - [Check in at your club](/help/players/check-in/check-in-at-your-club): Show your Check-In QR Code from My Profile, or scan the club's posted QR, to check in when you arrive. ## Developer Documentation # Developer Documentation - [Getting Started](/developers): Connect your systems to your OpenCourt club with the OpenCourt API. - API Reference: undefined - Club: Club identity + the timezone all schedule times are in. - [Get the club](/developers/api-reference/club/get-the-club): Returns the club this API key belongs to — its name and timezone. - Spaces: Bookable spaces — courts and rooms. - [List spaces](/developers/api-reference/spaces/list-spaces): Returns the club's bookable spaces — courts and rooms — in the club's display order. - Customers: The club's customer list, each with their subscriptions. - [List customers](/developers/api-reference/customers/list-customers): Returns the club's managed customer list (each ClubUser), oldest relationship first. - [Get a customer](/developers/api-reference/customers/get-a-customer): Fetch a single customer by id. - Schedule: Events and reservations as one time-ordered feed of session items. - [List schedule items](/developers/api-reference/schedule/list-schedule-items): The club's schedule as a time-ordered feed of session items — event occurrences and court bookings — one item per (event, club operating day). - Events: A single event as a sign-up unit — its sessions, roster, and host. - [Get an event](/developers/api-reference/events/get-an-event): Fetch a single event by id — the full sign-up unit: every session (one club operating day) with its timeslots, plus the participants roster and host. - [List an event's participants](/developers/api-reference/events/list-an-events-participants): The event's roster, oldest first — the same order as the inline roster on GET /v1/events/{id}, and the UNCAPPED read. - [Get a participant](/developers/api-reference/events/get-a-participant): One roster entry. - Bookings: Court bookings customers made — the booking half of the calendar, flat and contact-free. - [List bookings](/developers/api-reference/bookings/list-bookings): The club's court bookings, oldest first. - [Get a booking](/developers/api-reference/bookings/get-a-booking): Fetch a single court booking by id. - Coaches: The club's coaches. - [List coaches](/developers/api-reference/coaches/list-coaches): Returns the club's coaches in display order. - [Get a coach](/developers/api-reference/coaches/get-a-coach): Fetch a single coach by id. - Waivers: The waiver log — the stream of signatures with a computed status. - [List waiver signatures](/developers/api-reference/waivers/list-waiver-signatures): The club's waiver log — the stream of signatures, oldest first. - Orders: The club's orders (totals; line items and payments come later). - [List orders](/developers/api-reference/orders/list-orders): Returns the club's orders, oldest first. - [Get an order](/developers/api-reference/orders/get-an-order): Fetch a single order by id. - Transactions: The money-movement ledger for reconciliation. - [List transactions](/developers/api-reference/transactions/list-transactions): The club's money-movement ledger, oldest first — one row per settled charge, each referencing its orderid (use GET /v1/orders/{id} for the itemized purchase). - Webhook endpoints: Subscribe a URL to signal types — the one write surface on v1, and integration metadata rather than domain data. - [List webhook endpoints](/developers/api-reference/webhook-endpoints/list-webhook-endpoints): The club's outbound webhook endpoints. - [Create a webhook endpoint](/developers/api-reference/webhook-endpoints/create-a-webhook-endpoint): Subscribe a URL to one or more signal types. - [Get a webhook endpoint](/developers/api-reference/webhook-endpoints/get-a-webhook-endpoint): One endpoint by id. - [Update a webhook endpoint](/developers/api-reference/webhook-endpoints/update-a-webhook-endpoint): Change url, scopes or signaltypes. - [Delete a webhook endpoint](/developers/api-reference/webhook-endpoints/delete-a-webhook-endpoint): Unsubscribe. - Signals: The club’s history of things that happened — the same envelope webhooks deliver, and the way to reconcile a window you missed. - [List signals](/developers/api-reference/signals/list-signals): The club's signal history, oldest first — one record per thing that happened. - [Retrieve a signal](/developers/api-reference/signals/retrieve-a-signal): One signal by id — the payload exactly as it was stored at emit time, which is what was delivered. - Signal types: Every signal a webhook endpoint can subscribe to — when it fires, the scope it needs, and the payload it delivers. - [customer.created](/developers/api-reference/signal-types/customer-created): A person became a customer of the club. - [customer.updated](/developers/api-reference/signal-types/customer-updated): A customer’s details changed, or an archived customer was restored. - [customer.archived](/developers/api-reference/signal-types/customer-archived): The club archived a customer. - [subscription.created](/developers/api-reference/signal-types/subscription-created): A membership or pass package became active, or started a trial. - [subscription.updated](/developers/api-reference/signal-types/subscription-updated): A subscription changed while it stayed live: a trial converted, the plan or billing cadence changed, a freeze started or ended, or a failed payment recovered. - [subscription.renewed](/developers/api-reference/signal-types/subscription-renewed): A renewal payment succeeded and the subscription moved into its next period. - [subscription.past_due](/developers/api-reference/signal-types/subscription-past-due): A payment failed and the subscription is past due. - [subscription.canceled](/developers/api-reference/signal-types/subscription-canceled): The subscription was canceled. - [subscription.expired](/developers/api-reference/signal-types/subscription-expired): The subscription reached its end and expired. - [booking.created](/developers/api-reference/signal-types/booking-created): A court booking was made. - [booking.updated](/developers/api-reference/signal-types/booking-updated): A court booking changed. - [booking.canceled](/developers/api-reference/signal-types/booking-canceled): A court booking was canceled. - [event.created](/developers/api-reference/signal-types/event-created): The club added an event to its schedule — a clinic, league session, lesson, open play or other programming. - [event.updated](/developers/api-reference/signal-types/event-updated): An event changed. - [participant.joined](/developers/api-reference/signal-types/participant-joined): A customer joined an event’s roster. - [participant.left](/developers/api-reference/signal-types/participant-left): A customer left an event’s roster. - [participant.checked_in](/developers/api-reference/signal-types/participant-checked-in): A participant arrived — checked in on time or as a late arrival. ## Blog Posts - [8 Reasons Why Breweries Are Installing Pickleball Courts and Golf Simulators](/blog/8-reasons-why-breweries-are-installing-pickleball-courts-and-golf-simulators): Craft breweries are evolving beyond taprooms. Here's why adding pickleball courts and golf simulators is becoming the smartest move in the industry. - [Top 10 Mistakes New Pickleball Clubs Make (and How to Avoid Them)](/blog/top-10-mistakes-new-pickleball-clubs-make): The clubs that last think beyond court rentals. Here are the mistakes new pickleball club owners keep making, and how the strongest operators avoid them. - [Why Golfinity Chose OpenCourt to Power America's Largest Indoor Golf Club](/blog/why-golfinity-chose-opencourt-to-power-americas-largest-indoor-golf-club): Discover why Golfinity, the largest indoor golf club in the United States, chose OpenCourt golf simulator booking software to power memberships, bookings, POS, and member retention.