Manage events

Organizer guide 🥒

Everything you need to run events and tournaments. Follow the steps in order.

The big picture — two halves:

  1. 1. The Event = sign-ups & money. Players register and pay online ahead of time.
  2. 2. The Tournament = game day. You generate rounds, enter scores, and run the bracket.

Set up the Event first; on game day press Run event to turn it into a Tournament.

1. Log in as an organizer

  1. 1Tap Staff login at the bottom of any page (or Sign in top-right) and use your organizer email: we email you a one-tap magic link. Only accounts on the organizer Team get in; the owners add or remove organizers on the Team page.
  2. 2Signed in, tap the green Organizer button in the header (it says Dashboard if you also use the coaching CRM), or the card on your account page. You can still go straight to wakamolepbc.com/organizer. On a shared device, tap Sign out when you're done.
  3. 3You land on the Organizer dashboard: at-a-glance tiles, a New event button and Copy join link. The organizer bar under the logo takes you everywhere else (see Getting around below).

💡 You stay signed in on that device. Regular players never see any of this.

💡 Install the app: on the dashboard tap Install (Android) or use Share → Add to Home Screen (iPhone) to run Wakamole like an app on your phone.

💡 Onboard players fast: tap Copy join link and send everyone wakamolepbc.com/join — they sign in and fill their profile in one flow.

Getting around

Every organizer page has the same bar under the logo. On a phone it scrolls sideways.

DashboardToday at a glance: events, registrations, unpaid, waitlist, status
AnalyticsHow the club is doing: revenue, players, nights, leads
EventsCreate, edit and manage events; registrants, payments, Run event
PlayersEveryone with an account: search, tags, text a group, link DUPR
PaymentsEvery paid, unpaid and refunded registration, with totals
InquiriesContact-form messages waiting for a reply
AcademyJunior Academy applications to review and decide
MessagesEmail players (everyone, a tag, an event’s registrants)
HealthProblems the site recorded, like a payment that didn’t confirm
TeamWho can use the organizer tools; owners add or remove organizers
GuideThis guide
TournamentsGame-day tournaments: rounds, scores, bracket
Coaching CRMOnly if you’re also a coach: lessons, clients, schedule

💡 A yellow number on a tab means something is waiting for you: unpaid registrations on Payments, unanswered messages on Inquiries, new applications on Academy, recent problems on Health.

  • Back to organizer tools from anywhere: the green Organizer button in the header (or Dashboard → Organizer if you also coach).
  • To the public site: tap the Wakamolé logo.
  • Tournaments: Tournaments in the organizer bar. On a tournament page, Events · Tournaments sit next to the logo and the green button brings you back.
  • Coaching CRM: Coaching CRM in the organizer bar; from the CRM, Organizer tools and View site are at the bottom of the left sidebar.
  • Your account page (/account) has a green card for each dashboard you can open.

💡 Lost? Tap the logo to get home, then the green button in the header. You can always type wakamolepbc.com/organizer too.

💡 Sign out (top-right of the organizer bar, or on your account page) signs you out of the whole site, including the coaching CRM. Do it on shared devices.

2. Create an event

  1. 1On Manage events, tap “+ New event.”
  2. 2Fill in name, date, start time, location, price (0 = free), and capacity (blank = unlimited).
  3. 3Tap “Create & open registration.” The event shows an Open tag — players can now register.

💡 Use Close to stop new sign-ups; Open reopens them.

3. Share it so players can register

Every event has a public link like wakamolepbc.com/events/<event-id>. Players open it, sign in with a one-tap magic link (no password), pay by card (or register free), and get a confirmation email.

💡 Players can mark “I need a partner” or name their partner when registering — you'll see it on the registrants page. Naming a partner emails them a link that opens sign-up already paired (no searching again); once they register the pair is mutual, so Build teams pairs them without guessing. Picking someone already partnered is allowed but flagged.

💡 If the event is full, new players join a waitlist and are auto-offered spots when someone cancels.

4. Track who's coming

On Manage events, tap “Registrants.” You'll see everyone with their contact info, partner, and payment status:

  • Paid — money's in.
  • Unpaid — started but didn't finish; their spot is held 30 min, then released automatically.
  • Free — free event.

There's also a Waitlist section and an Export CSV button for the full list.

5. Message your players

Text from your phone (free) 📱

  1. 1Manage events → Players.
  2. 2Check the players you want (those with a phone number).
  3. 3Tap “Text them” → choose One at a time (private, auto-fills first name) or Group text → tap Open Messages → send.

💡 Do this from your phone. On a computer, use the Copy buttons instead.

Email a group ✉️

Manage events → Message. Pick an audience (all / by tag / an event's registered or waitlist), write a subject + message, and send. Tag players on the Players page (e.g. 4.0, Women's Player) to target them.

One person, one row 🔗

Typing a name on Add player, Add team, or an invite checks it against every account and the roster. An exact match, or first name + last initial (“Keaton Z” → Keaton Zargham), is linked automatically and takes the account's full name; someone already on the roster is reused, never added twice. If it could be two people you're asked “Did you mean…?”. For names typed before this existed, the Link name-only players panel on the Players page finds and links them in one tap.

Link players to DUPR 🎯

On the Players page, open Link players to DUPR and paste a CSV — one email,duprId per line (up to 500). Each id is checked with DUPR: a typo comes back as not recognized and an unknown email as no account(send them wakamolepbc.com/join); nothing wrong is stored. Linked players get their verified doubles rating, and their DUPR photo if they don't have one yet. DUPR is the source of truth for ratings: a verified rating wins over anything typed by hand. Players can also link themselves on their profile (Sync or Save — both check the id). Use Refresh linked ratings occasionally — DUPR ratings move weekly.

On a DUPR-rated tournament, the Players tab flags anyone whose matches would be dropped with an amber No DUPR ID chip, plus a count across the top of the roster. A player is covered once their linked account has a DUPR id, so the fix is Link account (name-only rows) or getting the player to add theirs. A match missing an id isn't lost: it's skipped and retried on every submit. DUPR only accepts club matches for Wakamole club members and invited players, so make sure everyone on a rated night is one.

Send invite is usually the quickest fix: invites to a rated night explain that a DUPR ID is needed, and the player keeps seeing a prompt on My account while they have an upcoming rated night — the id then flows onto the roster by itself.

A floating Submit N matches to DUPR button sits at the bottom-right of the tournament page on every tab, always naming the club it lands on. N is exactly what will be sent (skips already left out). Each match is sent exactly once, so press it mid-night and again at the end; if two organizers press at once, the second is told a submit is in progress. A pop-up lists what went, what was skipped and why (no DUPR id, no score, not a doubles pair, score not verified, forfeit), and anything DUPR rejected. Preview (Schedule → settings) runs the same check without sending. Each match goes as one game on the tournament's date. Submissions affect real ratings and can't be undone from the app.

Score verification (optional): tick Require score verification in Schedule → settings. Each finished match then shows Verify score; only verified matches go to DUPR, and editing a score clears its verification.

If your account can also target the test club, the button shows a Club toggle with nothing preselected — pick one every time. The test club still counts for real ratings. Each submitted match records the club it went to (“Sent to DUPR · #…” on the card) and is then frozen: no score edits or deletion, and after the first submit no Clear scores, regenerating rounds or redoing the bracket (Withdraw and Replace still work). To correct a sent result, ask the club admin or contact DUPR support.

6. Run the tournament on game day 🏆

  1. 1Tap “Run event” (on Manage events or the Registrants page). It creates a tournament already filled with your registered players and opens it.
  2. 2Players: the roster is pre-filled. Tap Add players for walk-ups, or remove no-shows. Leave Comp (free) checked to comp someone (past winners, favors); uncheck it to have them pay. Self-registered players show their partner beneath their name. For a fixed-partner or mixed event, tap “Build teams from registrations” to auto-pair paid players with the partner they named — anyone it can't match is listed to add by hand. Each pair in the preview has a team name box; leave it blank for the default “Ann & Bob”.
  3. 3Set it up (Schedule → settings): name, courts, and scoring (e.g. Game to 11). Save settings, or Save + regenerate rounds to apply court/round changes to an existing schedule.
  4. 4Pools (optional): in settings set Pool play to a number of pools and Advance per pool (default 2). Players split evenly into pools that each play their own round-robin; the top finishers from every pool advance to the bracket.

    Keeping pools fair: the split is drafted strongest-first from each player's DUPR rating (for fixed/mixed teams, the average of both partners), so no pool ends up stacked. Linked players are rated automatically from their account — including anyone who links DUPR after registering — so you only type in walk-ins (the box beside each name). Refresh from DUPR in the roster header fetches everyone's latest rating and photo from DUPR when they've moved — DUPR is the source of truth, so a verified rating replaces anything typed. Each rating is badged with where it came from: ✓ DUPR (verified) beats everything; ✎ you (typed by you) is used when DUPR has none and beats ~ self (the player's own unverified number). Rating caps in a tournament's name aren't enforced by the app. Spot-check ~ self numbers that look inflated, since players with no rating are seeded as the weakest. After generating, the Pools panel shows each pool's average rating and a dropdown to move anyone by hand. Moving someone makes the split Manual, and regenerating rounds then keeps your pools; “Reseed from ratings” goes back to automatic.
  5. 5Tap “Generate rounds.” The schedule appears (matches, courts, byes — grouped under Pool A / B / … when using pools). Tap “Regenerate rounds” after any change. Forgot a team or need to swap someone? You can still fix the roster after generating — as long as no scores are in yet — then regenerate. Once you've scored a match, tap “Clear scores” first to redraw.

    Not happy with the draw? (Fixed/Mixed) Tap “Edit draw.” Each match gets two team dropdowns, a Court box, a Round dropdown, and a 🗑 — plus “+ Add match to Round N” at the bottom of every round. Changes save as you make them. Only teams from the same pool are offered. Swapping a team clears that match's score (it belonged to the old pairing), so you'll be asked first. Want to build the whole schedule yourself? “Clear draw” empties it and leaves you Round 1 to fill in. If someone ends up playing twice in a round you'll see a warning — it doesn't block you, in case that's deliberate.
  6. 6Stop people paying twice: the sign-up link stays live while the tournament runs, so tap “Close registration” once everyone's in — it's in the header chip, at the top of the Players tab, and beside Player sign-up link on Schedule. The “Register to play” panel disappears and the sign-up page shows “Registration is closed” and nobody can pay — even with the link saved. Players who already paid keep their confirmation, and you can still add players, Request payment, and Send invite. “Reopen registration” undoes it.
  7. 7As games finish, tap “Enter score” on each match (“Edit score” to fix one). Standings update automatically — one table per pool when pooled, with the advancing spots flagged “Advances.”
  8. 8When play is done, open Playoff and start the bracket (with pools, the top N from each pool are seeded automatically), run it, then “Finish the playoffs” to crown the winner.
  9. 9Tap “Share tournament” for a link / QR so players can follow standings live (view only).

💡 Someone pulled out? On the Players tab, under their team row: Withdraw team — before any score they're left off the next Generate; mid-night their unplayed matches become forfeits (opponent wins, 0 points, never sent to DUPR) and played matches are kept. Replace ‹name› swaps in a substitute for every upcoming match. Reinstate undoes a withdrawal while the bracket hasn't played on. A withdrawn player who paid gets a Mark refunded button (refund in Stripe first). Never use the trash icon for a pull-out — it's for mistaken entries and hides itself once there's a schedule or a payment.

💡 Day-of pricing: a tournament's entry fee automatically rises to the day-of price at midnight Eastern on event day. Players who register earlier pay the lower early price. Set both in Schedule → settings; leaving the day-of box blank keeps the current value rather than making it free.

💡 Nights can cost different amounts. Each night in a series carries its own prices, so a Wednesday series can run $30 random-partner nights alongside $40 DUPR nights. The event page shows a price range, puts each night's price on its date button, and explains which nights cost more. Picking two nights charges the sum.

💡 Results submitted to DUPR? Tick that box on Create Tournament or later in Schedule → settings. Rated nights get a DUPR-rated pill on the header and in the tournaments list. It's separate from the rating caps in the tournament name, which only control who may enter.

💡 Events inherit DUPR from their nights. An event has no DUPR setting of its own — Manage events shows a DUPR-rated pill (or “2 of 4 nights” for a mixed series), and the create/edit form reports how many upcoming nights your location or series keyword matches, and how many are rated, as you type. If none match yet, create the tournament nights first.

💡 Players registering through the tournament link can add a partner — pick a registered player or type a name — and edit it later from the same page.

7. The organizer panel: analytics, payments, inquiries, academy, health

The bar under the logo links every organizer page. A yellow number means something is waiting for you.

  • Payments lists every paid, unpaid and refunded registration with revenue totals. On an unpaid row tap Resend pay link for a fresh checkout link to text the player. Refunds open the payment in Stripe.
  • Inquiries collects every contact form (coaching questionnaire, drilling questions, round-robin invite requests). Open ones are listed oldest first. Reply by email, then tap Mark handled. Suspected spam is set aside with the reason; tap Not spam if it's real.
  • Academy holds Junior Academy applications from the /academy page. New ones are listed oldest first. Set a card to Reviewing while you look, add private coach notes, then pick Accepted, Waitlist or Not a fit. Tick Email the parent this decision to send them a short email, then tap Save. These are details about kids: keep them in the panel, not in screenshots or group chats.
  • Analytics answers “how is the club doing” for the last 30 days, 90 days, 12 months or all time: revenue paid online (tournament nights and event registrations), what's owed, active and returning players, DUPR linking, nights and turnout by venue, and contact-form and academy leads. Tap View table on any chart for the exact numbers. Lesson income isn't here; it stays in the Coaching CRM.
  • Health shows problems the site recorded, like a payment that didn't confirm. OK means nothing in the last 24 hours; anything else comes with a hint on what to do.

💡 Deleting asks twice: tap Delete, then Confirm.

Troubleshooting

  • No organizer buttons? Tap Staff login at the bottom of any page and sign in with an organizer email. Signed in, you also get the host controls on tournament pages. Signed in with another email? Sign out and use your organizer one.
  • Sign-in email didn't arrive? Check spam. If it says “email rate limit exceeded,” tell the admin (a one-time email setting).
  • Fewer open spots than expected? Unpaid sign-ups hold a spot for 30 min, then free up automatically.
  • Clicked Run event twice? No problem — it always reopens the same tournament.

Quick reference

Manage everythingStaff login → green Organizer button
Chase unpaid playersPayments → Resend pay link
Answer a messageInquiries → Reply → Mark handled
Review an academy applicationAcademy → status → Save
Check for problemsHealth
See how the club is doingAnalytics
Switch to the CRMCoaching CRM in the organizer bar
See who registeredEvent → Registrants
Text playersPlayers → check boxes → Text them
Email playersMessage
Run the gamesEvent → Run event

Questions this didn't answer? Ask the club admin.