Skip to main content
El flujo de registro en Comfaca Créditos en Línea consta de cuatro pasos encadenados: (1) crear la cuenta con POST /api/auth/register, (2) recibir un código de verificación por email, (3) confirmar ese código con POST /api/auth/verify-code, y (4) —opcionalmente— verificar la cuenta desde el enlace de email con GET /api/auth/verify. Si el usuario no recibió el código, puede solicitarlo nuevamente con POST /api/auth/resend-code. Todos los campos del cuerpo de registro son validados con Zod antes de procesarse: los textos de nombres y apellidos se convierten automáticamente a mayúsculas, y el email se normaliza a mayúsculas y se elimina el espaciado. La contraseña se almacena hasheada con bcrypt.
La cuenta queda en estado no verificado hasta que el afiliado complete la verificación de email mediante POST /api/auth/verify-code o el enlace enviado al correo. No es posible iniciar sesión antes de verificar la cuenta.

POST /api/auth/register

Autenticación: No requiere autenticación previa.

Cuerpo de la petición

string
required
Código del tipo de documento de identidad del afiliado. Máximo 3 caracteres. Ejemplos: "CC" (Cédula de Ciudadanía), "CE" (Cédula de Extranjería).
string
required
Número de documento de identidad. Máximo 16 caracteres.
string
required
Nombres del afiliado. Máximo 80 caracteres. Se almacenan en MAYÚSCULAS automáticamente.
string
required
Apellidos del afiliado. Máximo 80 caracteres. Se almacenan en MAYÚSCULAS automáticamente.
string
required
Número de teléfono móvil del afiliado. Máximo 10 caracteres (formato colombiano, ej. "3001234567").
string
required
Correo electrónico válido del afiliado. Se normaliza a MAYÚSCULAS y se elimina el espaciado inicial/final. Debe cumplir el formato usuario@dominio.tld.
string
required
Nombre de usuario para autenticarse en la plataforma. Mínimo 3 caracteres.
string
required
Contraseña de la cuenta. Mínimo 8 caracteres. Se almacena hasheada con bcrypt.
string
required
Confirmación de la contraseña. Debe coincidir con password. La validación de igualdad se aplica en el servicio de registro.

Respuestas

boolean
true cuando el usuario fue creado y el email de verificación fue enviado.
string
Mensaje descriptivo del resultado.
object
Datos del usuario recién creado y metadatos del proceso de registro.

Tabla de errores


Ejemplo — cURL

Ejemplo — Respuesta exitosa 200


POST /api/auth/verify-code

Verifica el código de activación de 4 a 6 dígitos enviado al email del afiliado durante el registro. Una vez verificado correctamente, la cuenta queda activa y el usuario puede iniciar sesión. Autenticación: No requiere autenticación previa.

Cuerpo de la petición

string
required
Código de verificación recibido por email. Entre 4 y 6 caracteres.
string
required
Código del tipo de documento del afiliado a verificar. Máximo 3 caracteres (ej. "CC").
string
required
Número de documento del afiliado que debe ser verificado. Máximo 16 caracteres.

Tabla de errores

Ejemplo — cURL

Ejemplo — Respuesta exitosa 200


POST /api/auth/resend-code

Reenvía el código de verificación al email del afiliado cuando el código original no fue recibido o expiró. Autenticación: No requiere autenticación previa.

Cuerpo de la petición

string
required
Código del tipo de documento del afiliado. Máximo 3 caracteres (ej. "CC", "CE").
string
required
Número de documento del afiliado. Máximo 16 caracteres.

Tabla de errores

Ejemplo — cURL

Ejemplo — Respuesta exitosa 200


GET /api/auth/verify

Verifica la cuenta del afiliado a partir de un token firmado incluido en el enlace de verificación enviado por email. Este endpoint es invocado directamente por el cliente de email al hacer clic en el botón de verificación. Autenticación: No requiere autenticación previa. El token de verificación se envía como query parameter en la URL del enlace de email.

Ejemplo — cURL

Ejemplo — Respuesta exitosa 200

El enlace de verificación por email tiene una vigencia limitada. Si el token ha expirado, usa POST /api/auth/resend-code para obtener un nuevo código y verificar la cuenta.