A football academy CRM — from enquiry to board report.
Paid training groups at the academy of a professional football club in Moscow: three age groups, nine sessions a week, two venues. We built a system where a parent books a child in a minute, the coach takes attendance on a phone, accounts see payments, and the director sees recruitment, retention and money on one screen. Four days from spec to a working demo.
- Status
- A finished product and a demo on the real group structure · pilot under discussion
- Studio role
- Research, spec, design, development, server, documents and recruitment materials
- For
- A Moscow professional club's football academy — paid training groups
- Timeline
- October 2026 · 4 days from spec to a working demo

The task.
Besides its main school, the academy runs paid groups for children aged 4–9. Enquiries arrive as an email form, the timetable is a weekly news post, changes go to group chats, payments are matched against bank statements, and figures for the club's management are compiled by hand. Everything rests on the administrator, and the director has no recruitment, churn or revenue figures to hand.
We needed:
- One system for five roles — parent, coach, administrator, accounts and director — each seeing only their own part.
- The academy's rules, no compromises: a weekly timetable, free trials and open days, a session limit per membership, a season pass with a freeze, medical certificates with reminders.
- Figures for management — without manual compiling.
- Children's data — on a server in Russia, kept to a minimum.
What we built — by role.
Parent — a Telegram bot and Mini App (MAX too in production; MAX is the Russian national messenger)
- Book a free trial from a QR code: the bot picks the group from the date of birth.
- "My children": group, membership "3 of 8 left", certificate, this week's timetable.
- Pay by QR in the banking app — amount and reference already filled in; "I've paid" → accounts confirm with one tap.
- Once a quarter — a coach's report and a short survey.
Coach — the "Attendance" Mini App
- Everyone is "present" by default — the coach only unticks who is missing, in half a minute.
- Flags on each child: certificate, "limit reached", "trial", "owes" — no amounts.
- Ratings on 4 skills → a draft report for the parent → the coach edits and sends.
Administrator and accounts — a web panel
- Six sections and a student search on every screen; a funnel with "call after the trial" tasks.
- The week and events: a session moved for a match day — parents are notified at once.
- Charges on the 25th, family and season discounts, debtors and reminders, a register to reconcile with the bank.
- Moving from Excel — an import with a row-by-row error report.
Director and club management
- A dashboard: group occupancy, recruitment by stage and source, retention by joining month, attendance by coach, payments and forecast, candidates for the main academy.
- A Monday summary in Telegram and an 8-page PDF for the club on the 1st — no phone numbers, no children's names.
Recruitment
- Every channel has its own tag: stadium, club website, social media, "Invite a friend", local schools — so it shows which channel brings children in.
- Social posts are built from the system's figures: 6 types, 2 styles, 2 formats; a banner mock-up for the club's website.
How it works.
- Built on our booking bot. CRM modules are switched on in settings, so the system fits any school with groups and memberships.
- Data in Moscow: a Postgres database on our server, nightly backups to cloud storage, monitoring and restore checks; it can move to the club's own server.
- Permissions enforced on the server: coaches see their groups, accounts see no phone numbers or certificates.
- Payments: QR codes to the Russian banking standard (GOST R 56042); card payments by link — the module is ready and goes live under the club's own payment-provider contract.
- Texts: parent reports are templates the coach confirms; AI — Russian models only.
- The demo rebuilds every night; "View as…" opens any role.
The results in figures.
- 4 days
- from spec to a working demo
- 5
- roles, each with its own access
- 13
- modules — from students and memberships to academy candidates
- 224
- automated checks
- 8
- pages in the monthly PDF — built on the 1st
- 24
- post variants: 6 types × 2 styles × 2 formats
Children's data — the bare minimum.
- Parental consent — a separate screen in the bot, before any data is collected.
- Nothing extra: no diagnoses, photos or documents — only "certificate valid until …".
- Change log: money, attendance, statuses — who changed what and when.
- Deletion and exit: deletion on a parent's request; the database can always be exported to the academy.
- Consent and privacy texts — together with the club's lawyer.
What's next.
A two-month pilot across all groups, with clear criteria: every child in the database, attendance taken at 90% of sessions, 70% of parents in the bot, payments reconciled, two monthly reports with the director. Nothing here is tied to football: dance, swimming, martial arts, language and art schools are different settings, not new development.











