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.
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.
Crear tu primer equipo
Una vez dentro del panel, crea tu primer equipo. Define el nombre, categoría y deporte.
Añadir jugadores
Invita a tus jugadores o añádelos manualmente. Cada jugador recibirá acceso a su portal personal.
Configurar cuotas de pago
Conecta tu cuenta de Stripe y define las cuotas mensuales o de temporada para tu equipo.
Publicar tu primera convocatoria
Crea un partido o entrenamiento y envía la convocatoria a tus jugadores con un clic.
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étodo | Ruta | Descripción | Auth | Rate limit |
|---|---|---|---|---|
| GET | /api/notifications | SSE — stream de notificaciones no leídas. Polling cada 30 s. | Sí | 60 req/min |
| POST | /api/ai/training-session | Genera una sesión de entrenamiento con IA (streaming). Usa claude-sonnet-4-6. | Sí | 10 req/min |
| POST | /api/webhooks/stripe | Webhook Stripe con verificación HMAC. Procesa payment_intent y subscription events. | No (HMAC) | Sin límite |
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.
| Variable | Descripción | Requerida | Ejemplo |
|---|---|---|---|
| NEXTAUTH_SECRET | Secreto para firmar tokens JWT. Genera con openssl rand -base64 32. | Sí | abc123...32chars |
| DATABASE_URL | URL pooled de Supabase (con PgBouncer). Usada por Prisma en runtime. | Sí | postgresql://postgres:pwd@db.xxx.supabase.co:6543/postgres?pgbouncer=true |
| DIRECT_URL | URL directa para migraciones Prisma (sin PgBouncer). | Sí | postgresql://postgres:pwd@db.xxx.supabase.co:5432/postgres |
| NEXTAUTH_URL | URL base de la app. En producción, la URL de Vercel. | Sí | http://localhost:3000 |
| ANTHROPIC_API_KEY | API key de Anthropic para el generador de entrenamientos con IA. | No | sk-ant-api03-... |
| STRIPE_SECRET_KEY | Clave secreta de Stripe para pagos y webhooks. | No | sk_test_... |
| RESEND_API_KEY | API key de Resend para envío de emails transaccionales. | No | re_... |
| PREVIEW_MODE | Activa el modo preview sin base de datos. Usa datos mock y bypass de auth. | No | true |
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.
/api/webhooks/stripe no usa sesión sino verificación HMAC-SHA256 del header stripe-signature con la variable de entorno STRIPE_WEBHOOK_SECRET.