Endpoints / Proforma
Listar proformas
Lista proformas de forma paginada, con búsqueda por identificador o cliente y filtro por estado, dentro de la empresa del usuario autenticado.
/proformasCaso de Uso
Se usa cuando la aplicación necesita mostrar una tabla de proformas, buscar por identificador o por nombre e identificación del cliente, o filtrar por estado documental. Al usarlo, el usuario obtiene una página de resultados con el conteo total, donde cada proforma incluye su estructura completa con emisor, receptor, detalle, totales y documento PDF.
Autenticación
Requiere token JWT en el header `Authorization: Bearer <token>`. Permite acceso a usuarios con rol jefe o empleado. La empresa y el usuario autenticado deben estar activos.
Parámetros de ruta
Este endpoint no recibe parámetros de ruta.
Query params
pagestringobligatorioNúmero de página. Debe ser un entero positivo.
pageSizestringobligatorioCantidad de registros por página. Debe ser un entero positivo.
searchstring opcionalTexto opcional para buscar por prfmaidentificador, clntenombre o clnteidentificacion.
statusstring opcionalEstado de la proforma. Solo acepta emitida, pagada o anulada.
Body
No aplica.
Reglas de negocio
Solo un usuario con rol jefe o empleado puede listar proformas.
Solo permite listar proformas de la empresa del usuario autenticado.
La empresa del usuario autenticado debe estar activa.
El usuario autenticado debe estar activo.
page y pageSize son obligatorios y deben ser enteros positivos.
Si se envía status, solo acepta emitida, pagada o anulada.
search busca coincidencias parciales en prfmaidentificador, clntenombre y clnteidentificacion.
El listado se ordena por fecha de registro descendente.
Cada elemento del listado devuelve la estructura completa de la proforma, no un resumen.
Errores esperados
No se envió un token JWT válido o el token no contiene información válida del usuario.
El query param search fue enviado como arreglo en lugar de texto.
El query param status fue enviado como arreglo en lugar de texto.
El query param status tiene un valor distinto de emitida, pagada o anulada.
page no es un entero positivo o no fue enviado.
pageSize no es un entero positivo o no fue enviado.
La empresa asociada al usuario autenticado no fue encontrada.
La empresa asociada al usuario autenticado está inactiva.
El usuario autenticado no fue encontrado dentro de su empresa.
El usuario autenticado no pertenece a la empresa indicada por su sesión.
El usuario autenticado está inactivo y no puede usar el sistema.
El usuario autenticado no tiene un rol permitido para listar proformas.
Notas de uso
search y status son query params opcionales.
Si no hay resultados para la página solicitada, items se devuelve como arreglo vacío.
Cada elemento del listado devuelve la proforma completa, no un resumen corto.
El listado está restringido a la empresa del usuario autenticado.