Skip to main content
Este grupo de endpoints permite a un afiliado autenticado crear, consultar y eliminar sus solicitudes de crédito. El endpoint principal POST /api/solicitudes/guardar-solicitud es el destino final del wizard multi-paso de la aplicación: recibe el payload completo con la información de la solicitud, del solicitante y todos los datos complementarios, los valida con Zod y los persiste en la base de datos. El owner_username se toma directamente de la sesión activa del usuario, no del cuerpo de la petición, garantizando que una solicitud siempre pertenezca al afiliado autenticado.

POST /api/solicitudes/guardar-solicitud

Autenticación: Requiere sesión activa.

Cuerpo de la petición

El payload es un objeto JSON con las secciones del wizard. Todas las secciones excepto solicitud son opcionales a nivel del schema, aunque el negocio requiere que estén completas para avanzar en el ciclo de vida.

Sección solicitud (requerida)

object
required
Datos principales de la solicitud de crédito.

Sección solicitante (opcional en schema, requerida en negocio)

object
Datos personales y laborales del solicitante principal.

Secciones adicionales del wizard

any
Datos de la línea de crédito seleccionada (convenio, producto, condiciones especiales).
any
Datos del cónyuge o compañero permanente del solicitante (cuando aplica).
any
Información detallada del empleo actual del solicitante.
any
Relación de ingresos mensuales y descuentos de nómina existentes.
any
Resumen de la situación económica general del solicitante.
any
Lista de propiedades (bienes inmuebles o vehículos) del solicitante.
any
Relación de deudas activas del solicitante con otras entidades.
any
Referencias familiares y personales del solicitante.

Respuestas

boolean
true cuando la solicitud fue creada exitosamente.
string
"Solicitud guardada exitosamente."
object
Objeto con los datos de la solicitud creada, incluyendo el numero_solicitud generado y todos los campos persistidos.

Tabla de errores

Ejemplo — Petición JSON

Ejemplo — cURL

Ejemplo — Respuesta exitosa 200


GET /api/solicitudes/mis-solicitudes

Lista todas las solicitudes de crédito del usuario autenticado con soporte de paginación mediante limit y offset. Autenticación: Requiere sesión activa.

Query Parameters

integer
default:"20"
Número máximo de solicitudes a retornar por página. Por defecto 20.
integer
default:"0"
Número de solicitudes a omitir para la paginación. Por defecto 0.

Respuesta exitosa 200

array
Lista de solicitudes del usuario. Cada elemento contiene el detalle de la solicitud.
integer
Total de solicitudes del usuario (para calcular páginas).
integer
El límite aplicado en esta consulta.
integer
El offset aplicado en esta consulta.

Ejemplo — cURL

Ejemplo — Respuesta 200


GET /api/solicitudes/:id

Obtiene el detalle completo de una solicitud de crédito por su numero_solicitud. Incluye los registros de PDFs generados asociados. Autenticación: Requiere sesión activa. Solo el propietario de la solicitud puede consultarla.

Path Parameters

string
required
El numero_solicitud de la solicitud a consultar. Formato: "000001-202501-LI".

Tabla de errores

Ejemplo — cURL

Ejemplo — Respuesta 200

Los campos numéricos de tipo BigInt (como valor_solicitud y tasa_interes) son serializados como strings para compatibilidad JSON. El cliente debe parsearlos a número si los necesita para cálculos.

DELETE /api/solicitudes/:id

Elimina una solicitud de crédito de forma permanente. Solo el propietario de la solicitud o un usuario con rol administrator pueden ejecutar esta operación. Autenticación: Requiere sesión activa.

Path Parameters

string
required
El numero_solicitud de la solicitud a eliminar.

Tabla de errores

Ejemplo — cURL

Ejemplo — Respuesta 200

La eliminación es permanente e irreversible. Todos los documentos y datos asociados a la solicitud también serán eliminados en cascada. Solo ejecuta esta operación si estás completamente seguro.