Auditoría
La pantalla Auditoría es la pista inmutable de todo lo que ocurrió en la cuenta: quién hizo qué y cuándo. No es un log de sistema, es evidencia: el registro que presentas cuando un deudor, un abogado o un juez pregunta "¿por qué hicieron esto?".

Append-only de verdad
La pista es inmutable en la base de datos: un trigger de Postgres rechaza cualquier UPDATE o DELETE en la tabla de auditoría. Ni un administrador ni la propia aplicación pueden reescribir el pasado — solo agregar. No hay rutina de purga: el historial se conserva.
La misma protección cubre los comprobantes de entrega de notificación: después de que un mensaje consta como entregado, la base de datos impide borrar la notificación o limpiar la fecha de entrega y el identificador en el proveedor. Ese es el respaldo probatorio exigido por la jurisprudencia brasileña sobre notificación del deudor (STJ, Tema 1.315): el acreedor necesita probar que notificó, y la prueba no puede ser editable.
Qué guarda cada registro
- Actor: usuario (con nombre), sistema o job — las acciones automáticas también firman.
- Acción: un código estable, como
dispute.resolved,rule.version_published,email_layout.created. - Entidad: tipo e identificador del registro afectado.
- Antes y después: snapshots JSON del estado, lado a lado en el detalle.
- Motivo (
reason), cuando la acción exige justificación (decisión de una disputa, por ejemplo). - IP y User-Agent de quien ejecutó.
- Fecha/hora exacta.
Qué entra en la pista
Entre otros: publicación de versiones de la regla de cobranza, transiciones de enrollment, supresiones de contacto, apertura y decisión de disputas (con fundamentación), motivos de no envío, eventos de pago, negativaciones (buró de crédito) y protestos pendientes de revisión, acciones sensibles del portal del deudor, cambios de miembros/roles/estructura y creación de claves de API y webhooks.
Usando la pantalla
- Filtro por acción: escribe parte del código (ej.:
dispute.resolved). - Filtro por actor: Todos, Usuario, Sistema o Job.
- Paginación: 25 eventos por página.
- Ver detalles abre el registro completo, con IP, motivo y los paneles Antes/Después en JSON.
Acceso vía API
La pista se expone solo para lectura en GET /api/v1/audit-logs, con filtros por acción, tipo/ID de entidad, tipo/ID de actor y rango de fechas (from/to), paginada hasta 100 por página. La escritura es exclusiva del servicio de auditoría: no existe endpoint para crear, editar o borrar registros.
Ver la auditoría exige el permiso audit.list (los roles de sistema Gestor y Visualizador lo tienen; las claves de API de integración, no — la auditoría es un recurso administrativo).