@devlas/dte-sii 2.12.5 → 2.12.7
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 +9 -0
- package/DTE.js +2 -1
- package/package.json +1 -1
- package/utils/receptor.js +18 -19
package/CafSolicitor.js
CHANGED
|
@@ -325,6 +325,15 @@ class CafSolicitor {
|
|
|
325
325
|
};
|
|
326
326
|
}
|
|
327
327
|
|
|
328
|
+
// Si la respuesta final sigue siendo una redirección de auth, el cookieJar en memoria
|
|
329
|
+
// está inválido (sesión stale en _sessionRegistry). Eliminar del registro y hacer logout
|
|
330
|
+
// best-effort para que el próximo intento cree sesión fresca desde SiiPortalAuth.
|
|
331
|
+
if (this._requiresAuthentication(finalBody)) {
|
|
332
|
+
_sessionRegistry.delete(`${this.ambiente}::${this.rutEmisor}`);
|
|
333
|
+
try { await this.session.logout() } catch (_) {}
|
|
334
|
+
return { success: false, errorCode: 'SESSION_EXPIRED', error: 'Sesión SII inválida — registro limpiado, el próximo intento reautenticará.' };
|
|
335
|
+
}
|
|
336
|
+
|
|
328
337
|
return { success: false, errorCode: 'UNKNOWN', error: 'No se obtuvo CAF en la respuesta' };
|
|
329
338
|
|
|
330
339
|
} catch (err) {
|
package/DTE.js
CHANGED
|
@@ -202,7 +202,8 @@ class DTE {
|
|
|
202
202
|
Encabezado: { IdDoc: idDoc, Emisor: emisor, Receptor: receptor, Totales: enc.Totales },
|
|
203
203
|
Detalle: detalle,
|
|
204
204
|
...(this.datos.DscRcgGlobal ? { DscRcgGlobal: this.datos.DscRcgGlobal } : {}),
|
|
205
|
-
...(this.datos.Referencia
|
|
205
|
+
...(this.datos.Referencia ? { Referencia: this.datos.Referencia } : {}),
|
|
206
|
+
...(this.datos.SubTotInfo ? { SubTotInfo: this.datos.SubTotInfo } : {}),
|
|
206
207
|
TED: null,
|
|
207
208
|
}
|
|
208
209
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@devlas/dte-sii",
|
|
3
|
-
"version": "2.12.
|
|
3
|
+
"version": "2.12.7",
|
|
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",
|
package/utils/receptor.js
CHANGED
|
@@ -48,31 +48,27 @@ function buildReceptor(config) {
|
|
|
48
48
|
rut,
|
|
49
49
|
razonSocial,
|
|
50
50
|
giro,
|
|
51
|
+
contacto,
|
|
52
|
+
correo,
|
|
51
53
|
direccion,
|
|
52
54
|
comuna,
|
|
53
55
|
ciudad,
|
|
54
|
-
|
|
56
|
+
cdgIntRecep,
|
|
55
57
|
} = config;
|
|
56
58
|
|
|
57
|
-
const receptor = {
|
|
58
|
-
RUTRecep: formatRutSii(rut),
|
|
59
|
-
RznSocRecep: sanitizeSiiText(razonSocial),
|
|
60
|
-
};
|
|
59
|
+
const receptor = { RUTRecep: formatRutSii(rut) };
|
|
61
60
|
|
|
62
|
-
if (
|
|
63
|
-
receptor.GiroRecep = sanitizeGiroRecep(giro);
|
|
64
|
-
}
|
|
61
|
+
if (cdgIntRecep) receptor.CdgIntRecep = cdgIntRecep;
|
|
65
62
|
|
|
66
|
-
receptor.
|
|
67
|
-
receptor.CmnaRecep = comuna;
|
|
63
|
+
receptor.RznSocRecep = sanitizeSiiText(razonSocial);
|
|
68
64
|
|
|
69
|
-
if (
|
|
70
|
-
|
|
71
|
-
|
|
65
|
+
if (giro) receptor.GiroRecep = sanitizeGiroRecep(giro);
|
|
66
|
+
if (contacto) receptor.Contacto = contacto;
|
|
67
|
+
if (correo) receptor.CorreoRecep = correo;
|
|
72
68
|
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
69
|
+
receptor.DirRecep = sanitizeSiiText(direccion);
|
|
70
|
+
receptor.CmnaRecep = comuna;
|
|
71
|
+
if (ciudad) receptor.CiudadRecep = ciudad;
|
|
76
72
|
|
|
77
73
|
return receptor;
|
|
78
74
|
}
|
|
@@ -134,11 +130,14 @@ function normalizeReceptor(receptor, esBoleta = false) {
|
|
|
134
130
|
: undefined;
|
|
135
131
|
|
|
136
132
|
return {
|
|
137
|
-
RUTRecep:
|
|
133
|
+
RUTRecep: receptor.RUTRecep,
|
|
134
|
+
...(receptor.CdgIntRecep ? { CdgIntRecep: receptor.CdgIntRecep } : {}),
|
|
138
135
|
RznSocRecep: sanitizeSiiText(receptor.RznSocRecep),
|
|
139
136
|
...(giroRecep ? { GiroRecep: giroRecep } : {}),
|
|
140
|
-
|
|
141
|
-
|
|
137
|
+
...(receptor.Contacto ? { Contacto: receptor.Contacto } : {}),
|
|
138
|
+
...(receptor.CorreoRecep ? { CorreoRecep: receptor.CorreoRecep } : {}),
|
|
139
|
+
DirRecep: sanitizeSiiText(receptor.DirRecep),
|
|
140
|
+
CmnaRecep: receptor.CmnaRecep,
|
|
142
141
|
...(receptor.CiudadRecep ? { CiudadRecep: receptor.CiudadRecep } : {}),
|
|
143
142
|
};
|
|
144
143
|
}
|