@devlas/dte-sii 2.12.1 → 2.12.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CafSolicitor.js +18 -2
- package/package.json +1 -1
package/CafSolicitor.js
CHANGED
|
@@ -328,8 +328,24 @@ class CafSolicitor {
|
|
|
328
328
|
return { success: false, errorCode: 'UNKNOWN', error: 'No se obtuvo CAF en la respuesta' };
|
|
329
329
|
|
|
330
330
|
} catch (err) {
|
|
331
|
-
|
|
332
|
-
|
|
331
|
+
const msg = err.message || '';
|
|
332
|
+
const isUnknownCa = msg.includes('unknown ca') || msg.includes('CERT_UNTRUSTED') || msg.includes('unknown_ca');
|
|
333
|
+
const isCertExpired = msg.includes('certificate has expired') || msg.includes('CERT_HAS_EXPIRED');
|
|
334
|
+
const isSslError = isUnknownCa || isCertExpired || msg.includes('SSL') || msg.includes('TLS');
|
|
335
|
+
|
|
336
|
+
const errorCode = isUnknownCa ? 'SSL_CERT_CHAIN'
|
|
337
|
+
: isCertExpired ? 'SSL_CERT_EXPIRED'
|
|
338
|
+
: isSslError ? 'SSL_ERROR'
|
|
339
|
+
: 'NETWORK_ERROR';
|
|
340
|
+
|
|
341
|
+
const friendlyError = isUnknownCa
|
|
342
|
+
? 'SII rechazó el certificado PFX (cadena de CA incompleta — falta certificado intermedio).'
|
|
343
|
+
: isCertExpired
|
|
344
|
+
? 'El certificado digital PFX está vencido. El cliente debe renovarlo.'
|
|
345
|
+
: msg;
|
|
346
|
+
|
|
347
|
+
console.error(`[CafSolicitor] Error (${errorCode}): ${friendlyError}`);
|
|
348
|
+
return { success: false, errorCode, error: friendlyError };
|
|
333
349
|
}
|
|
334
350
|
}
|
|
335
351
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@devlas/dte-sii",
|
|
3
|
-
"version": "2.12.
|
|
3
|
+
"version": "2.12.2",
|
|
4
4
|
"description": "Facturación y boletas electrónicas para el SII de Chile. Genera, timbra, firma y envía DTEs, libros electrónicos y automatiza la certificación.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"types": "dte-sii.d.ts",
|