Documentation

Everything you need to run your club on ClubDeck

This guide walks you through setting up your club, managing teams and events, designing practices on the whiteboard, and taking online payments with Stripe. If you get stuck, jump to Contact support at any time.

Introduction

ClubDeck is a sports club management platform built for coaches, club admins, players, and parents. With one account you can:

  • Organize teams, seasons, and rosters
  • Schedule training, matches, and one-off events
  • Track player availability and build match-day lineups (skill-based auto-generation is a Pro feature; manual editing is free)
  • Design drills on a digital whiteboard and chain them into timed practice plans
  • Generate balanced training teams in one click
  • Post volunteer shifts (talkoot) and let members claim them
  • Send invoices, collect donations and ticket sales, and accept online payments through Stripe
  • Run the game-day kiosk — ring up sausage-and-coffee sales in a couple of taps — and record expenses with receipt photos
  • Keep the club's books: budgets, voucher numbers, period locking, an association income statement, and a CSV export for the accountant
  • Give parents one My Family view of every child's schedule, clubs, and bills — across clubs
  • Keep the team in sync with chat, notifications, and calendar feeds

The app runs in any modern browser at app.clubdeck.fi and on iOS and Android as a native mobile app.

Sign up and sign in

Open app.clubdeck.fi and sign in with your email and password, or with Google. Sign-in is handled by our authentication provider.

  1. Click Sign up on the login page.
  2. Enter your name, email, and a password — or click Continue with Google.
  3. Verify your email if prompted, then sign in.

If you were invited to an existing club, follow the invitation link in your email instead. You will land directly inside the club once you sign in.

Create your club

A club (also called an organization) is the top-level container for everything in ClubDeck: teams, members, events, invoices, and settings. The first time you sign in, the dashboard offers Create Your Club. Once you belong to a club, start another one with New Club on the dashboard or in the club picker in the top bar.

Creating a club is a short wizard. On the Free plan it has six steps. On Pro and Club it has eight, because the two payment steps are added:

  1. Sport — ice hockey, floorball, football, or basketball, or Other if yours is not listed. See Choosing the sport below.
  2. Details — the club name, a URL slug (filled in from the name and checked for availability), and an optional club logo.
  3. Country — where the club is based, from a searchable list. This is required: it determines VAT on your subscription and which features (such as licence tracking) are available. It's preselected to Finland if your language or time zone suggests it, otherwise you choose it yourself. You can change it later in Settings.
  4. Plan — Free, Pro, or Club, billed monthly or annually. See Choose a plan for what each includes. If you pick a paid plan, a Stripe checkout opens once the club is created, and the club stays on Free until the payment goes through. If you haven't used your free trial yet, Pro and Club show 14 days free, and a code (a sales code from a ClubDeck rep, or a referral code) goes in the Have a code? field. See Free trial.
  5. Payments (Pro and Club only) — how members will pay their invoices: Card payments (Stripe), Bank transfer, Card and bank transfer, or Not now. For bank transfers you can enter the recipient name and IBAN account number here. Card payments need a Stripe account, which you connect in a new tab after the club is created; see Connect your Stripe account. You can change all of this later in Money → Payment setup.
  6. Fees (Pro and Club only) — optionally draft the club's first membership fees. They become billing plans, created together with the club. See Invoicing overview.
  7. Invites — optionally invite players and parents by email. They join as players, and you can change their roles later.
  8. Review — check the summary and click Create Club. Nothing is created until you confirm. If you are starting a trial, the review also shows the date it ends and the price after that. The setup then runs one step at a time; if a step fails, you can retry it without creating the club twice.

Choosing the sport

The wizard asks for the sport first because it sets up the club's tools around it: the positions, the lineup builder (lines for ice hockey and floorball, formations for football, quarters for basketball), and the drawing surface of the practice whiteboard (rink, pitch, or court; Other gets a blank field). The sport cannot be changed in Settings afterwards, so pick the one your club plays.

After the club is created

  1. Add your first team on the Teams page in the club sidebar. You can add more teams there at any time.
  2. Open Settings → Seasons and add the current season so events and invoices can be grouped by it.
Tip: The user who creates the club is the first admin. Admins can make other members admins or coaches later by editing the member, from the member list or a team page. The role applies to the whole club, not just that team.

Choose a plan

ClubDeck has three plans: Free, Pro, and Club. You can compare them in detail on the pricing page. A short summary:

  • Free — up to 25 members, 1 team, and 20 events per month. Great for trying things out.
  • Pro — up to 75 members, 3 teams, unlimited events, billing & Stripe payments, the calendar feed, the drill whiteboard and practice plans (up to 50 drills and 10 plans), event registration, donations, and newsletters.
  • Club — everything in Pro with unlimited members, teams, drills, and practice plans, plus kiosk & ticket sales, expenses & bookkeeping, volunteer rosters, reports (including budget vs actual, the income statement, and the bookkeeping export), real-time chat, and guardian accounts with guardian billing.
FreeProClub
Price (excl. VAT)€0€12/mo or €120/yr€29/mo or €290/yr
Members2575Unlimited
Teams13Unlimited
Events per month20UnlimitedUnlimited
Documents10100Unlimited
Drills / practice plans—50 / 10Unlimited
Auto-generated lineups—YesYes
Billing, Stripe, calendar feed, newsletters, registration, donations—YesYes
Kiosk & ticket sales, finances, bank import, reports, chat, volunteers, guardians——Yes

You can upgrade or downgrade at any time from Settings → Plan. Annual billing is two months free on both paid plans. Players, guardians, and coaches never pay — only the club does.

Free trial

Pro and Club start with a 14-day free trial. Each person can start one free trial. Starting it needs a payment card: Stripe asks for one at checkout, and nothing is charged during the trial. When the trial ends, the card is charged for the plan you chose, unless you cancel before then. To cancel, open Settings → Plan and click Manage or cancel. If you cancel, you aren't charged, and the club moves back to the Free plan when the trial ends.

The Free plan never needs a card. If you have already used your free trial, a paid plan is charged from the start.

You can start the trial in the Plan step when you create a club, or later from Settings → Plan with Start free trial.

Sales codes. If a ClubDeck rep gave you a sales code, pick a paid plan and enter the code in Have a code?, either in the Plan step or in Settings → Plan. The trial then follows the code: its plan and its length, which can be different from 14 days. A sales-code trial also needs a card, and it uses up your one free trial. If the rep sent you a link, the code is filled in for you.

Referring a club. Club admins find a Refer a club card in Settings → Plan, with the club's referral code and a link to share. For each club you refer that starts paying, your club gets 10% off its own subscription, up to 50% with five clubs. The discount comes off the price before VAT and applies from your next invoice. The club you refer gets no discount and pays the normal price. It enters your code in Have a code? when it picks its first paid plan, or opens your link and the code is filled in for it. See the Referral Terms.

Throughout this guide, sections marked Pro or Club require at least that plan.

A tour of Settings

Club settings live under Settings in the club sidebar. The page is organized into groups, with a side navigation on desktop and a dropdown on mobile:

  • Club — General (club name, URL slug, logo, plus admin-only cards for Location, Recruitment, and Features such as the team chat toggle), Public page (admin-only, see Club directory & public pages), and Plan (subscription management).
  • Team setup — Training (custom training colors, Pro), Pairings, Lineups, and Seasons.
  • Members & integrations — Invitations and Integrations (the calendar feed, and a link to Payment setup, where Stripe is now connected).
  • Danger Zone — pinned at the bottom; deleting the club lives here, safely away from everything else.

Every tab is deep-linkable: the URL carries a ?tab= parameter (for example settings?tab=integrations), so you can bookmark a tab or paste a link to it in chat and the recipient lands on exactly the right screen.

Club home

Opening a club takes you to its home page. What you see there depends on your role. Everyone gets Next Up, This Week, Quick Actions, and Coming Up. Guardians also see My children. Admins and coaches get Needs attention and Club counts, and admins also get a Getting started checklist.

If the club's country has never been set, admins also see a small “Where is your club based?” prompt here. Picking a country saves immediately — there is no extra Settings trip. Dismissing it only hides it for that browsing session; once a country is set, it is gone for good.

Needs attention

Needs attention is the triage list for admins and coaches. Each row links to the screen where you deal with it:

  • The next event — how many members have answered and how, for example 9 in · 2 out · 5 no reply. Opens the event.
  • Overdue invoices (admins, on a plan with invoicing) — opens Money → Collect.
  • Join requests waiting (admins) — opens Invitations.

The invoice and join-request rows only appear when there is something to do. When nothing is left, the list says Nothing needs your attention right now.

Reminding players who have not answered

When some members have not answered the next event, its row gets a Remind button with the number, such as Remind 5. It sends the players who have not answered the same push notification and email as the automatic reminder (see Availability tracking), but right away instead of the evening before.

  • Only players are reminded; admins, coaches, and other non-player roles are not.
  • One manual reminder per event per hour. If one already went out in the last hour, from you or another admin or coach, you see A reminder already went out in the last hour. Two people tapping at the same moment send one reminder, not two.
  • Reminders can only be sent before the event starts.

Customise your home

Click Customise at the top of the home page to open Customise your home. There you can:

  • show or hide each section,
  • move sections up or down to change their order,
  • go back to the original layout with Reset to default.

If you hide every section, the home page says You've hidden everything on your home. with a Customise link to bring sections back.

Only you, only this device. Your layout is saved on the device you set it up on, separately for each club. It does not change the home page for anyone else in the club, other admins included, and your other devices keep their own layout.

Download your data

You can download a copy of everything ClubDeck holds about you at any time. Open the avatar menu → My Profile (the page that also holds your player profile) and click Download my data. Your browser saves a JSON file.

The file contains:

  • your account details and every club membership, with role, jersey number, position, and licence details
  • your availability answers to events
  • invoices billed to you, and any refunds on them
  • donations, tickets, and public event registrations made with your email address
  • volunteer shifts you claimed
  • chat messages you sent — never anyone else's messages
  • the children you are a guardian of, and your notification settings (email notifications per club, and the devices registered for push notifications)

If you are a guardian, the file also covers the children you manage: their memberships, licences, availability, and invoices. It only ever includes your own managed children, never children who belong to another guardian.

Verify your email first. Donations, tickets, and event registrations are matched by email address, so they are left out of the file until your email is verified. If anything was left out, the app tells you right after the download.

You can download your data 3 times per day. To remove your account altogether, see Delete your account. How ClubDeck handles personal data is described in the Privacy Policy.

Delete your account

You can delete your own ClubDeck account at any time, on the web or in the mobile app:

  • On the web — open the avatar menu → My Profile, click Delete account at the bottom of the page, and confirm by typing DELETE.
  • In the mobile app — open Settings, tap Delete account, and confirm.

If you want a copy of your data, download it before deleting.

Deleting removes your personal details, signs you out everywhere, and removes you from every club. Records other people rely on — invoices, chat history, and past lineups — are kept, but no longer carry your identity.

When deletion is blocked

  • You are the last admin of a club. Promote another member to admin, or delete the club, then try again.
  • You are the only guardian of a child. Invite a co-guardian first so the child is never left without one.

Deletion cannot be undone. If you are unsure, contact support before deleting.

Roles and permissions

Every member of a club has a role. Roles control what people can see and change.

  • Admin — full access to all settings, billing, members, and content.
  • Coach — manages the club's teams, events, lineups, attendance, drills and practices, chat, and (on plans that include them) billing, kiosk sales, reports, newsletters, and invitations. Coaches can't change club settings, delete members or teams, manage the ClubDeck subscription, or issue refunds.
  • Player — sees their own teams, marks availability, views lineups and attached drills, and pays invoices.
  • Guardian — a parent or carer linked to one or more junior players; can act on the player's behalf for availability, communication, and invoices. See Guardians & juniors.

Roles are set per club, not per team. A person can have a different role in each club they belong to — for example, a parent who coaches in one club and is a guardian in another.

Coach access covers every team in the club. A coach who is on only one team's roster can still manage the club's other teams, events, and billing, so give the coach role only to people you trust with that.

Only admins see members' contact details (email addresses) — coaches manage the roster without seeing anyone else's email. Everyone still sees their own, and a guardian sees their managed children's. See Players and roster.

Invitations & join requests

There are two ways to grow a roster:

Invite by email

  1. Open Settings → Invitations.
  2. Click Invite a Member, enter the email, pick a role and team, then send.
  3. The recipient gets an email with a one-click join link.

Shareable join link

From the same screen you can copy a shareable join link for a team. Anyone with the link can request to join — an admin or coach must approve them, so it is safe to share in a group chat.

Join requests also arrive from the public side of ClubDeck: players can apply through your public club page or the Find a Club directory. Those requests land on the same Invitations screen for review.

Guardians & juniors Club

Guardian accounts let parents manage their child's involvement without giving the child their own login. A child is added as a managed player: they appear on the roster like any other player, but availability, notifications, and invoices route to their guardians.

Adding a child

There are two ways to get a junior into a club:

  • From inside the club — on the club home page, guardians have a My Players section. Click Add child and enter the child's name and an optional position.
  • By applying to a club — when applying through Find a Club or a public club page, switch Joining as from For myself to For my child and enter the child's name. When the club admin approves the request, the child is created as a managed player and you are linked as their guardian.

My Players

The My Players section on the club home page lists every child you are a guardian for. Each card shows the child's name, position, jersey number, and gear size; click a card to edit those details. From here you also mark availability and keep track of each child's schedule.

Co-guardians

A child can have more than one guardian — typically both parents. To add a second parent:

  1. Open the child's profile and find the Guardians section.
  2. Click Invite co-guardian and enter the other parent's email address.
  3. If they are already a member of the club, they are linked immediately. Otherwise they receive an invitation email and are linked once they accept.

All guardians of a child see the child in their own My Players section, can edit the child's details, mark availability, and receive the child's invoices and reminders. A child always keeps at least one guardian — the last one cannot be removed.

Guardian billing

Invoices for a junior are raised against the child but delivered to the guardians: every guardian sees the invoice on their My Bills page tagged with the child's name, and any of them can approve and pay it. Payment reminders for a junior's invoice go to all guardians too.

For a cross-club view of every child's schedule, clubs, and bills in one place, see the My Family hub.

My Family hub Club

My family is the guardian's home base: one page that gathers every child you are a guardian for — across every club they play in — so a parent with kids in two clubs never has to hop between organizations just to answer "what's on this week?". Open it from My family in the top navigation.

The plan requirement applies to the club, not the parent: managed children exist in clubs on the Club plan (see Guardians & juniors), and the hub itself is free for guardians to use.

This week

At the top, a This week timeline merges the next two weeks into one chronological strip: every child's upcoming events (color-coded per child, with time, location, and team) interleaved with your own volunteer duties, so the family's Tuesday is visible at a glance.

Children

Below the timeline, each child gets a profile card. A child who plays in several clubs appears as one card listing every club and team; tryout memberships are marked with a badge. Click a card to open the child's dashboard.

Adding a child

Two buttons at the top of the hub cover both ways a child joins:

  • Add child — for clubs where you are already a guardian or admin: pick the club, enter the child's name and an optional position, and the child is created as a managed player with you linked as guardian.
  • Apply to a club — takes you to Find a Club, where switching Joining as to For my child submits a join request on the child's behalf. The club can approve a child's request only on the Club plan.

Children can have more than one guardian — both parents see the same child in their own My Family hub. See co-guardians for how to invite a second parent.

Child dashboards Club

Clicking a child in the My Family hub opens that child's own dashboard. A chip row at the top switches between your children without going back to the hub. Three tabs:

  • Schedule — the child's upcoming events across all their clubs, grouped by week (This week, Next week, and onward), with a toggle to show past events.
  • Clubs & teams — every club membership with teams, a link to the club's public page, and a shortcut to the roster where you edit the child's details (position, jersey number, gear size).
  • Bills — the child's open invoices from every club. Approve and pay them right here — the same invoices also appear on your My Bills page (see guardian billing).

Teams and seasons

Teams group players and events. Seasons group events and invoices over time.

  1. Create and manage teams on the Teams page in the club sidebar. Each team has a name, sport, and optional age category, plus recruiting fields if you want the team listed on Find a Club (see Open your team for new members).
  2. Create seasons under Settings → Seasons. A season has a start and end date and can be marked active.
  3. When creating an event or invoice, you can pick which season it belongs to. This makes year-end reporting straightforward.

Players and roster

Open a team from the Teams page to manage its roster. For each player you can record:

  • Name and contact details
  • Position (forward, defender, goalie, etc.)
  • Jersey number
  • Skill rating (used by the training randomizer)
  • Linked guardians

Who sees contact details: only club admins see members' email addresses — not even coaches. Everyone still sees their own, and a guardian sees their managed children's. This applies everywhere an email address could appear: the roster, donations, ticket and event-registration lists, contacts, invitations, and join requests.

You can also archive a player at the end of a season to hide them from active lists while preserving their history.

Player licences (Finnish clubs)

Clubs based in Finland can track each player's licence. Set Settings → General → Country to Finland and a Player licence section appears on every member: a licence number and a valid until date. The club, the player, or a guardian types the number in by hand. ClubDeck stores it but does not check it against Suomisport or a federation, and nothing is synced.

  • Who sees it: admins and coaches see every player's licence. Players see their own, and guardians see their children's. Other members never see it.
  • Badges: the member list shows each player's licence status (valid, expiring, expired, or missing), with a filter for licence issues.
  • Reminders: the player, or the guardians of a managed child, get a push and email reminder 30 days before, 7 days before, and on the day the licence expires. Admins get a weekly email listing missing, expired, and soon-to-expire licences.
  • Lineup warnings: when you put a player whose licence is missing, or will have expired by match day, into a match lineup, the lineup builder shows a warning. It doesn't block the lineup.

Clubs in other countries don't see licence fields.

Events and scheduling

Events can be trainings, matches, or generic team events. Create them from the Events page in the club sidebar.

  1. Click New Event and pick the type.
  2. Set the date, time, location, and optional notes.
  3. For recurring training, set the recurrence (weekly, every two weeks, custom) and the end date.
  4. Save. The whole team is automatically invited and gets a notification.

You can edit or cancel any event later. Cancellations notify the team and update everyone's calendar feed. The event page is also where you attach drills and practice plans, post volunteer slots, and manage registration and tickets.

Availability tracking

For every event, each player can mark themselves In or Out, with an optional note such as "late 15 min". Players who have not answered show as no reply. Guardians can mark on a player's behalf.

Coaches see live counts and a per-player breakdown on the event page. The lineup builder respects availability when suggesting starters. Players who have not answered for tomorrow's event get an automatic reminder the evening before. Admins and coaches can also send the same reminder by hand for the next event, straight away, from the club home; see Reminding players who have not answered.

Availability is what players say before an event. Who actually turned up is recorded separately by the coach; see Recording attendance.

Recording attendance

Availability and attendance answer different questions. Availability is what a player said beforehand: In, Out, or Maybe. Attendance is what an admin or coach records once the event is under way: who was actually there. ClubDeck keeps the two apart, so a player who said In and then stayed home is not counted as present.

  1. Open the event page once the event has started. Admins and coaches then see an Attendance section there.
  2. Tick each member who was present. Members who said they were coming are listed first. Tick a name again to undo it.
  3. The heading keeps a running count, for example 12 of 18 present.

Recording attendance works on every plan, including Free.

On the Club plan, the Attendance tab in Reports totals these ticks in its Attended column, next to each member's availability answers, and you can download it as CSV. Without the Club plan the ticks are still saved on each event.

Lineup builder

Open any match event and scroll to the Lineup section. The lineup builder matches your team's sport: lines on a rink for ice hockey and floorball, football formations on a pitch, and basketball quarters on a court. You can:

  • Put players into positions on each hockey or floorball line, in your chosen football formation, or in each basketball quarter's starting five
  • Add as many hockey or floorball lines as your plan allows
  • Save a default lineup of lines from Settings → Lineups so future matches start pre-filled
  • Share the finished lineup with the team via chat or the calendar entry

Training randomizer

For training sessions, the randomizer generates balanced teams in one click.

  1. Open a training event and click Randomize.
  2. Pick the number of teams.
  3. The randomizer balances by position and skill rating, and respects any pairing preferences you set under Settings → Pairings (e.g. two siblings should always be on opposite teams).
  4. Lock players to a team if you want to keep certain pairings, then re-roll the rest.

Custom team colors are available on Pro and Club plans under Settings → Training.

Volunteer rosters (talkoot) Club

Game days run on volunteers — kiosk, timekeeping, driving. Volunteer rosters let you post the shifts an event needs and let members claim them, so everyone can see what is covered without a single spreadsheet or group-chat poll.

Creating slots

  1. Open the event and find the Volunteers section.
  2. Click Add slot and fill in a title (e.g. "Kiosk"), an optional description of what the shift involves, and how many volunteers are needed (1–50).
  3. Save. The slot appears on the event page for every member.

Creating and editing slots requires an admin or coach on the Club plan. Claiming a slot is open to every member on any plan.

Claiming and unclaiming

Members and parents open the event and click Sign up on a slot; their name appears under it immediately. Changed plans? Cancel spot frees it up again. Each slot shows a live filled / needed count — green when full — and the section header sums up how many spots are still open across the event.

The whole flow works in the mobile app too: open the event, sign up or cancel from the Volunteers section, and your shifts show up in the My Family this-week timeline alongside the kids' events.

Guardians sign up as themselves, not on behalf of a child — it is the parent standing in the kiosk, after all.

Reminders

The day before an event, the automatic event reminder also mentions how many volunteer spots are still open, nudging members who have not claimed one. If someone cancels their spot within 48 hours of the event start, admins and coaches get a push notification so they can find a replacement in time.

Team chat Club

Real-time chat lives in the Chat tab inside each team. Use it for announcements, last-minute changes, or general team chatter. Messages support text, links, and image attachments. Mentions notify the tagged member on web and mobile.

An admin can turn chat off for the whole club from Settings → General → Features. The Chat tab disappears for every member while the toggle is off; existing messages are preserved and reappear if you re-enable.

Calendar feed (iCal) Pro

Every member can generate a personal iCal feed for their club, so events sync automatically into Google Calendar, Apple Calendar, Outlook, or anything else that speaks iCal.

  1. Open Settings → Integrations and find the Calendar card.
  2. Click Subscribe in Calendar to generate your feed, then Copy Calendar URL.
  3. Paste the URL into your calendar app's "Subscribe" or "Add by URL" option.

The same calendar subscription card is available in the mobile app, so you can generate and copy your feed URL right on the phone you subscribe with — no round-trip via a desktop browser.

Subscribing on your phone

  • iPhone / iPad — Settings → Calendar → Accounts → Add Account → Other → Add Subscribed Calendar, then paste the URL.
  • Google Calendar — on the web, open Settings → Add calendar → From URL, paste the URL, and it appears in the Google Calendar app on Android too.
  • Outlook — Add calendar → Subscribe from web, then paste the URL.
Note: The URL is personal — do not share it. Generating a new URL from the same card invalidates the previous one, so you can rotate the link if it ever leaks.

Documents

The Documents page in the club sidebar is a shared shelf for the files your members keep asking for: season rules, code of conduct, travel forms, tournament schedules.

  1. An admin or coach opens Documents and uploads a file with a title.
  2. Every member of the club can open and download it — on the web and in the mobile app.
  3. Managers can replace or delete a document at any time.

Limits by plan: 10 documents on Free, 100 on Pro, unlimited on Club.

Mobile app

The ClubDeck mobile app is available for iOS and Android. It covers the day-to-day features of the web app and adds push notifications for events, chat messages, and reminders. On iPhone and iPad, plans are not viewed or changed in the app, and new clubs are created on the web. Sign in with the same account you use on the web (email and password, or Google). On iPhone and iPad you can also use Sign in with Apple.

Download on the App Store Get it on Google Play

A few things the app does especially well:

  • Kiosk mode — a full-screen register for game-day sales, with a QR code for card payments. See Recording sales.
  • Receipt photos — snap the paper slip with the camera when recording an expense.
  • Whiteboard on a tablet — the full drill editor including the freehand pen, with pinch-zoom for precise placement, plus a landscape show mode for running a practice from the bench.
  • Volunteer shifts — claim and cancel talkoot spots from the event page.
  • Calendar subscription — generate and copy your iCal feed URL directly on the phone.

Practice whiteboard overview Pro

The practice whiteboard is a digital drill designer built into ClubDeck. Draw drills on a hockey rink, floorball rink, football pitch, or basketball court, animate them so the team sees the timing, chain them into timed practice plans, and run the whole session from a tablet at the rink. You will find it in the club sidebar under Drills and Practices.

  • Admins and coaches create and edit drills; players get read-only access to everything attached to their events.
  • The drawing surface follows your club's sport — rink, pitch, court, or a blank field — and every surface has Full and Half variants.
  • Pro clubs can save up to 50 drills and 10 practice plans; the Club plan removes both limits. Free clubs can browse the public drill library but need Pro to create or clone.

Drill editor basics

The editor toolbar has four groups of tools: a Select tool, a freehand Pen (see Pen & quick whiteboard), six piece tools, and five arrow tools, plus undo, redo, delete, Clear all, and the Full/Half surface toggle.

Placing and moving pieces

  1. Pick a piece tool: player (numbered automatically), opponent, cone, puck/ball, goal, or text.
  2. Tap anywhere on the surface to place it. The tool stays active, so you can drop a whole line of cones in a few taps.
  3. Switch to Select and drag any piece to reposition it. Selecting a player, opponent, goal, or text also reveals a Label field so you can rename "1" to "C" or "G".

Undo and redo are always available — the toolbar buttons or Ctrl/Cmd+Z and Ctrl/Cmd+Shift+Z — and Delete removes the selected piece or arrow. Clear all wipes the whole canvas (pieces, arrows, ink, and steps) in one stroke while keeping the surface and sport; there is no confirm dialog because a single undo brings everything back.

Saving a drill

Give the drill a title (required) and optionally a description, a category (Warm-up, Skating, Passing, Possession, Shooting, Defense, Offense, Goalie, Small-area game, or Conditioning), and tags. Visibility is either Private (only you) or Club (all members).

Editing on a tablet

The editor is built for touch: it works with a finger or stylus, touch targets are sized for tablets, and pinch-zoom on mobile gives you precision placement. There is no separate "mobile mode" to learn — sketching the next drill rink-side on an iPad works exactly like at your desk.

Pen & quick whiteboard Pro

Sometimes you don't want pieces and arrows — you want a marker. The Pen tool draws freehand ink on the surface, on web and mobile alike.

  • Three colors (black, blue, red) and two widths (normal, thick), picked from the pen's popover.
  • Strokes render smoothed and always sit above the surface but below players and arrows, so annotations never hide the play.
  • Ink is deliberately simple: a stroke can be selected and deleted (or undone), but not dragged — delete and redraw. Ink never moves during animation playback.
  • Strokes round-trip faithfully between web and mobile — draw on the tablet, review at your desk.

Quick whiteboard (Taktiikkataulu)

For a locker-room talk you don't need a saved, categorized drill — you need a blank board now. The Whiteboard quick action on the Drills page (a button next to New drill on web, a floating button in the mobile app) opens a fresh canvas with the pen already armed and a title prefilled with today's date. Sketch the play, show the team, and either save it like any other drill or walk away.

Arrows and chained movement

Arrows describe what happens in the drill. There are five types, each with the classic coaching notation:

  • Movement arrow — solid line: a player skating or running.
  • Pass arrow — dashed line: a pass.
  • Shot arrow — double line: a shot.
  • Backward arrow — zigzag line: backward skating.
  • Carry arrow — wavy line: carrying the puck or ball.

Pick an arrow tool and drag from the start point to the target. Endpoints snap to pieces under your finger, so an arrow drawn from a player to a cone stays attached to both. To curve an arrow, select it and drag the white handle at its midpoint.

Movement, backward, and carry arrows should start on a player — if one is floating in space, the editor marks it with a small warning badge so you know nothing will move along it. Pass and shot arrows can start anywhere, since the puck flies on its own.

Chaining multi-leg movements

Real drills are sequences: skate, receive, skate again, shoot. To chain legs, keep an arrow tool armed and look for the small dashed rings on existing arrowheads. Start your next stroke on one of those rings and the new arrow continues that player's path from where the last leg ended. Chains can be as long as you like, and each leg can be a different arrow type — move, pass, move again, shoot.

Animating a drill

Click Play drill in the editor to watch the drill run. Every piece moves along its arrows, so the team sees the timing, not just the lines.

Steps

Each arrow is a numbered step, and steps play one after another in the order you drew them. To make two arrows run simultaneously — a pass while the shooter drives to the net — select the second arrow and switch on Same time as previous arrow. The editor blocks the merge only if it would make the same player do two things at once.

Playback controls

The player has play/pause, restart, a scrubbable progress bar, a loop toggle, and a speed toggle (full or half speed) — half speed is handy when walking a junior team through a new pattern. Playback never touches your edit history: switch back to Edit drill and undo still works.

Drill library & cloning

The public drill library ships with 45+ ready-made, coach-reviewed drills for ice hockey, floorball, football and basketball. Open the Library tab on the Drills page — on web and in the mobile app — next to your club's own drills. Not signed in? The library is also on the open web at app.clubdeck.fi/drills.

  • Filter by sport, pick a category, or search by name.
  • Open any drill to see its animated diagram, description, category, and tags.

Cloning Pro

Click Clone to my club to copy a library drill into your own club. The clone is fully yours — rename it, redraw it, change the category — and it counts toward your plan's drill limit. If you belong to several clubs, you pick which one receives the copy.

Video links Pro

Drills and practice plans can carry a video link — a YouTube or Vimeo URL showing the drill performed for real. Paste the link into the video field in the drill editor or practice builder; only secure YouTube and Vimeo links are accepted, and anything else is rejected inline before you save.

  • On web, the video appears as a 16:9 click-to-load player below the diagram — nothing loads from YouTube or Vimeo until you press play, so the page stays fast and tracker-free.
  • On mobile, tap Watch demonstration and the video opens in the YouTube/Vimeo app or browser.
  • On an event's practice section, the video shows as a compact link; print sheets show the URL as plain text, and TV mode deliberately shows no video — it is a drill stage, not a cinema.

AI drill drafting Pro

Where enabled, the drill editor has a Draft with AI button: describe a drill in plain words — "2-on-1 rush starting from a breakout pass, finish with a shot" — and get a first draft on the whiteboard, ready to fine-tune.

  • The draft arrives as an unsaved document: title, description, category, tags, and the diagram itself, with pieces placed and arrows drawn. A title you had already typed is preserved.
  • Generation takes a minute or two — the editor tells you so while it works.
  • The draft is a starting point, not gospel: review the diagram, run the animation, and adjust before saving, exactly as you would edit any other drill.

AI drafting is not switched on for everyone yet. If you don't see the button, it isn't available to your club yet. Generations are rate-limited per club per day.

Drills on events Pro

Every event page has a Drills section. Admins and coaches attach drills to the session; every member — players included — can open the event and study tonight's plan in advance.

  1. Open the event and expand Drills.
  2. Click Add drill and pick from your club's drills.
  3. Drag to reorder; the numbering updates automatically.

You can also attach a whole practice plan to an event in one step. Once at least one drill is attached, Print and Present buttons appear — see Present, TV mode, and print.

Practice plans Pro

A practice plan is an ordered, timed list of drills — a full session on one page. Manage them under Practices in the club sidebar.

Building a plan

  1. Click New practice and name the session.
  2. Add drills; give each a duration in minutes and optional coaching notes. The running total updates as you go.
  3. Drag rows to reorder, then save. Plans can be private or visible to the whole club.

The auto-generator

Short on prep time? Click Generate practice and ClubDeck assembles a session for you:

  1. Pick a session length (60, 75, or 90 minutes, or anything in between).
  2. Choose one to three focus areas — the categories the session should center on.
  3. Optionally include the public drill library alongside your own drills.

The generator lays out a structured session — Warm-up, Focus, Game, and Finisher blocks with per-drill durations. Hit Shuffle for a different mix, then Use this plan to load it into the builder for final tweaks before saving.

Pro clubs can keep 10 practice plans; the Club plan is unlimited.

Present, TV mode, and print

Once drills are attached to an event (or selected from the Drills page with Select mode), two run-day tools appear:

Present / TV mode

Present opens a fullscreen, high-contrast stage showing one drill at a time with its animation — built for the locker-room TV or a tablet at the rink. Move between drills with the arrow keys, the on-screen chevrons, or by tapping the screen edges. The controls fade out after a few seconds of inactivity; press Escape or the close button to exit.

Print sheets

Print produces a clean, light-themed practice sheet: club and event header, total duration, and every drill as a numbered diagram with its steps, duration, and description. Use your browser's print dialog to put it on paper for the bench — or save it as a PDF to share.

Club directory & public pages

Every club can have a public page on the open web — no login required — at app.clubdeck.fi/club/your-club. It can show your logo, description, teams, upcoming events, contact details and social links, a newsletter signup, and a Join this club button that feeds straight into your join-request queue.

  1. Open Settings → Public page (admins only).
  2. Pick your page address (slug) and choose what to show — teams, events, contact info.
  3. Save and share the link anywhere.

Appearing in the directory

Public clubs are listed in the Clubs directory on the Find a Club page, where players search by name and filter by country. To make sure your club shows up in the right searches, set your location under Settings → General → Location: country, state/region, and home city. The same General tab has a club-level Open for recruitment toggle and a club pitch shown to prospective members.

Find a Club

Find a Club (top of the dashboard or the avatar menu) has three tabs:

  • Clubs — the public club directory. Search by name, filter by country, and open any club's public page. Cards show the sport, location, member count, and a "Recruiting" chip where it applies.
  • Stand-ins — one-off sub gigs from the stand-in board.
  • Recruitment — clubs and teams currently looking for new full-time members.

The Recruitment tab lets you narrow by sport, city, country, state/region, and level (recreational / competitive / junior), with a "currently has open stand-in" checkbox if you would rather only see clubs actively short of players right now.

Each recruiting card has an Apply to Join button. It opens the same profile-preview and message dialog the stand-in flow uses; parents can switch Joining as to For my child to apply on a junior's behalf. Submitting creates a join request that the club admin reviews on their Invitations screen. Once they approve, you (or your child) are a member — same as if you had been invited by email.

Stand-in board

The stand-in board is a cross-club marketplace for one-off sub gigs. A coach who's short for Tuesday's training posts the request, players from any club browse what's open, apply with their profile, and the coach picks one. Everything is opt-in — no club is on the board unless an admin actively posts.

Open it from the avatar menu → Stand-in board, or from the preview that appears on the dashboard whenever there are open requests. A search box plus a sport filter narrows the list.

Past events drop off automatically the moment they start. Once a request fills, it disappears from the public board even if there are still pending applications — the auto-decline below explains what happens to those.

Post a stand-in request

Admins and coaches can post against any event in their club.

  1. Open the event you need cover for.
  2. Click the … menu in the top right → Post to stand-in board.
  3. Fill in Position needed (Forward, Goalie, Any — free text), How many? (1–50 slots), and an optional note.
  4. Click Post to board.

The request appears on the board immediately. You can cancel any open request from the same event page; cancellation removes it from the board but doesn't notify applicants.

How "how many" works: if you ask for 2 forwards, the request stays open until two applications have been accepted. After the second accept it auto-fills and any other pending applications are auto-declined.

Apply as a stand-in

From the board, click I'm interested on any open card. A dialog shows your own profile back to you (so you know exactly what the club will see) and a free-form message field for anything extra — availability, references, what jersey size you wear, whatever you'd like the coach to know.

After you submit, the card shows Applied instead of the button. If the club accepts you, you'll get a push notification on the mobile app and an email; if they decline (or the request gets filled by someone else and the auto-decline kicks in), the card silently disappears from your My stand-ins page.

You can apply to the same request only once. If you change your mind before the club decides, withdraw it from the avatar menu → My Stand-ins.

Your accepted stand-ins

Every stand-in you've been accepted to lives at My Stand-ins (avatar menu). Each card shows:

  • The club name and sport
  • The event title, time, and location
  • The team you're playing for, with the team's jersey colour as a swatch so you bring the right shirt

The dashboard also surfaces the next one or two upcoming stand-ins in a small amber strip the moment you sign in, so a recently-accepted player can't miss it.

Player profile

Your player profile is what clubs see when you apply to a stand-in or to join a team. Open it from the avatar menu → My Profile. Fields:

  • Display Name — how you appear to clubs
  • About you — a short paragraph (up to 1,000 characters)
  • Highest Level Played — e.g. Junior A, Liiga, Recreational
  • Years of Experience
  • Preferred Position

The profile travels with you across the clubs you're a member of — it isn't tied to any single club. You don't have to fill any of it; an empty profile just means clubs see your name and the message you wrote with the application.

Open your team for new members

Recruiting is per-team, not per-club. A club with a senior team that's full and a junior team that needs players can have just the junior team appear on the board.

  1. Open the Teams page in the club sidebar and click the team you want to recruit for.
  2. Toggle Open for new members in the edit dialog.
  3. Fill in:
    • Home city — what comes up when players filter by location
    • League — e.g. "Local league" or "Mestis"
    • Level — Recreational, Competitive, or Junior
    • Recruitment blurb — a short pitch: practice times, what you're looking for, vibe of the team
  4. Save. The team appears on the Find a Club → Recruitment tab immediately.

Toggle Open for new members off when you're full and the team drops back off the board. Existing join requests aren't deleted — you can still review them on the Invitations screen.

Invoicing overview Pro

Billing is available on Pro and Club plans, managed from Money → Collect in the club sidebar. You can:

  • Create billing plans for membership dues — seasonal, monthly, annual, or one-time, with optional installments
  • Generate invoices for individual members or a whole team
  • Track who has paid, who is overdue, and who has cancelled
  • Let members pay online with a card via Stripe, or mark cash/transfer payments manually

Monthly plans bill themselves: on the first of each month ClubDeck generates the month's invoices automatically, due in 14 days. Members see their invoices on the My Bills page, where they approve and pay — guardians see and pay their children's invoices there too (see guardian billing).

To accept online payments you need to connect a Stripe account first, and for bank transfers you add the club's bank account. Both are done in Money → Payment setup.

Automatic payment reminders Pro

Nobody enjoys chasing payments, so ClubDeck does it for you. There is nothing to configure:

  • The first reminder goes out once an invoice is 3 days overdue.
  • If it stays unpaid, the reminder repeats weekly.
  • After 3 reminders, ClubDeck stops — no member gets nagged forever.

Reminders arrive by email (with a direct link to My Bills) and as a push notification. For a junior's invoice, every guardian of the child is reminded. Paying or cancelling the invoice stops the sequence immediately.

Bank transfers & bank import Pro

Not everyone pays by card. Every invoice also carries the details for a normal bank transfer, so members can pay from their own online bank.

What members see

On the invoice, under My Bills, members get the club's reference number (viitenumero) and a virtual barcode they can scan or copy into their bank app. The reference number is what identifies the payment to the club, so it must be used as-is.

Marking a payment received

When a transfer or cash payment arrives, an admin opens the invoice in Money → Collect and chooses Mark Paid. Pick bank transfer or cash and set the date the money actually arrived, then confirm.

Bank statement import Club

With many invoices, ticking them off one by one gets old. Import your bank's transaction export instead:

  1. Download the account transactions as a CSV from your online bank. Nordea, OP, and S-Pankki style exports work; ClubDeck finds the columns by their headers, whichever delimiter the file uses.
  2. Open Money → Books → Import statement (admins) and upload the file (up to 5 MB).
  3. Review the preview. Each incoming payment is matched to an unpaid invoice by its reference number. Rows are sorted into matched, already paid, and unmatched (no reference number, an unknown reference, or an invoice that was cancelled). A matched row whose amount differs from the invoice is flagged so you can check it.
  4. Confirm the rows you want. ClubDeck marks those invoices paid by bank transfer in one step and keeps a record of the import.
Note: Nothing changes until you confirm — the preview only reads the file. Outgoing payments and rows without a reference number are never applied automatically.

Donations Pro

Let supporters chip in without creating an account. Donations flow through your own Stripe account, straight to the club.

  1. Connect Stripe first in Money → Payment setup (donations require a fully onboarded account).
  2. Open Money → Collect → Donations and switch on Accept donations.
  3. Optionally set preset amounts and a short message shown to donors.
  4. Share your public donation page: app.clubdeck.fi/club/your-club/donate — it is also linked from your public club page.

Donors enter a name, amount, and optional message, and pay by card via Stripe Checkout. Admins see every donation and running totals in Money → Collect.

Event registration & tickets Pro

Any event can have a public page where guests sign up — useful for tournaments, club parties, and fundraisers.

Free registration

  1. Open the event and, under Public registration, turn on Allow guest sign-ups.
  2. Optionally set a capacity, a closing time, and custom questions for registrants. Without a close time, registration stays open until the event starts.
  3. Share the public event link. Guests register with just a name and email — no account needed — and can cancel via the link in their confirmation email.

When the event is full, new registrations go on a waitlist. At the door, admins and coaches check guests in from the Registrations & check-in section.

Paid tickets Club

Add one or more ticket types to the event — each with a name, price, and optional quantity limit. Buyers pay by card on the public event page (your Stripe account must be connected) and receive a ticket with a unique code and QR.

Check-in at the door

On game day, open the event's ticket list and tap Scan tickets at the door. Point the camera at a ticket's QR code to check it in — the screen shows a running checked in / sold count and flags tickets that are already used or unpaid. No camera? Type the ticket code instead.

Payment setup Pro

Money → Payment setup is the one place where you set up how members pay the club: online through Stripe, or by bank transfer. Admins and coaches can open it on the Pro and Club plans.

  • Payment Processing — the club's Stripe account. It shows whether Stripe is connected, has the Connect with Stripe button, and lists the payment methods members are offered. See Connect your Stripe account.
  • Bank details (admins only) — the Recipient name and IBAN account number members use to pay invoices by bank transfer with a reference number. The account must be a Finnish IBAN. Click Save bank details. After that the card shows a one-line summary, and Edit opens the form again. See Bank transfers & bank import.

While something is missing, Money → Collect shows admins a short note such as "Still missing: Stripe, Bank details" with an Open payment setup button. The note goes away once both are done. Stripe is no longer connected from Settings: the card in Settings → Integrations links here instead.

Until a club connects its own Stripe account here, members can't pay online at all: invoices, ticket purchases, and kiosk card sales all show a short "Online payments aren't set up yet" message instead of a working Pay or checkout button. Donations have always worked the same way.

Connect your Stripe account Pro

ClubDeck uses Stripe Connect (Standard). That means money flows directly into your Stripe account, you keep your own Stripe dashboard, and ClubDeck never holds your funds.

Before you start

  • Pick someone who can legally represent the club — usually the treasurer or chair. Stripe will ask for their personal details to comply with KYC rules.
  • Have the club's bank account details (IBAN, account name) ready — payouts will go there.
  • Have a photo ID for the representative. Stripe may ask to verify it.

Step-by-step

  1. Sign in to ClubDeck and open the club you want to connect.
  2. Go to Money → Payment setup and find the Payment Processing card.
  3. Click Connect with Stripe. ClubDeck creates a Stripe Connect account for your club and redirects you to Stripe's hosted onboarding flow.
  4. On Stripe's site, sign in with an existing Stripe account or create a new one with the same email you use for ClubDeck.
  5. Fill in the requested information:
    • Business type (most clubs choose "Non-profit" or "Company")
    • Business address and the club's tax ID if applicable
    • Representative's name, date of birth, and address
    • Bank account for payouts
    • Identity verification (photo of ID)
  6. Submit the form. Stripe returns you to ClubDeck.
  7. When the page reloads, the Payment Processing card should show a green Connected badge. You are ready to accept payments.
Took longer than a minute? Stripe occasionally needs to review submitted documents (usually within 24 hours). Payment setup will keep showing "Connect with Stripe" until Stripe marks your account as fully onboarded. Click the button again any time to resume the onboarding flow exactly where you left off — no data is lost.

What members see

Once Stripe is connected, every invoice you create gets a Pay Now button. Members open the invoice (web or mobile), pay with a card, and the invoice moves to Paid automatically when Stripe confirms the payment. Connecting Stripe also unlocks donations and paid tickets.

Payment methods (MobilePay, SEPA) Pro

Members pay into your club's own Stripe account, so your Stripe account decides which payment methods they can use. Cards work out of the box. Other methods, such as MobilePay and SEPA Direct Debit, are turned on by your club in Stripe. ClubDeck can't turn them on for you.

Turn a method on

  1. Sign in to your Stripe dashboard and open Settings → Payment methods.
  2. Turn on the methods you want, for example MobilePay or SEPA Direct Debit. Stripe may ask a few extra questions before a method goes live.
  3. Back in ClubDeck, go to Money → Payment setup → Payment Processing. Under Payment methods each method has an On or Off chip, so you can check what members will be offered. Manage in Stripe takes you straight to the Stripe page above.

What members see

When a member presses Pay Now on an invoice, buys a ticket, or donates, Stripe's checkout page lists the methods your club has turned on. Nothing changes in ClubDeck when you add a method.

Instant and delayed methods

  • Card and MobilePay — instant. The invoice, ticket, or donation is marked paid as soon as Stripe confirms the payment.
  • SEPA Direct Debit — delayed. The bank takes several business days to confirm the debit. Until then the invoice, ticket, or donation stays pending, and it is marked paid when Stripe confirms. If the debit fails, the ticket reservation is released, the donation is marked failed, and the invoice stays unpaid so the member can pay again.

Refunds and disputes Pro

Members pay into your club's own Stripe account, so a refund comes out of your club's Stripe balance. ClubDeck creates the refund on your Stripe account and never holds the money itself. ClubDeck takes no cut of the payment, so there is no ClubDeck fee to return.

Who can refund what

  • Only club admins can refund. Coaches can open an item's refund history with the Refunds button, but they can't issue a refund.
  • Refunding invoices and donations needs the Pro plan. Refunding tickets and kiosk sales needs the Club plan.
  • Only payments that went through Stripe can be refunded here: an invoice paid with Pay Now, a completed donation, a paid ticket, or a paid kiosk card sale. Invoices marked paid by hand and kiosk sales recorded as cash or MobilePay did not go through Stripe.

Refund a payment

  1. Find the payment. Invoices and donations are in Money → Collect, kiosk sales under Money → Sell → Sales, and tickets in the event's ticket list.
  2. Click Refund.
  3. Choose Full refund or Partial refund. For a partial refund, enter the amount. You can refund an item in several parts until nothing is left. Tickets can only be refunded in full, one ticket at a time.
  4. Pick a Reason (Customer request, Duplicate, Fraudulent or Other) and, if you like, write a Note (optional).
  5. Confirm. The money goes back to the payer from your club's Stripe balance, and you can't undo it.

The item then shows a badge: Refunded, Partly refunded with the amount, or Refund pending while Stripe hasn't confirmed the refund yet. A refunded ticket gets the status Refunded. When the refund goes through, ClubDeck emails the payer a confirmation. For a junior's invoice the email goes to the guardians. Kiosk sales have no email address, so nobody is emailed. The refund history lists every refund with the amount, date, who made it, the reason and the note.

When a refund doesn't go through

  • The payment wasn't made by card through Stripe, or it is already fully refunded. ClubDeck says the payment can't be refunded.
  • ClubDeck has no Stripe record of the payment, for example an older payment made before refunds existed. Refund it in your Stripe dashboard instead.
  • The amount is more than what's left to refund, usually because someone else refunded part of it meanwhile. Refresh the page and check the remaining amount.
  • Stripe rejected the refund. Try again, or refund it in your Stripe dashboard. The failed attempt stays in the refund history as Failed.

Refunds made in the Stripe dashboard

You can also refund a payment directly in your Stripe dashboard. Stripe tells ClubDeck about it, and the refund shows up on the item with the same badges. In the refund history it is marked In Stripe instead of a person's name, and the payer gets the same confirmation email. If a Stripe refund covers a whole ticket order, every ticket in it becomes Refunded. If it covers only part of an order with several tickets, ClubDeck can't tell which tickets you meant, so it leaves their status alone and adds a note to the refund saying so.

Refunds in the books

  • Each refund is its own negative row in the bookkeeping export, dated on the day the refund went through. The original payment row doesn't change. Refund rows get a voucher starting with REF-.
  • If the refund date falls in a locked period, the refund is booked on the first day after the lock instead, and the row's note says booked after period lock. A locked period's totals never change.
  • The Revenue report, the income statement and the other reports show income net of refunds, counted in the month the refund is booked.
  • The bookkeeping CSV has a note column at the end for this.

Disputes (chargebacks)

A dispute happens when the payer asks their bank to reverse a card payment. The item then shows a Disputed badge and a Payment disputed banner with the amount and the dispute's status: Needs response, Under review, Won, Lost or Closed. Every club admin gets a push notification and an email when the dispute opens and again when it closes.

You answer the dispute in your own Stripe dashboard, not in ClubDeck. Respond in Stripe on the banner opens it there. Answer before Stripe's deadline, or the club loses the money. ClubDeck doesn't collect or send evidence for you. After the dispute closes, the banner stays on the item with the outcome and a View in Stripe link.

Payouts and fees

  • Payouts — Stripe pays out collected funds to your bank account on a rolling schedule (default: every 2 business days). You can change the schedule from your Stripe dashboard.
  • Stripe fees — Stripe charges its standard processing fees to your club’s own Stripe account. The rate depends on your country, the card and the payment method; see Stripe’s pricing for current rates.
  • ClubDeck fees — none. ClubDeck takes no cut of your payments. Stripe’s standard processing fees apply, charged by Stripe to your club’s own Stripe account. See Stripe’s pricing. This covers membership dues, donations, ticket sales and kiosk card sales. No per-member fees, ever.
  • Refunds — refund invoices, donations, tickets, and kiosk card sales in ClubDeck or directly in your Stripe dashboard. See Refunds and disputes.
  • Tax — ClubDeck does not calculate VAT. If your club is VAT-registered, set tax rates on individual invoices.

Stripe troubleshooting

"Connect with Stripe" still shows after onboarding

Stripe has not finished verifying your account. Click the button again to resume the flow — you usually just need to upload an additional document. Your progress is preserved.

A member's payment failed

The most common reasons are an incorrect card number, insufficient funds, or the card being blocked for online payments by the bank. The member can retry from the same invoice link. The invoice stays open until paid or cancelled.

Donations or tickets can't be enabled

Both require a fully onboarded Stripe Connect account — not just a started one. Finish the onboarding flow from Money → Payment setup and try again.

I want to disconnect Stripe

You can disconnect ClubDeck from your Stripe account at any time from your Stripe dashboard's Connected Apps page. Existing invoices remain in ClubDeck, but new online payments will be disabled until you reconnect.

Products & categories Club

Everything money-related outside invoicing lives under Money in the club sidebar, in two sections. Sell has the kiosk register (Sell), sales history (Sales), and Products. Books has Expenses, Categories, and, for admins, Budget, Bookkeeping, and Import statement. Recording is for admins and coaches.

Categories

Income and expense categories are the backbone of the club's bookkeeping — every sale and expense lands in one. Open Money → Books → Categories: a sensible Finnish-association default set is created for you on first visit, and you can add, rename, or delete categories at any time. Income and expense categories are managed separately.

Products

Products are the tiles on the kiosk register — "Makkara 2,50 €", "Kahvi 1,50 €". For each product set a name, price, and an income category; drag to reorder (the kiosk grid follows), and toggle a product inactive to hide it without deleting its history. Prices accept both comma and dot decimals.

Recording sales Club

Game-day sales are a three-tap job: tap the product tiles, pick the payment method, confirm.

The mobile kiosk

The mobile app has a dedicated kiosk mode — open it from an event or the Money area and the phone becomes the register. Tiles are thumb-sized, a green full-screen flash confirms each sale and resets the register for the next customer, and the screen stays awake for the whole shift. One-off items ("Arpa 1,00 €") are added on the fly, and quantities are edited from the cart bar.

The web sell panel

Money → Sell → Sell is the same register in the browser: a tap-to-add product grid, custom items, and the payment toggle. Every event page also has a Record sale shortcut that opens the sell panel with the event pre-linked, so kiosk revenue lands on the right game automatically.

Payment methods

  • Cash and MobilePay — recorded as paid immediately. ClubDeck is the ledger; the money changes hands as usual.
  • Card — requires Stripe. On mobile, the kiosk shows a large QR code; the customer scans it with their own phone and pays in Stripe Checkout while the register waits, then closes itself with a paid flash the moment the payment lands. You can also leave the sale pending and take the next customer. On web, the checkout link opens in a new tab and can be copied to the buyer.

Sales history & summaries Club

History and voiding

Money → Sell → Sales lists every sale with its items, payment method, status, and voucher number, filterable by date range. Rang up the wrong thing? Void the sale (with a confirm) — voided rows stay visible, struck through, so the trail is complete. Cash, MobilePay, and still-pending card sales can be voided; a card sale that has already been paid cannot be voided, but an admin can refund it.

Event sales summaries

Every event that had kiosk sales shows admins and coaches a summary card on the event page: total taken, number of sales, and a by-category breakdown — the answer to "how did the kiosk do on Saturday?" without opening a spreadsheet.

Expenses & receipts Club

The other half of the ledger. Record club expenses — referee fees, kiosk restock, ice time — under Money → Books → Expenses, on web or mobile.

  • Each expense has a description, amount, date, an expense category, and optionally a linked event and team.
  • Receipt photos — on mobile, snap the paper slip with the camera as you record; on web, attach an image file. The receipt shows as a thumbnail on the expense, ready for the treasurer.
  • The expense table shows a running total and filters by date and category.

Teams, vouchers & period locking Club

ClubDeck's bookkeeping is built around how Finnish associations actually run their books — cost centers, vouchers, and locked periods — without asking a volunteer treasurer to learn accounting software.

Team tagging (kustannuspaikat)

Sales and expenses can be tagged to a team, turning teams into cost centers. The default is Whole club; a team selling at their own kiosk stand picks their team once and the kiosk remembers it for the session. Team chips appear in sales history and the expense table, and each team's page shows a finance card with income, expenses, net, and top categories for the fiscal year.

Voucher numbers

Every sale and expense automatically receives a sequential voucher number (Tosite #N), displayed read-only wherever the entry appears. When the accountant asks for voucher 47, everyone means the same row.

Fiscal year

Under Money → Books → Bookkeeping (admins only), set the first month of your fiscal year. Most Finnish associations use the calendar year; the setting drives budgets and report date presets.

Period locking

Once a period is reconciled, lock it: pick a Lock through date and every sale and expense dated on or before it becomes read-only — no edits, no deletions, no voiding, on web or mobile. The lock is deliberately forward-only: it can be advanced but never moved back or cleared, which is exactly the guarantee your annual audit wants. New entries dated after the lock are unaffected.

Budgets & budget vs actual

The budgets grid Club

Under Money → Books → Budget (web, admins only), plan the fiscal year in a single grid: rows are your income and expense categories, columns are the whole club plus each team. Type amounts, mix of comma and dot decimals welcome, and save the whole grid in one click. Clearing a cell removes that budget line, and an unsaved-changes guard keeps you from navigating away mid-edit. Clubs with many teams get a team filter instead of an ever-wider table.

Budget vs actual Club

The Budget vs actual report (in Money → Reports) shows each category as a pair of bars — budget muted, actual colored — with the variance colored by favorability: income over budget is green, spending over budget is red. Filter by team to see how one cost center is tracking.

Income statement & export Club

Association income statement (tuloslaskelma)

Money → Reports renders a proper Finnish-association income statement for any date range: categories grouped into Varsinainen toiminta, Varainhankinta, Sijoitus- ja rahoitustoiminta, and Avustukset, with expenses negative, a net per group, and the period's result (Tilikauden tulos) at the bottom. Download it as CSV for the annual meeting.

Bookkeeping export for the accountant

Money → Reports → Bookkeeping export downloads every sale and expense in the range as CSV — date, category, amount, payment method, event, team, voucher number, and note per row. Refunds appear as their own negative rows (see Refunds and disputes). Pick the file format next to Download CSV:

  • Finnish (Excel, ;) — semicolon-delimited with comma decimals ("12,50"), so the file opens correctly in Finnish-locale Excel with amounts as numbers, not text. The default for clubs in Finland or with no country set.
  • Standard (,) — comma-delimited with dot decimals, for everything else. The default for clubs in other countries.

The income statement download offers the same choice. ClubDeck remembers your pick on this device.

Note: ClubDeck records and exports; it does not replace your accountant's ledger. Kiosk sales and expenses are entered as they happen; for membership invoices paid by bank transfer, use bank import to mark them paid.

Newsletters & contacts Pro

Email your members from ClubDeck without exporting addresses to another tool. Find Newsletters and Contacts under Community in the club sidebar.

  1. Open Newsletters and click Compose.
  2. Write a subject and the message body.
  3. Choose the audience: everyone in the club, one team, one role (for example only coaches), or the people who subscribed on your public club page.
  4. Save it as a draft while you polish it, then send.

Every newsletter — to the whole club, a team, a role, or public subscribers — carries a one-click unsubscribe link automatically, and anyone who unsubscribes is left out of future sends. Contacts lists everyone the club can reach, including those subscribers.

Consent and opt-out: Members receive club communications as part of using ClubDeck for their club — that's the service they signed up for, not marketing to a stranger. Public subscribers explicitly opt in on your club's public page, and ClubDeck records when and how. Finnish law (laki sähköisen viestinnän palveluista 917/2014, 200 §) requires every direct-marketing message to offer an easy, free way to opt out — every ClubDeck newsletter does, both as a link in the email and as a one-click “Unsubscribe” button most inboxes show next to the sender (RFC 8058).

Reports Club

Money → Reports in the club sidebar turns what your club already records into numbers for the board and the annual meeting. Pick a date range, then a tab:

  • Revenue — everything the club earned in the period, in one view.
  • Donations and Tickets — what came in through the public donation page and event tickets.
  • Attendance — who showed up to training and matches, per player and per team, as coaches recorded it on each event (see Recording attendance).
  • Billing — invoiced, paid, and overdue amounts.
  • Season — a summary of the whole season.
  • Bookkeeping export, Income statement, and Budget vs actual — the accountant export, the association income statement, and budget vs actual.

Attendance, billing, donations, and tickets can be downloaded as CSV for spreadsheets.

FAQ

Do players pay anything to use ClubDeck?

No. Only the club pays for the plan. Players, guardians, and coaches use the app for free.

Is there a free trial?

Yes. Pro and Club start with a 14-day free trial, one per person. You need a payment card to start it, and you aren't charged if you cancel before the trial ends. The Free plan needs no card. See Free trial.

Can a member belong to more than one club?

Yes. The same email account can be part of multiple clubs and switch between them from the club picker in the top bar.

What happens to my data if I cancel?

There are two kinds of export. Every member can download their own personal data at any time from My Profile → Download my data (see Download your data). On the Club plan, admins can download the club's own records from Money → Reports: CSV files for attendance, billing, donations, and tickets, plus the bookkeeping export for the accountant (see Reports and Income statement & export). If you cancel a paid plan, the club keeps it until the end of the period you have paid for and then moves to the Free plan. Cancelling deletes nothing. From then on the Free plan's limits apply (for example 15 members and 1 team), so adding more needs a paid plan again. An admin can delete the club completely from Settings → Danger Zone. See the Privacy Policy for how personal data is handled.

Is ClubDeck GDPR compliant?

Yes. We are based in the EU and process data under GDPR. When a club is created, its record stores how the club found ClubDeck (campaign tags from the link used and the optional “How did you hear about us?” answer); it is kept with the club and deleted with it. Full details are in the Privacy Policy.

Can I use ClubDeck for a sport other than hockey?

Yes. ClubDeck has dedicated tools for four sports: ice hockey, floorball, football, and basketball. Any other sport can pick Other: it gets a blank-field whiteboard and a random team split in the training randomizer, but no lineup builder yet. Most features (events, roster, billing, chat, calendar, volunteers) work for any sport. The practice whiteboard draws on a hockey rink, floorball rink, football pitch, or basketball court to match your club's sport. The lineup builder uses lines for hockey and floorball, formations for football, and quarters for basketball.

Help & feedback

You can reach the ClubDeck team from the web app. Open the account menu (your initials in the top-right corner) and choose Help & feedback. Anyone signed in can send a message, whatever their role in the club.

  1. Pick what it is about: Problem, Idea or wish, or Question.
  2. Write your message.
  3. If it helps, attach a screenshot: pick an image file, or paste one from the clipboard. PNG, JPG, GIF, or WebP, up to 5 MB.
  4. Check the We'll include box, then press Send.

We reply by email to the address you sign in with. You can send up to 10 messages an hour.

What is sent with your message

To help us find the problem quickly, the app adds a few details. The dialog shows them before you send:

  • The page you were on. Only the path, such as /orgs/…/events, never the part of the address after a ?, which can hold sign-in or invitation tokens.
  • Your browser and device type, for example “Chrome 128 on macOS, Desktop”.
  • The app version.
  • The club you had open, if any.
  • Your language and time zone.

Passwords, sign-in tokens, and anything else on the page are never sent. We store the message, the screenshot, and these details to handle your request. The screenshot is private: only the ClubDeck team can see it. See the Privacy Policy.

Contact support

Need help that isn't covered here? The quickest way is Help & feedback in the web app. You can also email support@clubdeck.fi and we will get back to you. Including a screenshot and the URL you were on speeds things up.

Back to top