Cajas (apertura y cierre)
Por qué hace falta una caja abierta, cómo abrirla y cerrarla, y el arqueo automático.
Ruta: /sales/cajas — visible en Operaciones → Cajas para Propietario/Administrador.
Regla fundamental
Para registrar una venta o una compra hay que tener una caja abierta. Si no la hay, al entrar a Vender o a Nueva compra la aplicación abre automáticamente el diálogo de apertura.
Abrir una caja
Campos del formulario de apertura:
- Sucursal — obligatoria. Se listan solo las sucursales a las que el usuario tiene acceso. La última sucursal usada queda como predeterminada para la próxima vez.
- Monto Inicial — obligatorio, no puede ser negativo (efectivo con el que se arranca el turno).
- Observación — opcional.
Si el usuario cancela el diálogo, no puede continuar a la pantalla de venta.
Apertura automática: si la empresa tiene una sola sucursal y se entra a Vender en Modo Directo, la caja se abre sola con monto inicial 0 y la observación "Apertura automática (Modo Directo)". Aviso: "Caja abierta automáticamente".
Cerrar una caja
Desde la pantalla de Vender (botón Cerrar Caja) o desde el listado de Cajas.
Al cerrar, la aplicación calcula el efectivo esperado:
Monto esperado = Monto inicial + ventas en efectivo − gastos en efectivo
Solo se cuentan los movimientos de esa sesión de caja y solo los pagos con medio Efectivo. Ese valor viene precargado en el campo Monto de Cierre, que se puede corregir si el arqueo real difiere.
Campos:
- Monto de Cierre — obligatorio, no negativo.
- Observaciones — opcional (útil para justificar diferencias).
Confirmación: "Caja cerrada con éxito". Después del cierre se vuelve a Inicio.
Si falla el cálculo automático: "Error al calcular el total. Por favor verifica manualmente." — el diálogo se abre igual, en blanco.
Listado de Cajas
Columnas: Usuario · Sucursal · Fecha de apertura · Fecha de cierre · Monto inicial · Monto final · Estado · Acciones.
Filtros:
- Desde / Hasta — por defecto, los últimos 7 días.
- Sucursal — si hay una sola, se selecciona automáticamente.
- Usuario
- Estado: Todas · Abiertas · Cerradas
Acciones por fila: Ver detalle, Cerrar caja (si está abierta). Desde la cabecera se puede abrir una caja en la sucursal filtrada; si no hay sucursal seleccionada avisa: "Seleccione una sucursal para abrir la caja".