diff --git a/app/Services/PagoValidadorService.php b/app/Services/PagoValidadorService.php index 2a9fa12..3e04e5a 100755 --- a/app/Services/PagoValidadorService.php +++ b/app/Services/PagoValidadorService.php @@ -81,8 +81,9 @@ class PagoValidadorService return ['estado' => 'ya_usado', 'correo' => $datosCorreo, 'motivo' => 'correo_ya_aplicado']; } } catch (\Throwable $e) { - Log::warning('[PagoValidador] Error al verificar hash (tabla pagos_confirmados existe?): ' . $e->getMessage()); - // Continuar sin bloquear — el anti-duplicado no debe impedir confirmaciones + // Falla cerrado: si no se puede verificar el anti-duplicado, no confirmar + Log::error('[PagoValidador] ERROR tabla pagos_confirmados (ejecutar migrate): ' . $e->getMessage()); + return ['estado' => 'no_encontrado', 'correo' => null, 'motivo' => 'error_sistema']; } // ── 3. Fecha (mismo día) — solo si ambos tienen fecha ── @@ -124,7 +125,9 @@ class PagoValidadorService 'referencia' => $datosPago['referencia'] ?? null, ]); } catch (\Throwable $e) { - Log::warning('[PagoValidador] No se pudo marcar hash (tabla pagos_confirmados existe?): ' . $e->getMessage()); + // Falla cerrado: si no se puede registrar el hash, no confirmar + Log::error('[PagoValidador] ERROR al marcar hash (ejecutar migrate): ' . $e->getMessage()); + return ['estado' => 'no_encontrado', 'correo' => null, 'motivo' => 'error_sistema']; } return [ diff --git a/app/Services/TelegramBotService.php b/app/Services/TelegramBotService.php index d87ca13..634d36e 100755 --- a/app/Services/TelegramBotService.php +++ b/app/Services/TelegramBotService.php @@ -239,6 +239,7 @@ class TelegramBotService 'error_imap' => '📧 Error al leer correos IMAP', 'sin_correos' => '📧 Sin correos recientes en bandeja', 'sin_coincidencia' => '📧 Ningún correo coincide con este monto/fecha', + 'error_sistema' => '⚙️ Error interno — un asesor revisará manualmente', default => '📧 No se pudo verificar', }; $texto .= "\nEstado: *⚠️ No confirmado*\n_{$motivo}_\n\nUn asesor revisará tu pago.";