# Panel CEO

Esta guía explica el significado operativo y comercial de los controles del `Panel CEO` de Swimtific.

## Objetivo

El `Panel CEO` separa tres capas distintas que no conviene mezclar:

1. `Rol funcional`
   - cómo trabaja el usuario dentro del producto deportivo
   - ejemplos: `director`, `entrenador`

2. `Acceso de plataforma`
   - qué privilegios internos tiene sobre Swimtific como sistema
   - ejemplos: `none`, `support`, `superadmin`

3. `Tratamiento comercial`
   - cómo se gestiona esa cuenta desde el punto de vista de facturación y negocio
   - ejemplos: `standard`, `legacy`, `staff`

## Tipo comercial

### `standard`

Cuenta normal de cliente.

- Depende del flujo comercial habitual de Stripe.
- No tiene ventajas especiales.
- Es la opción por defecto para clientes reales.

### `included_in_club`

Cuenta incluida dentro del plan `Pro Club` de un director técnico.

- El entrenador no paga su propia suscripción.
- Su acceso está cubierto por la plaza del director que lo invitó.
- No debe tratarse como `standard` ni como `sponsored`.
- Es la categoría recomendada para entrenadores vinculados por `id_director`.

### `legacy`

Cuenta histórica con condiciones heredadas.

- Útil para primeros usuarios o acuerdos antiguos.
- Permite mantener condiciones especiales sin rehacer la estructura de producto.
- Recomendable cuando no quieres “romper” compromisos previos.

### `sponsored`

Cuenta patrocinada por Swimtific, una entidad o un tercero.

- El usuario disfruta del producto, pero no necesariamente paga él.
- Útil para embajadores, acuerdos con clubes o colaboraciones.

### `scholarship`

Cuenta becada.

- Similar a `sponsored`, pero pensada como ayuda puntual o apoyo individual.
- Puede ser temporal o revisable.

### `staff`

Cuenta interna del equipo.

- Pensada para CEO, equipo interno, demos y colaboradores cercanos.
- Suele combinarse con permisos de plataforma.

### `free`

Cuenta gratuita por decisión manual.

- No implica que sea staff ni legacy.
- Sirve para casos singulares donde quieres acceso sin coste.

## Acceso plataforma

### `none`

Sin acceso extra.

- Usuario normal de producto.
- No ve herramientas internas de administración.

### `support`

Acceso de soporte o colaboración operativa.

- Pensado para colaboradores que ayudan a usuarios.
- No implica acceso total de superadmin.
- Puede ampliarse en futuras iteraciones.

### `superadmin`

Acceso total de plataforma.

- Ve el `Panel CEO`.
- Puede gestionar cuentas especiales.
- Puede cambiar overrides comerciales y acceso de plataforma.

## Acceso premium sin bloqueo de Stripe

Esta casilla define si la app debe permitir el acceso premium aunque Stripe no esté validando comercialmente la cuenta.

### Activado

- La app no bloquea la entrada aunque `estado_pago = pendiente`.
- Útil para:
  - `staff`
  - `legacy`
  - `sponsored`
  - `scholarship`
  - `free`

### Desactivado

- La cuenta depende del flujo habitual de Stripe.
- Si Stripe o el estado de pago están pendientes, puede bloquearse el acceso premium.

## Estados visuales

### `Sin override`

Significa que no hay excepción manual.

- Stripe manda sobre la activación comercial.
- Es el comportamiento normal de un cliente estándar.

### `Override activo`

Significa que has activado una excepción comercial manual.

- La cuenta puede entrar aunque Stripe no esté marcando acceso comercial completo.
- Úsalo solo cuando haya una razón clara.

### `Pago activo`

La cuenta está comercialmente activa.

- Puede venir de Stripe.
- O puede convivir con una cuenta especial que ya está operativa.

### `Pago pendiente`

La cuenta existe, pero comercialmente no está cerrada.

- En una cuenta normal, esto puede bloquear acceso.
- En una cuenta con override activo, la app no la bloquea.

## Combinaciones recomendadas

### CEO

- Rol funcional: `director`
- Tipo comercial: `staff`
- Acceso plataforma: `superadmin`
- Acceso premium sin bloqueo de Stripe: activado

### Director técnico cliente normal

- Rol funcional: `director`
- Tipo comercial: `standard`
- Acceso plataforma: `none`
- Acceso premium sin bloqueo de Stripe: desactivado

### Entrenador cliente normal

- Rol funcional: `entrenador`
- Tipo comercial: `standard`
- Acceso plataforma: `none`
- Acceso premium sin bloqueo de Stripe: desactivado

### Cuenta histórica

- Tipo comercial: `legacy`
- Acceso plataforma: `none`
- Acceso premium sin bloqueo de Stripe: activado si no quieres depender de Stripe

### Colaborador de soporte

- Tipo comercial: `staff`
- Acceso plataforma: `support`
- Acceso premium sin bloqueo de Stripe: según necesidad

## Criterio práctico

Usa esta lógica simple:

- Si es un cliente real: `standard`
- Si es un entrenador cubierto por el plan del director: `included_in_club`
- Si es interno: `staff`
- Si tiene una excepción comercial por historia: `legacy`
- Si alguien financia la cuenta: `sponsored`
- Si es una ayuda individual: `scholarship`
- Si simplemente decides no cobrar: `free`

## Nota importante

El `Panel CEO` no sustituye completamente Stripe.

- Stripe sigue siendo la fuente de verdad para clientes estándar.
- El panel sirve para gobernar excepciones, cuentas internas y permisos de plataforma sin exponer esa capa a directores técnicos normales.
