Advanced Match Registration
Set up player self-registration for matches with RSVP tracking, flexible modes, real-time updates, and lineup promotion.
Prerequisites
Before setting up match registration, you need:
- A Balla Stats account
- Admin or Owner role in the group
- A non-season match (registration is for friendly/pickup matches only)
Player self-registration is available for non-season matches only. Season matches use the fixture system for lineup management.
Choose the registration mode that fits your match type. Each mode controls how players can sign up for teams.
TEAM_RESTRICTED
Players can only register for their own team. Best for organized club matches where team assignments are fixed.
FLEXIBLE
Players can register for either team. Perfect for pickup games and casual matches where teams are flexible.
- Enable match registration
- Use team-restricted mode
- Use flexible mode for pickup games
- View registration status
- Promote registrations to lineup
- Real-time WebSocket updates
When creating or editing a match, toggle the registration setting to allow players to RSVP. You can enable registration at any time before the match is completed.

Select the registration mode based on your match type.
Best For Each Mode
- Club Matches: Use TEAM_RESTRICTED so players only join their assigned team
- Training Sessions: Use TEAM_RESTRICTED for tracking attendance within teams
- Pickup Games: Use FLEXIBLE so players can join either team based on availability
Once registration is enabled, linked players can set their RSVP status. Players see a registration sheet where they can indicate their availability.

Monitor who has registered and their status. Each player's status is color-coded for quick reference.

When you are ready to finalize the lineup, promote confirmed registrations to the official match lineup. You can promote individual players or all confirmed players at once.

Registration updates are broadcast in real time via WebSocket connections. All participants see changes instantly without refreshing the page.
WebSocket Events
- registration:update - Fired when a registration is created, updated, or cancelled
- registration:summary - Fired when registration counts change
- registration:promoted - Fired when registrations are promoted to the lineup
Use Flexible for Pickup Games
Flexible mode lets players join either team, making it perfect for casual games where you need to balance teams.
Promote Before Kick-off
Promote confirmed players to the lineup before the match starts so the lineup is ready for live tracking.
Transparency Builds Commitment
Players can see who else has registered, which encourages more people to commit and reduces no-shows.
Combine with Cost Splitting
Use registration together with cost splitting to track both attendance and payment for turf rentals.
Can't Enable Registration
- Registration is only available for non-season matches
- Ensure the match does not belong to a season
- Check that you have admin or owner permissions
Player Can't Register
- The player must be linked to a user account (have a userId)
- In TEAM_RESTRICTED mode, the player must belong to one of the match teams
- If the player is not in the group, they can use the Player Link Request system to request access