Two formats
Single elimination and round robin.
The two formats most clubs actually run. Single elim auto-pads to the nearest power of two with byes. Round robin generates a balanced pairings table; top of the table wins. Other formats stay off the page until they're shipped.
Entry fees
Stripe checkout, paid before the draw.
Optional fee per entrant. Players complete Stripe checkout to confirm their slot; if the tournament is cancelled, refunds go through automatically. Funds settle to the club's Stripe account, same rails as bookings.
Score reporting
Phone-first, owner-confirmed.
Either player taps the match in the bracket and submits the score. Both submissions need to agree, or an owner steps in. Nothing is public until rubber-stamped — that's the difference between us and "live scoring".
Public draw
A bracket members can show off.
Each tournament gets its own public page at /tournaments/spring-open. Members share it; the club lobby TV reads it just fine. Updates as soon as a score is confirmed.
Court allocation
Reserve courts for the tournament.
Attach a tournament to a court block in the booking grid. Members trying to book those courts see "Tournament: Spring Open" rather than an empty slot. No hand-coordination between the front desk and the bracket.
Reports
Entries, fees, court time.
After the final, the tournament report appears under /dashboard/reports. Entries collected, fees paid, court time used, plus the audit trail of every score confirmation. CSV-friendly for committee reviews.