SAT: - Cron diario 6-10 AM con grupos de tenants (~20% por hora). - Retries fijos de daily sync a 9 AM y 4 PM CDMX. - Filtrado de contribuyentes con FIEL vigente en cron. - Timeout de 5 min en cliente HTTP del SAT. - Manejo defensivo de 404, EmptyResult (5004) y solicitudes agotadas. - Fechas formateadas en zona horaria America/Mexico_City. - Patch a @nodecfdi/sat-ws-descarga-masiva para evitar getResponse crash. - Sweep de jobs stale con thresholds ajustados. Auth/Web: - Primer pago de suscripción define periodo activo en webhook. - Rate limit de login: 25 intentos / 15 min. - Recuperación de contraseña: 24h de validez. - Soporte viewingTenantId en contribuyentes. - Timeout y estado de carga al crear organización en Facturapi. - Filtros por cliente y cartera en Mis Asignados. - Orden alfabético en selector de contribuyente. DB: - Migración 057: unique index de declaraciones incluye impuestos.
20 lines
858 B
Diff
20 lines
858 B
Diff
diff --git a/build/index.js b/build/index.js
|
|
index bf7a6aafce966c4ab44ba3abb240578cc68779d6..4678df8734b098f20c7e14d8593bd4328fe759d8 100644
|
|
--- a/build/index.js
|
|
+++ b/build/index.js
|
|
@@ -266,7 +266,13 @@ var ServiceConsumer = class _ServiceConsumer {
|
|
} catch (error) {
|
|
const webError = error;
|
|
exception = webError;
|
|
- response = webError.getResponse();
|
|
+ if (typeof webError.getResponse !== "function") {
|
|
+ console.error("[SAT Library] Error no-WebClientException capturado en ServiceConsumer.execute:", error);
|
|
+ const fallbackResponse = new CResponse(0, String(error && error.message ? error.message : error), {});
|
|
+ response = fallbackResponse;
|
|
+ } else {
|
|
+ response = webError.getResponse();
|
|
+ }
|
|
}
|
|
this.checkErrors(request, response, exception);
|
|
return response.getBody();
|