RRelo Docs
API & GuíasGuías

Aceptar invitación de cliente

Flujo paso a paso para que un usuario de cliente acepte su invitación al portal de Relo.

Aceptar invitación de cliente

Cuando un administrador de Relo te invita a ver el portal de una marca, recibes un correo con un enlace unico. Ese enlace te lleva a una pagina publica donde creas tu cuenta y defines tu contrasena. Despues entras con tu correo y contrasena como cualquier otro usuario.

Diagrama interactivo
Cargando diagrama…

Antes de empezar

  • Necesitas una invitacion activa. El administrador la envia desde Users & access o desde la pestana Users del cliente.
  • El enlace expira en 7 dias.
  • El correo de la invitacion debe coincidir con el correo que usas para crear la cuenta.
  • Si ya tienes una cuenta confirmada en Relo con ese correo, no puedes aceptar la invitacion: debes iniciar sesion directamente.

Paso 1: Recibir el correo

El email viene de Relo y tiene como asunto:

Relo has invited you to the {Nombre del Cliente} Performance Dashboard

Dentro hay un boton Accept Invitation que apunta a:

https://portal.relo.mx/client/invite?token=UUID_DE_LA_INVITACION

No compartas el enlace El token es de un solo uso y esta ligado a tu correo. Si lo reenvias, otra persona no podra usarlo porque el email no coincidira.

Paso 2: Verificar la invitacion

Al abrir el enlace, el frontend llama a:

GET /api/client-invitations/verify?token=UUID_DE_LA_INVITACION

El backend revisa que:

  1. El token exista.
  2. La invitacion este en estado pending.
  3. No hayan pasado mas de 7 dias desde que se creo.

Si todo esta bien, la pagina muestra el nombre del cliente y el campo de email bloqueado con tu direccion.

Paso 3: Crear la cuenta

Completa el formulario:

CampoRequisito
EmailPrecargado y bloqueado. Debe coincidir con la invitacion.
Full nameObligatorio. Es el nombre que se guarda en tu perfil.
PasswordMinimo 6 caracteres.
Confirm passwordDebe ser igual al password.

Despues presiona Accept & Create Account. El frontend envia:

POST /api/client-invitations/accept
{
  "token": "UUID_DE_LA_INVITACION",
  "email": "usuario@marca.com",
  "password": "********",
  "full_name": "Nombre Completo"
}

Paso 4: Que hace el backend

Diagrama interactivo
Cargando diagrama…
  1. Valida el token y el email.
  2. Crea o actualiza el usuario en Supabase Auth.
  3. Crea/actualiza el perfil en user_profiles con el role y client_id de la invitacion.
  4. Inserta la asignacion en user_client_assignments.
  5. Marca la invitacion como accepted.

Paso 5: Iniciar sesion

Despues de aceptar, la pagina te redirige a /auth/login. Ahi entras con el correo y la contrasena que acabas de definir. Al iniciar sesion, Relo detecta tu client_id y te manda al portal de tu marca.

Roles que puedes recibir

RolQue puedes hacer
client_userVer dashboards y reportes del cliente. No ves datos de partners ni comisiones.
client_managerVer dashboards del cliente y, dependiendo de la config, invitar a otros usuarios del cliente.

Estados de una invitacion

Diagrama interactivo
Cargando diagrama…
EstadoSignificado
pendingActiva, aun no se usa.
acceptedYa se uso para crear la cuenta. No se puede reutilizar.
revokedEl admin cancelo la invitacion antes de que se aceptara.

Errores comunes

MensajeCausaSolucion
"No invitation token provided"El URL no trae ?token=....Revisa que el enlace del correo este completo.
"Invalid or expired invitation"El token no existe o fue eliminado.Pide al admin que reenvie la invitacion.
"This invitation has already been used"La invitacion ya fue aceptada.Inicia sesion con tu correo en /auth/login.
"This invitation has been revoked"El admin cancelo la invitacion.Pide una nueva invitacion.
"This invitation has expired"Pasaron mas de 7 dias.Pide al admin que reenvie la invitacion.
"This email already has an active account"El correo ya tiene cuenta confirmada.Inicia sesion directamente.
"Email does not match the invitation"El email precargado fue alterado.Usa exactamente el correo al que llego la invitacion.
"Password must be at least 6 characters"La contrasena es muy corta.Usa 6 o mas caracteres.

Para administradores: reenviar o revocar

  • Para revocar: desde Users & access o la pestana Users del cliente, busca la invitacion pendiente y presiona revocar. Esto cambia su estado a revoked.
  • Para reenviar: revoca la anterior y crea una nueva. Cada invitacion tiene un token unico.

Seguridad

  • Los endpoints /verify y /accept son publicos porque el usuario aun no tiene sesion.
  • El token es un UUID aleatorio, no adivinable.
  • La invitacion expira a los 7 dias para reducir la ventana de riesgo.
  • Si un correo ya tiene cuenta activa, la invitacion se rechaza para evitar sobrescribir usuarios existentes.

Necesitas ayuda?

Si no te llego el correo:

  1. Revisa tu carpeta de spam.
  2. Pide al administrador que revise en la plataforma si la invitacion esta pending.
  3. Si el estado es email_error, el envio fallo — pide que la reenvien.

On this page