Leagues
The League system is designed for youth sports uniforms, school athletics, and any program where you need to collect individual player information (name, number, size), then fulfill garments on a per-player basis.
What the League System Is For
A League is a parent container (e.g., "Westside Youth Baseball League"). Within a league you have Teams (e.g., "Cardinals U12", "Cubs U10"). Each team has Players with their name, jersey number, email address, and size.
Each player gets a unique Claim Token — a one-time link that lets them (or their parent) confirm their jersey details and choose their shipping preference without paying, because the team/sponsor has already paid the shop.
Note
Creating a League
- Go to Admin → Leagues → New League.
- Enter the league name and select the storefront it is associated with.
- Set the season/year (for your own reference).
- Click Create League.
Adding Teams
Inside a league, click Add Team. Enter the team name, coach name, and (optional) coach email address. Repeat for each team in the league. Teams can be added at any time, even after player imports have begun.
Importing Player Rosters via CSV
Click on a team name to open the team detail page, then click Import Players (CSV). The CSV must have these columns:
name,number,email,size Alex Johnson,12,alex@email.com,YL Sam Rivera,7,sam@email.com,AM Jordan Lee,22,,YM
- name — Player full name (required)
- number — Jersey number (required)
- email — Player or parent email address (optional, but needed to send claim emails)
- size — Requested size. Use standard size codes: YS, YM, YL, YXL, AS, AM, AL, AXL, A2XL, A3XL
Tip
The Claim Token System
After importing players, SpreeShop generates a unique claim token for each player. A claim token is a secure one-time-use URL like:
https://yourstore.spreeshop.xyz/claim/t_a1b2c3d4
When a player visits their claim link, they see their name, number, and pre-selected size. They confirm the details (or request a size correction), choose their shipping preference, and submit. The claim is then marked as ordered and enters your production queue.
Emailing Players Their Claim Links
To send claim emails to all players in a team, open the team detail page and click Send Claim Emails. You can also select individual players and use the bulk action Send Claim Email. Players with no email address will be skipped and shown in a list so you can handle them manually.
The email includes: the player's name, jersey number, the claim link, and the expiry date of the claim (configurable, default 30 days).
Tracking Claim Status
Each player has a claim status that moves through this lifecycle:
| Status | Meaning |
|---|---|
| PENDING | Player imported but no claim email sent yet. |
| INVITED | Claim email sent; player has not yet used the link. |
| ORDERED | Player has submitted their claim and it is in production. |
| FULFILLED | Jersey produced, shipped or ready for pickup. |
The league and team dashboards show summary counts per status, so you can see at a glance how many players are still waiting to claim.
Shipping Options
When a player submits their claim, they choose from the shipping options you have configured for that league. You can configure up to three options per team:
- Bulk ship to coach — All jerseys for the team ship together to the coach's address. Players who choose this do not pay shipping.
- Individual ship to home — Player's jersey ships to their home address. Player pays shipping at claim time.
- Pickup at [location] — Player picks up their jersey at a specified location (e.g., the school, the shop). Free.
Configure shipping options for each team in the team detail page under Shipping Settings.
Related Articles
Was this page helpful?