Back to case studies

Sport / Sports Education · 2026

ELASTICA FUT ACADEMY

PHPReactStripeLocal AISaaS
ELASTICA FUT ACADEMY

The challenge

ELASTICA managed students, payments, invoices and class bookings with spreadsheets, external calendars and WhatsApp conversations. Every operation depended on the coach or administrator: collecting a monthly fee, issuing an invoice, cancelling a booking or answering an accountant's query meant manual steps that scaled poorly as the academy grew.

They needed a single platform covering the full cycle, from first client contact to quarterly tax reporting, without losing control and leaving the coach free to focus on the pitch.

The solution

We designed and built a custom platform with several integrated subsystems, accessible from any browser on any device:

  • Client portal: parents buy monthly plans or session packs online, choose the student, book classes in the calendar and download their invoices. Payment by card (Stripe) or manual request.
  • Smart calendar: weekly patterns that automatically generate classes for the next 8 weeks. Each age group (pre-benjamín through juvenil) can only book time slots allowed for their age. Cancellations cut off 24 h before; the session is returned to the balance.
  • Online payments: full Stripe integration: one-off payments, monthly subscriptions with automatic renewal, customer portal for subscription management, and one-click admin refunds.
  • Invoicing: automatic PDF invoice on payment, series numbering, exportable quarterly summary, and an expense module with automatic ticket extraction via AI.
  • Communications: all emails (welcome, order confirmation, class reminder, invoice, etc.) are templates editable from the panel with live preview. The team can customise tone without touching code.
  • AI assistant with panel access: a chat integrated into the admin and accountancy dashboard, running on an open-source LLM hosted on our own infrastructure (AS215691) with no data sent out, allowing any system data to be queried in natural language: "Summary of last quarter", "Paid orders this week", "Tomorrow's bookings". The AI uses role-scoped tools (accountancy only accesses finance).
  • Differentiated roles: admin, coach (own dashboard: month occupancy, available slots, weekly calendar), accountancy (finance only) and client. Each sees only what belongs to them.

Results

  • One tool replaces Excel, manual calendars, Word invoice templates and manual credential delivery.
  • Online payment active 24/7: clients pay without waiting for someone to send a Bizum.
  • Zero paperwork for the accountant: invoices, expenses and quarterly summary exported ready to file.
  • Business rules enforced automatically (age categories, hourly capacity, cancellation window): an invalid booking is impossible.
  • AI assistant that reduces "find this order / that invoice" time to a natural-language question.

Stack & Architecture

Backend
PHP · no framework · modular · MariaDB · versioned migrations · 530+ integration tests · custom DI
Frontend
React · TypeScript · Vite · shadcn/ui · TanStack Query
Payments
Stripe Checkout · Subscriptions · Customer Portal · idempotent Webhooks
AI
Open-source LLM on our own AS215691 infrastructure · custom tool calling (read-only, role-scoped) · vision for ticket OCR
Email
PHPMailer · own SMTP · editable template system
Security
AES-256-GCM encryption · DB-backed sessions · CSRF double-submit · audit log
Infra
Nginx · PHP-FPM · Cloudflare · CI with automatic tests

"I came in knowing football. I left with a platform that lets me coach and the system manage."

Héctor Otín, ELASTICA FUT ACADEMY

Have a similar project?

Tell us about your challenge. We reply in under 24 hours.