INTRODUCTION
Feature Summary: This article walks through a basic ball machine setup from start to finish, using a real example: a club with one pickleball ball machine (usable only on Pickleball Courts #1 and #2) and two tennis ball machines (usable on the club's indoor court surfaces). A ball machine is one example of a resource in CourtReserve - everything here applies to any resource, not just ball machines.
Use Cases:
Set up a new ball machine (or other resource) from scratch, in the right order
Understand what each field on the resource category and resource setup screens actually controls
Restrict a resource to specific courts or court types
Note: For how resource fees behave once a reservation is booked - fee splitting, packages, discounts, and promo codes - see Overview: Resource (Ball Machine) Reservations and Fees.
OVERVIEW
Setting up a resource happens in six steps, in this order:
Create the resource category (e.g., "Pickleball Ball Machines").
Create the individual resource and assign it to that category (e.g., "Pickleball Ball Machine #1").
Set the resource's cost per membership type.
Confirm which membership types are allowed to book it.
Choose how resources can be booked (as a court add-on, standalone, or both).
Allow the resource on the reservation type(s) that should offer it.
Step 1 - Create Your Resource Categories
Every resource starts with a category - a group that shared settings (court types, reservation types, member access) get applied to. Categories are set up first, then individual resources are assigned to them in Step 2.
Go to Settings > Court & Resource Settings > Resource Categories and click Create New.
For our example, two categories are needed: Pickleball Ball Machines and Tennis Ball Machines.
Here's what each field on this screen controls:
Field | What It Does | Example: Pickleball Ball Machines | Example: Tennis Ball Machines |
Name | The category's display name. | Pickleball Ball Machines | Tennis Ball Machines |
Can be Booked with Courts | Whether resources in this category can be added when booking a court reservation. | Checked | Checked |
Is Court Required | Whether a court must be selected in order to book this resource. | Checked | Checked |
Allowed Court Types | Which court types this category can be used on. | Pickleball | Indoor |
Allow Members to Book this Category | The primary switch for member access - whether members can see and book this category at all. Both categories in this example have this checked, so members (not just admins) can book either ball machine. | Checked | Checked |
Restrict Resource Category to Reservation Types | Limits the category to specific reservation types. | Singles - Pickleball, Doubles - Pickleball | Singles - Tennis, Doubles - Tennis |
Note: "Allowed Court Types" (set here, at the category level) and "Plugged Courts" (set on the individual resource in Step 2) work together - Allowed Court Types sets the broad court type(s) a resource can be used on, while Plugged Courts, if used, narrows that down to specific individual courts. In this example, the tennis ball machines are usable on any Indoor court, while the pickleball ball machine is narrowed further in Step 2 to two specific courts.
Step 2 - Create the Individual Resources
With the categories in place, the next step is creating the actual bookable items that will sit inside them - in our example, the physical ball machines themselves.
Go to Settings > Court & Resource Settings > Manage Resources and click Create New.
For our example, three individual resources are needed: one under Pickleball Ball Machines, and two under Tennis Ball Machines.
Here's what each field on this screen controls:
Field | What It Does | Pickleball Ball Machine #1 | Tennis Ball Machine #1 & #2 |
Resource Category | Which category this resource belongs to, selected from a dropdown. | Pickleball Ball Machines | Tennis Ball Machines |
Name | The individual resource's display name. | Pickleball Ball Machine #1 | Tennis Ball Machine #1 / #2 |
If this Resource can only be used on certain courts, choose them here [Plugged Courts] | Restricts this specific resource to one or more named courts, rather than any court of the category's Allowed Court Types. Leave blank to allow any matching court. | Pickleball Court #1, Pickleball Court #2 | (left blank - bookable on any Indoor court) |
Is Active | Whether the resource is available to book at all. Unchecking hides it from both the member portal and admin panel. | Checked | Checked |
Once created, resources appear together in a list:
That list view shows a few extra columns beyond what's on the create or edit resource form - Requires a Court, Allowed Court Types, and Bookable By Members? aren't separately set per resource. They're inherited from the resource category (Step 1's Is Court Required, Allowed Court Types, and Allow Members to Book this Category) and shown here for reference.
Note: This is why the pickleball ball machine is restricted to Pickleball Courts #1 and #2 specifically, while the tennis ball machines are open to any court with an Indoor surface - the pickleball machine has specific courts chosen in the "certain courts" field, and the tennis machines don't.
Step 3 - Set the Resource's Cost
With the categories and resources created, the next step is deciding what to actually charge for them.
Go to Settings > Booking Settings > Costs, select the Court Costs tab, and scroll to the Resource Costs section at the bottom.
Each resource category gets its own row here (not each individual resource):
Field | What It Does |
Resource Calculation Type | Toggles whether the category's cost is charged Hourly or as a Fixed fee, set per membership type. |
Price field (per membership column) | The dollar amount charged for that membership type, using the calculation type selected. |
In our example: Both categories are set to Hourly. Pickleball Ball Machines is $30/hour across all three membership types. Tennis Ball Machines is $45/hour across all three membership types - a different price than the pickleball machine.
Note: Cost has to be set separately for every membership type. If a new membership type is added to the club later, come back to this screen to set a price for it too.
Note: Cost is set at the category level, not per individual resource. If one specific resource should cost more or less than others in its category (e.g., a premium machine), it needs its own separate category with its own pricing.
Step 4 - Confirm Membership Access
A resource being priced doesn't mean every membership type can actually book it - that's controlled separately, on a per-membership basis.
Go to Settings > Booking Settings > Bookable Items. This grid controls which membership types can book each reservation type, court type, and resource category.
In our example: Both Pickleball Ball Machines and Tennis Ball Machines are checked for every membership type at the club, so all members - regardless of membership type - can book either ball machine, subject to the court and reservation type restrictions set in Steps 1 and 2.
Note: This is a separate, more granular control from Allow Members to Book this Category (Step 1). Allow Members to Book this Category is the category's overall on/off switch; Bookable Items then determines which specific membership types that switch applies to.
Step 5 - Choose How Resources Can Be Booked
The last club-wide setting decides whether members can book a resource on its own, or only alongside a court.
Go to Settings > Booking Settings > General. Two settings here, both set per membership type, determine how members can book a resource:
Setting | What It Does |
Allow Members To Book Resources | The overall toggle for whether that membership type can book resources at all. |
Restrict Resource Bookings Just From Courts Scheduler | When checked, members can't reserve a resource on the standalone resource scheduler - it disappears as a bookable item there. Resources can still be booked elsewhere on the portal. When unchecked (the default), members can book a resource either as an add-on while booking a court, or on its own through the standalone resource scheduler - both paths are open. |
In our example: Both settings are checked for every membership type. Allow Members To Book Resources being checked confirms members can book resources at all. Restrict Resource Bookings Just From Courts Scheduler being checked means the standalone Resources scheduler is turned off for this club - members can't book a ball machine on its own from that scheduler, separate from a court reservation. If it were unchecked instead, members would also be able to start their booking from the standalone Resource Scheduler - though since both resource categories in this example have Is Court Required checked (Step 1), they'd still end up choosing a court as part of that booking, not skipping it entirely.
Note on Booking Windows: Booking Windows (Settings > Booking Settings > Booking Windows) only apply to courts - there's no way to set a booking window directly on a resource. A window is defined by court type and/or specific courts, per membership type.
In this example's context: Because this club only allows resources to be booked alongside a court (Step 5), a ball machine is only indirectly affected by a Booking Window - if the court it would be attached to is closed for booking, the ball machine can't be booked either, simply because the court itself can't be reserved. There's no separate window specifically for the resource.
A Related Display Setting: Showing Resources on the Member Courts Scheduler
There's one more setting worth knowing about here, even though it lives on a different settings page and controls something different: whether members can see that a resource is attached to a court reservation, as opposed to whether they can book one.
Go to Settings > Portal Settings > Setup, and scroll to find Display Booked Resources on Courts Schedulers on Member Portal.
Note: Unlike the settings in Step 5, this is a single organization-wide setting - one value for the whole club - rather than something set per membership type.
State | What Members See |
Checked | When a member books a court and adds a resource to that reservation, the resource's name appears directly inside that reservation's block on the Courts Scheduler (e.g., a court reservation shows "Ball Machine 2" underneath the reservation time).
|
Unchecked (default) | Members see the reservation itself (time, member names, etc.) but not which resources, if any, are attached to it. |
Note: This setting only affects what members see, and only on the Courts Scheduler specifically - it doesn't apply to the standalone Resource Scheduler, which is a separate view entirely, and it applies to the member portal and mobile app. Admins and staff viewing the Courts Scheduler in the admin panel always see attached resources listed on a reservation, regardless of this setting - as shown in this article's Admin Perspective section below.
Step 6 - Allow the Resource on a Reservation Type
The last piece: a reservation type has to explicitly allow a resource before it will appear as a bookable option when someone books that reservation type. Go to Settings > Reservation Settings > Reservation Types, edit the reservation type (e.g., "Singles - Tennis"), and scroll to the bottom.
Field | What It Does |
Allow Resource(s) | Whether any resource can be added to this reservation type at all. |
Required Resource Categories | If a category is selected here, that resource becomes mandatory - it's automatically added and its cost is rolled into the total fee, rather than being an optional add-on. Leave blank to make the resource optional. See Reservations with Required Resources for more. |
In our example: Singles - Tennis has Allow Resource(s) checked, with Required Resource Categories left blank - so a ball machine is available as an optional add-on when booking this reservation type, but not automatically required.
When the Resource Scheduler Shows (and When It Doesn't)
Now that all six setup steps are covered, here's a troubleshooting-style summary of why the standalone Resource Scheduler (Schedulers > Resource(s)) might not appear for a system user or a member - pulling together the settings from Steps 1-5 above.
For system users (admin panel): The Resource Scheduler tab only shows up when the club has at least one resource created, and the logged-in system user's role has permission to access it. This is controlled on the sub-admin role itself, under Scheduler(s) Visibility - if set to Specific Scheduler(s), the role's Restrict Visibility to the following Scheduler(s) field determines which schedulers (Expanded, Instructors Schedule, Resource(s), Consolidated, etc.) that role can see. If Resource(s) isn't included there, that sub-admin won't see the Resource Scheduler tab even if resources exist.
If resources exist but the tab is still missing for a sub-admin, check this role setting rather than the resource setup itself.
For members (member portal and mobile app): The standalone Resources option under Reservations only shows when all of these are true:
At least one resource exists in the club.
Allow Members To Book Resources is checked for their membership type (Step 5) - if unchecked, no Resources option appears anywhere, standalone or as an add-on.
Restrict Resource Bookings Just From Courts Scheduler is unchecked for their membership type (Step 5) - if checked, the standalone option is hidden, though resources can still be added while booking a court. A member who tries to reach the standalone page directly (e.g., a bookmarked link) is redirected back to their portal home instead.
Their membership itself is active - an expired or suspended membership won't show the Resources option, same as it won't show the Courts Scheduler.
Note: If a membership type has Hide Courts Scheduler checked (visible on the same General tab as Step 5's settings), the standalone Resources option is removed from the navigation menu along with the Courts Scheduler. This is a menu/display effect only, though: it doesn't actually block a member from reaching the Resources page directly, for example through a bookmarked link. The settings that actually enforce whether resources can be booked are Allow Members To Book Resources and Restrict Resource Bookings Just From Courts Scheduler (Step 5). Restrict Resource Bookings Just From Courts Scheduler does force a redirect on direct access, but Hide Courts Scheduler on its own does not.
ADMIN PERSPECTIVE
Booking a Ball Machine as an Admin
There's more than one scheduler an admin can book a resource from. This example covers two: Expanded, and Resource(s).
Option 1 - Booking via Schedulers > Expanded
This is the most commonly used scheduler for admins. Go to Schedulers > Expanded in the left navigation.
From the scheduler, clicking a time slot opens a booking form. For our example, an admin books a "Singles - Tennis" reservation on an Indoor court.
The Resources field on this form only shows resources that match the selected Court Type(s) and Reservation Type - in this example, "Tennis Ball Machines - Tennis Ball Machine #1" appears because an Indoor court and a tennis reservation type are selected, matching the Tennis Ball Machines category's Allowed Court Types and Restrict Resource Category to Reservation Types settings from Step 1, and because Singles - Tennis has Allow Resource(s) checked (Step 6). The pickleball ball machine would not appear as an option here.
Adding a player to the reservation shows the combined fee in action:
In this example: Charlie is booked for one hour of court time (Indoor, $30/hour on a Basic Membership per Step 3's Court Costs) plus the tennis ball machine ($45/hour). The system charges $75.00 total as a single combined cost - it isn't broken into two separate line items on the reservation. How that combined fee works, and how it splits or interacts with packages and discounts, is covered in more depth in Overview: Resource (Ball Machine) Reservations and Fees.
After saving, the booking appears on the scheduler grid, in the Tennis Court #5 column, showing the reservation type, the resource booked, and the time.
Option 2 - Booking via Schedulers > Resource(s)
Go to Schedulers > Resource(s) in the left navigation instead to book from a resource-only view.
This opens the Resources scheduler - a bird's-eye view of every resource in the system, each in its own column, with time slots down the side.
Note: This view shows only resources - it doesn't show which courts are open. Booking from here opens the same booking form and produces the same result shown in Option 1 above; the only difference is the starting view. Admins can book directly from here if needed, but it's often easier to book from Expanded instead, where court availability is visible alongside the resource - which is why most admins default to Option 1.
Double-Booking Prevention in Action
If an admin then tries to book that same ball machine again for an overlapping time - even on a different court - the system flags it before they can save.
The already-booked resource still appears in the dropdown, but labeled Conflicted. If the admin selects it anyway and clicks Save, they get an error and the booking does not go through:
This is the practical result of the double-booking prevention referenced in Booking Visibility, Duration, and Double-Booking Prevention above - the club has two tennis ball machines, so choosing Tennis Ball Machine #2 instead would succeed.
Viewing Daily Resource Usage
For a quicker, day-to-day view (as opposed to running a full report), go to Reservations > Resources in the left navigation. This lists every resource booking for a selected date or date range.
Use From Date / To Date, or the Today / Tomorrow / Next 7 Days / Next 30 Days / All dropdown, to change the time period shown.
Columns can be filtered individually - click the filter icon on a column header (e.g., Resources) and set a condition like "Contains" to narrow the list down to a specific ball machine.
This is a fast way for admins to check day-to-day resource usage without setting up a full report.
Viewing a Member's Resource Reservations
Admins can also see a specific member's resource bookings from that member's profile by clicking the Reservations tab. Each booking's Resources column shows what was booked.
This is useful for looking up what a specific member has booked, rather than filtering across all bookings club-wide.
Running a Report on Resource Usage
To see how often a resource is being booked over a longer period, admins can run a Reservations Report filtered to that resource, rather than reviewing bookings one at a time on the scheduler.
Set the Resources field to the specific resource to report on, along with any other filters needed (date range, courts, reservation types), and choose which columns to include in Setup Report Output - Resources is one of the available columns.
PLAYER PERSPECTIVE
Now that setup is complete and the admin side has been covered, here's what booking a ball machine looks like from a player's perspective.
Booking a Ball Machine as a Player
A member books a "Singles - Pickleball" reservation on Pickleball Court #1.
Just like the admin booking form, an Available Resources field appears, showing only resources that match the reservation type and court - here, "Pickleball Ball Machines - Pickleball Ball Machine #1" is the only option, since it's the only resource plugged into Pickleball Court #1 (Step 2).
In this example: The court costs $32.50 and the ball machine adds $30, for a Total Due of $62.50.
The resource displays under My Bookings, each reservation lists its resource by name.
Frequently Asked Questions
Q: The ball machine isn't visible for members to book. What's wrong?
A few settings commonly cause this - check each one:
Is Active on the resource itself (Step 2) - if unchecked, the resource is hidden everywhere.
Allow Members to Book this Category on the resource category (Step 1) - this is the primary switch for member visibility.
The membership permissions in Steps 4 and 5 - the member's membership type needs to be enabled in Bookable Items, and resource booking needs to be allowed for that membership overall.
Q: Members are seeing booking times that shouldn't be available. Why?
Verify the Custom Scheduler settings for that reservation type used to book resource(s), under Settings > Court & Resource Settings > Custom Schedulers.
Q: Can a resource be added to something other than a court reservation?
Yes - resources aren't limited to court bookings. They can also be added to Events, from the Create/Edit Event screen.
For example: A club's Meeting Equipment category (with a resource like a Projector) has Can Be Booked with Courts and Is Court Required? both unchecked, and no Allowed Court Types - this resource isn't tied to courts at all. Instead, it's meant to be added when creating an Event, the same way a ball machine gets added to a court reservation.
Q: All my settings look correct, but members still can't book the ball machine online. What am I missing?
This is most often a resource category configuration issue rather than a problem with the reservation type or membership settings. Check, in order:
Settings > Court & Resource Settings > Resource Categories - open the category (e.g., Ball Machines) and confirm Allow Members to Book this Category is checked, Can be Booked with Courts is checked (if the resource should be bookable alongside a court), and the correct Allowed Court Types are selected.
The reservation type members are using has Allow Resource(s) enabled.
Settings > Booking Settings > Bookable Items - confirm the member's membership type is enabled for that resource.
If the issue persists, it helps to identify whether members are booking from the court scheduler or the standalone Resources page, and whether the resource option is missing entirely or just failing to book - this narrows down whether the gap is in the reservation type setup or the resource category setup.
Q: How do I stop members from booking a ball machine?
There are a few ways to restrict access, depending on scope:
Disable for one membership type - Settings > Booking Settings > Bookable Items, find the membership type, uncheck the box for the resource category, and save. Members with that membership can no longer book that resource.
Hide the resource category from everyone - open the resource category and uncheck Allow Members to Book this Category. This removes it from the member portal entirely.
Block all resource bookings for a membership - uncheck Allow Members To Book Resources in that membership's reservation rules, on the Booking Settings > General tab, to prevent that membership from booking any resource at all.
SUMMARY
Setting up a ball machine (or any resource) comes down to six settings working together: the resource category, the individual resource, its cost, who can book it, how it can be booked, and whether the reservation type allows it. In this club's example, that meant one pickleball ball machine locked to two specific courts, and two tennis ball machines open to any indoor court - each priced differently, but both bookable by every membership type, only alongside a court reservation.
Once set up, admins and players interact with resources the same way they do courts: through a scheduler, with combined pricing, and with built-in double-booking protection. Admins also have a few extra tools - a dedicated resources scheduler, a daily usage view, member-level reservation history, and full reporting - for keeping tabs on how resources are actually being used.






























