Ir al contenido principal
Documentación completa en progreso. Si necesitas ayuda inmediata, contacta con nuestro equipo de soporte en soporte@clubsport.app.

Guía de inicio rápido

Con esta guía tendrás tu club funcionando en ClubSport en menos de 15 minutos. Sigue estos cinco pasos en orden.

1

Registro y creación de cuenta

Crea tu cuenta gratuita en ClubSport. Solo necesitas un email y contraseña. No se requiere tarjeta de crédito.

Ve a clubsport.app/register, introduce tu nombre, email y contraseña. Recibirás un email de confirmación. Haz clic en el enlace para activar tu cuenta.
2

Crear tu primer equipo

Una vez dentro del panel, crea tu primer equipo. Define el nombre, categoría y deporte.

En el panel principal, haz clic en "Nuevo equipo". Elige el deporte (fútbol, baloncesto, etc.), la categoría (benjamín, cadete, senior…) y el nombre del equipo. Puedes subir un escudo.
3

Añadir jugadores

Invita a tus jugadores o añádelos manualmente. Cada jugador recibirá acceso a su portal personal.

Ve a "Jugadores" dentro de tu equipo y haz clic en "Añadir jugador". Puedes crear la ficha manualmente o enviar una invitación por email para que el propio jugador complete sus datos.
4

Configurar cuotas de pago

Conecta tu cuenta de Stripe y define las cuotas mensuales o de temporada para tu equipo.

En "Configuración del club > Pagos", conecta tu cuenta Stripe (o crea una nueva gratis). Luego en "Cuotas", define el importe, la periodicidad y los equipos que aplica. Los jugadores podrán pagar desde su portal.
5

Publicar tu primera convocatoria

Crea un partido o entrenamiento y envía la convocatoria a tus jugadores con un clic.

En "Calendario", haz clic en la fecha del evento. Selecciona el tipo (partido, entrenamiento, otro), añade los detalles y selecciona los jugadores convocados. Al guardar, todos recibirán una notificación automática con el enlace para confirmar asistencia.

Siguientes pasos

Una vez completados estos pasos, explora el resto de la plataforma:

¿Necesitas ayuda?

Nuestro equipo de soporte está disponible de lunes a viernes de 9h a 18h.

Referencia de API

ClubSport expone una API HTTP interna usada por el cliente Next.js. Los endpoints requieren sesión NextAuth válida salvo que se indique lo contrario.

Endpoints disponibles

MétodoRutaDescripciónAuthRate limit
GET/api/notificationsSSE — stream de notificaciones no leídas. Polling cada 30 s.60 req/min
POST/api/ai/training-sessionGenera una sesión de entrenamiento con IA (streaming). Usa claude-sonnet-4-6.10 req/min
POST/api/webhooks/stripeWebhook Stripe con verificación HMAC. Procesa payment_intent y subscription events.No (HMAC)Sin límite
Rate limiting: Los límites se aplican por IP usando Upstash Redis. En entorno de desarrollo los límites son desactivados. Las respuestas incluyen los headers estándar X-RateLimit-Limit, X-RateLimit-Remaining y Retry-After.

Variables de entorno

Copia .env.local.example a .env.local y rellena los valores. Las variables marcadas como requeridas son obligatorias para arrancar la aplicación.

VariableDescripciónRequeridaEjemplo
NEXTAUTH_SECRETSecreto para firmar tokens JWT. Genera con openssl rand -base64 32.abc123...32chars
DATABASE_URLURL pooled de Supabase (con PgBouncer). Usada por Prisma en runtime.postgresql://postgres:pwd@db.xxx.supabase.co:6543/postgres?pgbouncer=true
DIRECT_URLURL directa para migraciones Prisma (sin PgBouncer).postgresql://postgres:pwd@db.xxx.supabase.co:5432/postgres
NEXTAUTH_URLURL base de la app. En producción, la URL de Vercel.http://localhost:3000
ANTHROPIC_API_KEYAPI key de Anthropic para el generador de entrenamientos con IA.Nosk-ant-api03-...
STRIPE_SECRET_KEYClave secreta de Stripe para pagos y webhooks.Nosk_test_...
RESEND_API_KEYAPI key de Resend para envío de emails transaccionales.Nore_...
PREVIEW_MODEActiva el modo preview sin base de datos. Usa datos mock y bypass de auth.Notrue

Autenticación

La API usa sesiones NextAuth v4 con estrategia JWT. Los endpoints protegidos verifican la cookie de sesión next-auth.session-token. Las peticiones sin sesión válida reciben 401 Unauthorized.

El endpoint /api/webhooks/stripe no usa sesión sino verificación HMAC-SHA256 del header stripe-signature con la variable de entorno STRIPE_WEBHOOK_SECRET.