
A half-field booking should automatically block out the full-field option for that same window, and vice versa. This logic should be built into your platform. When it’s not, you end up manually monitoring calendars and issuing refunds when conflicts happen.
The right approach is role-based access — coaches can only see and book the fields relevant to their team or age group, and only within defined lead-time windows (e.g., no more than one week in advance). This lets you delegate the scheduling burden without opening the whole facility to uncontrolled bookings.
These two audiences can coexist, but they need to be segmented. B2B clients (leagues, clubs, teams) should have their own booking view with their own pricing, while public users see only what's available to them. Mixing these without segmentation leads to confusion and conflicts that require manual intervention to fix.
Set distinct rates by space type, day of week, and time of day — and make sure those rates are automated so you're not manually quoting every booking. A flat predictable rate per hour per field (with defined peak/off-peak windows) is far easier to manage than custom negotiated pricing for each group.
The goal is to get to a "set and forget" model where the platform enforces your rules, collects payment, and surfaces bookings without requiring manual input from your team. Every hour your staff spends resolving scheduling conflicts or processing payments manually is an hour you're paying for instead of generating revenue.
This is a space-sharing configuration. A "full facility" booking should only exist as an option that blocks all sub-spaces beneath it. But if someone only needs the fields — not the cages — that booking should leave the cages open for other users. Getting this logic right upfront prevents revenue loss from over-blocking.
