Appointments
FineGym's appointment system allows members to book one-on-one sessions with staff members like personal trainers, nutritionists, or coaches. Unlike classes, appointments are based on individual staff availability.
Overview
The appointment system has three main components:
- Appointment Types - Define services offered (Personal Training, Consultation, etc.)
- Staff Schedules - Each staff member's available time slots
- Reservations - Booked appointment instances
Appointment Types
Appointment types define the services your staff can offer.
Creating an Appointment Type
Location: Appointments → Appointment Types → Add Appointment Type
Click Add Appointment Type and configure:
Basic Information
| Field | Description | Example |
|---|---|---|
| Name | Service name (unique) | "Personal Training Session" |
| Color | Calendar display color | #3498DB |
| Duration | Session length in minutes | 60 |
| Description | What the service includes | "One-on-one training session..." |
| Image | Cover photo for the service | Upload JPG/PNG |

Drop-In Settings
Allow members without membership to pay per session:
| Field | Description |
|---|---|
| Allow Drop-ins | Enable pay-per-session option |
| Drop-in Price | Price for non-members |
When drop-ins are enabled:
- Members without membership can book
- They pay the drop-in fee at booking
- Great for trial sessions or walk-ins
Drop-in price must be set if drop-ins are allowed. Free drop-ins are not permitted.
Scheduling Settings
Control how appointments are booked:
Minimum Booking Notice
How far in advance members must book:
| Option | Description |
|---|---|
| At start time | Book until session begins |
| 15 minutes - 4 weeks before | Minimum notice required |
Example: Set to "24 hours before" to give staff time to prepare.
Buffer Times
Add padding between appointments:
| Setting | Description |
|---|---|
| Buffer Before | Time blocked before appointment |
| Buffer After | Time blocked after appointment |
Buffer options: No buffer, 5, 10, 15, 30, 45, or 60 minutes
Use buffers for:
- Setup/cleanup time
- Travel between locations
- Preventing back-to-back bookings
Time Slot Granularity
How appointment start times are spaced:
| Option | Example Slots |
|---|---|
| 5 minutes | 9:00, 9:05, 9:10... |
| 15 minutes | 9:00, 9:15, 9:30... |
| 30 minutes | 9:00, 9:30, 10:00... |
| 60 minutes | 9:00, 10:00, 11:00... |
Smaller granularity = more booking options but more complex scheduling.
Late Cancellation
Define the cutoff for penalty-free cancellations:
| Option | Description |
|---|---|
| At start time | Cancel anytime without penalty |
| 15 minutes - 4 weeks before | Cancellations after this are "late" |
Late cancellations may count against usage depending on membership plan settings.
Assigning Staff
Link staff schedules to this appointment type:
- Click Add Instructor
- Select a staff member
- Their schedule becomes available for this type
Multiple staff: Add as many staff members as offer this service.
Schedule warnings: If a staff member has no time slots configured, a warning appears prompting you to set up their availability.

Staff Schedules & Availability
Each staff member has a schedule defining when they're available for appointments.
Accessing Staff Schedules
Location: Staff → [Staff Member] → Availability Tab
Or from the appointment type configuration.
Regular Schedule
Set recurring weekly availability:
- Select the Day of Week (Monday-Sunday)
- Add Time Slots:
- Start Time
- End Time
- Repeat for each day they work
Example Schedule:
- Monday: 9:00 AM - 5:00 PM
- Wednesday: 9:00 AM - 5:00 PM
- Friday: 9:00 AM - 1:00 PM
Custom Availability
Override regular schedules for specific dates:
- Go to Custom Availability
- Select a Date
- Choose:
- Unavailable: Block the entire day
- Custom Hours: Set specific time slots
Use for:
- Holidays
- Vacation days
- Training days
- Special hours
How Availability Works
When members book:
- System checks the appointment type's linked staff
- For each staff, checks:
- Custom availability for the date (takes priority)
- Regular weekly schedule
- Applies buffer times and existing bookings
- Shows available slots
Booking Appointments
Staff Booking (Admin)
Location: Appointments → Add Appointment
Staff can book appointments for members:
- Click Add Appointment
- Select the Appointment Type
- Choose the Staff Member (from linked schedules)
- Select Date and Time Slot
- Search and select the Member
- Choose their Membership (if multiple)
- Confirm booking

Member Self-Booking
Members book through the mobile app:
- Select appointment type
- Choose preferred staff (or "Any available")
- Pick date from available dates
- Select time slot
- Confirm with membership or pay drop-in fee
Booking Validation
The system validates:
- Staff is available at selected time
- No conflicting bookings
- Member has valid membership (or pays drop-in)
- Membership allows this appointment type
- Booking is within minimum notice period
Managing Appointments
Appointments List
Location: Appointments → Appointments
View all scheduled appointments:
| Column | Description |
|---|---|
| Appointment Type | Service name |
| Date & Time | Scheduled slot |
| Staff | Assigned staff member |
| Member | Client name |
| Status | Booked, Checked In, Cancelled, No-show |
Filtering Appointments
Filter by:
- Date range
- Appointment type
- Staff member
- Member
- Status
Appointment Actions
For each appointment:
| Action | Description |
|---|---|
| View Details | See full appointment info |
| Check In | Mark member as attended |
| Cancel | Cancel the appointment |
| Mark No-Show | Member didn't attend |
| Change Staff | Reassign to different staff |
Changing Staff
If a staff member is unavailable:
- Click Change Staff on the appointment
- Select a new staff member
- System validates they're available
- Confirm the change
Member is notified of the change.
Appointment Statuses
| Status | Description | Usage Impact |
|---|---|---|
| Booked | Confirmed reservation | No impact yet |
| Checked In | Member attended | Counts as usage |
| Cancelled | Appointment cancelled | Depends on timing |
| No-Show | Member didn't attend | Depends on plan settings |
Late Cancellations
If cancelled after the late cancel cutoff:
- May still count against membership usage
- Depends on membership plan's "Ignore No-Shows" setting
Calendar Integration
Appointments appear on the main calendar:
Location: Schedule → Calendar
- Displayed in appointment type's color
- Shows staff name and time
- Click to view details or manage
Staff Calendar View
Filter calendar by staff to see individual schedules:
- Their appointments
- Available slots
- Blocked time
Membership & Pricing
Membership-Based Booking
Members with active memberships can book if:
- Plan allows "All appointment types" OR
- Plan specifically includes this appointment type
- Has available usage (if limited)
- Membership isn't frozen
Drop-In Payments
For members without membership:
- Enable "Allow Drop-ins" on appointment type
- Set drop-in price
- Member pays at booking via Stripe
- Invoice created automatically
Usage Tracking
Appointment attendance counts toward:
- Membership usage limits (if configured)
- Punchcard credits (if punchcard plan)
Notifications
Booking Confirmations
When an appointment is booked:
- Member receives confirmation email
- Staff receives notification (if enabled)
Reminders
Configurable reminders before appointments:
- Email reminders
- SMS reminders (if Twilio configured)
Cancellation Notices
When cancelled:
- Member receives cancellation confirmation
- Staff is notified
- Slot becomes available again
Best Practices
Appointment Type Setup
- Use clear, descriptive names
- Set realistic durations including prep time
- Configure appropriate buffer times
- Write helpful descriptions
Staff Availability
- Keep schedules up to date
- Use custom availability for exceptions
- Block time for breaks and admin tasks
- Consider travel time between locations
Booking Policies
- Set minimum booking notice for planning
- Define clear late cancellation policies
- Communicate policies to members
Managing No-Shows
- Track no-show patterns
- Consider charging for repeated no-shows
- Send reminder notifications
Troubleshooting
"No available time slots"
Check:
- Staff schedules have time slots configured
- Staff is linked to appointment type
- Date isn't marked as unavailable
- Existing bookings aren't filling all slots
Member Can't Book Appointment
Verify:
- Membership allows this appointment type
- Has available usage
- Within minimum booking notice window
- Membership isn't frozen
"Cannot delete appointment type"
Reservations exist for this type. Options:
- Archive the appointment type instead
- Cancel all associated reservations first
Staff Schedule Not Showing
Ensure:
- Staff schedule is linked to appointment type
- Time slots are configured in the schedule
- No custom unavailability blocking the date
Related Topics
- Staff Management - Managing staff profiles and schedules
- Membership Plans - Appointment type restrictions
- Schedule & Classes - Group class scheduling
- Check-Ins & Attendance - Processing appointment check-ins