Endpoints / Cajas

GET

Listar cajas

Lista cajas de forma paginada dentro de la empresa del usuario autenticado.

GET/checkouts

Caso de Uso

Se usa cuando la aplicación necesita mostrar una tabla de cajas, buscar por identificador o nombre de sucursal, o filtrar por estado. Al usarlo, el usuario obtiene una página de cajas con datos de paginación y un resumen de la sucursal asociada a cada caja.

Autenticación

Requiere token JWT en el header `Authorization: Bearer <token>`.

Parámetros de ruta

Este endpoint no recibe parámetros de ruta.

Query params

pagestringobligatorio

Número de página. Debe ser un entero positivo.

pageSizestringobligatorio

Cantidad de registros por página. Debe ser un entero positivo.

searchstring opcional

Texto opcional para buscar por cjidentificador o sunombre.

statusstring opcional

Estado de la caja. Solo acepta activo o inactivo.

Body

No aplica.

Reglas de negocio

1

Solo lista cajas de la empresa del usuario autenticado.

2

La empresa del usuario autenticado debe estar activa.

3

El usuario autenticado debe estar activo.

4

El usuario autenticado debe tener rol administrador, jefe o empleado.

5

page es obligatorio y debe ser un entero positivo.

6

pageSize es obligatorio y debe ser un entero positivo.

7

search es opcional y se usa como texto para buscar por cjidentificador o sunombre.

8

status es opcional y solo acepta activo o inactivo.

9

Si no se envía status, se excluyen las cajas con estado eliminado.

10

Las cajas se ordenan por fecha de registro descendente.

11

Cada caja incluye un resumen de sucursal en la propiedad sucursal.

Errores esperados

401No autorizado

No se envió un token JWT válido o el token no contiene información válida del usuario.

400La búsqueda debe ser un texto

El parámetro search se envió más de una vez o con un formato no válido.

400El estado debe ser un texto

El parámetro status se envió más de una vez o con un formato no válido.

400El estado debe ser activo o inactivo

El parámetro status tiene un valor distinto de activo o inactivo.

500La página debe ser un entero positivo

El parámetro page no se envió o no es un número entero mayor o igual a 1.

500El tamaño de página debe ser un entero positivo

El parámetro pageSize no se envió o no es un número entero mayor o igual a 1.

500La empresa no existe

La empresa asociada al usuario autenticado no fue encontrada.

500La empresa no está activa

La empresa asociada al usuario autenticado está inactiva.

500El usuario no existe

El usuario autenticado no fue encontrado dentro de su empresa.

500El usuario no pertenece a la empresa

El usuario autenticado no pertenece a la empresa indicada por su sesión.

500El usuario no puede acceder a otra empresa

El usuario autenticado intentó acceder a información de una empresa distinta a la suya.

500El usuario no es jefe, empleado o administrador

El rol del usuario no tiene permiso para consultar cajas.

500El usuario no está activo

El usuario autenticado está inactivo y no puede usar el sistema.

500Error finding checkouts

Ocurrió un error interno al consultar el listado de cajas.

Notas de uso

1

Este endpoint no recibe parámetros de ruta ni body.

2

Los filtros se envían como query params: page, pageSize, search y status.

3

Envía siempre page y pageSize para evitar errores de validación.

4

Usa search para buscar por identificador de caja o nombre de sucursal.

5

Si no envías status, el listado devuelve cajas activas e inactivas, pero no eliminadas.

6

Si no hay coincidencias, items se devuelve como un arreglo vacío.