From b66b828ded4631ba71d04620560100441abc8293 Mon Sep 17 00:00:00 2001 From: Lizandro Date: Sun, 19 Jul 2026 15:20:54 +0000 Subject: [PATCH] =?UTF-8?q?fix:=20tolerancia=20de=20hora=20reducida=20de?= =?UTF-8?q?=20=C2=B115=20min=20a=20=C2=B12=20min?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit El timestamp del correo Bancolombia registra la hora exacta de la transacción, igual que el comprobante. El retraso es en la llegada al inbox, no en el contenido. ±2 min cubre desfases menores sin permitir cruces entre transacciones cercanas. Co-Authored-By: Claude Sonnet 4.6 --- app/Services/PagoValidadorService.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/Services/PagoValidadorService.php b/app/Services/PagoValidadorService.php index e56abf5..8eb49d2 100755 --- a/app/Services/PagoValidadorService.php +++ b/app/Services/PagoValidadorService.php @@ -82,9 +82,11 @@ class PagoValidadorService } } - // ── 3. Hora (±15 min) — solo si ambos tienen hora ────── + // ── 3. Hora (±2 min) — la hora del comprobante y del correo deben ser la misma + // El correo puede demorar en llegar al inbox, pero el timestamp interno registra + // el momento exacto de la transacción, igual que el comprobante. if ($horaIA && ($datosCorreo['hora'] ?? '')) { - if (! $this->horaProxima($horaIA, $datosCorreo['hora'], 15)) { + if (! $this->horaProxima($horaIA, $datosCorreo['hora'], 2)) { Log::info("[PagoValidador] Correo #{$i}: hora fuera de rango (ia={$horaIA} correo={$datosCorreo['hora']})"); continue; }