From 5dbe6cfba19a51ada39bde1fba36e281c6511c95 Mon Sep 17 00:00:00 2001 From: dmolinari Date: Wed, 25 Feb 2026 21:40:21 +0000 Subject: [PATCH] =?UTF-8?q?A=C3=B1adir=20Cash-Register?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Cash-Register.-.md | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 Cash-Register.-.md diff --git a/Cash-Register.-.md b/Cash-Register.-.md new file mode 100644 index 0000000..dca74f2 --- /dev/null +++ b/Cash-Register.-.md @@ -0,0 +1,30 @@ +# 🏦 Flujo de Caja, Arqueo Ciego y Auditoría + +La tesorería del sistema está diseñada bajo el principio de "Zero Trust" (Cero Confianza) en el punto de venta, requiriendo validación centralizada. + +## 🙈 El Arqueo Ciego + +Cuando un cajero termina su turno, no puede ver un reporte de "Cuánto debería tener en la caja". El flujo es el siguiente: +1. El cajero abre la sesión declarando el **Fondo Inicial**. +2. Al cerrar, debe contar sus billetes físicos y tickets de tarjeta, e ingresarlos manualmente al sistema (`DeclaredCash`, `DeclaredCards`). +3. El Backend toma estos valores y los contrasta contra los cobros reales (Payments). +4. El sistema calcula el `TotalDifference`. +5. La sesión queda bloqueada en estado `PendingValidation`. + +## ⚖️ Liquidación y Validación +La caja no se considera legalmente cerrada hasta que un **Administrador o Tesorero** revisa el "Acta de Cierre" impresa, la compara con el dinero recibido en mano, ingresa sus notas y liquida la sesión (`Closed`). + +--- + +## 🕵️ Sistema de Reclamos y Ajuste Técnico + +Si un cliente presenta una queja (ej: un error de tipeo en el diario impreso), el cajero abre una incidencia (`Claim`). + +**Resolución Transaccional:** +Cuando un moderador resuelve el problema (ej: otorgando 2 días gratis extra), el sistema protege los datos así: +1. Toma una "Fotografía" (`Snapshot`) de los valores originales del aviso (texto original, fechas originales). +2. Guarda la fotografía en la columna `OriginalValues` del reclamo. +3. Aplica los nuevos valores técnicos al aviso principal. +4. Genera un log inmutable en la tabla `AuditLogs`. + +Esto garantiza que siempre se sepa qué modificó el moderador y cómo estaba el aviso originalmente. \ No newline at end of file