@albertomarturelo/sii-core 0.18.0 → 0.19.0

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.
Files changed (42) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/dist/config/config.d.ts +4 -0
  3. package/dist/config/config.d.ts.map +1 -1
  4. package/dist/config/config.js +4 -0
  5. package/dist/config/config.js.map +1 -1
  6. package/dist/errors/errors.d.ts +6 -0
  7. package/dist/errors/errors.d.ts.map +1 -1
  8. package/dist/errors/errors.js +6 -0
  9. package/dist/errors/errors.js.map +1 -1
  10. package/dist/index.d.ts +2 -0
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +1 -0
  13. package/dist/index.js.map +1 -1
  14. package/dist/portal/bienes-raices-misii.d.ts +46 -0
  15. package/dist/portal/bienes-raices-misii.d.ts.map +1 -0
  16. package/dist/portal/bienes-raices-misii.js +175 -0
  17. package/dist/portal/bienes-raices-misii.js.map +1 -0
  18. package/dist/portal/f29-rfi-form.d.ts +12 -3
  19. package/dist/portal/f29-rfi-form.d.ts.map +1 -1
  20. package/dist/portal/f29-rfi-form.js +98 -28
  21. package/dist/portal/f29-rfi-form.js.map +1 -1
  22. package/dist/portal/f29-rfi.d.ts +33 -11
  23. package/dist/portal/f29-rfi.d.ts.map +1 -1
  24. package/dist/portal/f29-rfi.js +116 -32
  25. package/dist/portal/f29-rfi.js.map +1 -1
  26. package/dist/portal/f29.d.ts +7 -0
  27. package/dist/portal/f29.d.ts.map +1 -1
  28. package/dist/portal/f29.js +19 -0
  29. package/dist/portal/f29.js.map +1 -1
  30. package/dist/tasks/alertas.d.ts +11 -3
  31. package/dist/tasks/alertas.d.ts.map +1 -1
  32. package/dist/tasks/alertas.js +35 -2
  33. package/dist/tasks/alertas.js.map +1 -1
  34. package/dist/tasks/bienes-raices.d.ts +13 -0
  35. package/dist/tasks/bienes-raices.d.ts.map +1 -0
  36. package/dist/tasks/bienes-raices.js +39 -0
  37. package/dist/tasks/bienes-raices.js.map +1 -0
  38. package/dist/tasks/f29-submit.d.ts +20 -8
  39. package/dist/tasks/f29-submit.d.ts.map +1 -1
  40. package/dist/tasks/f29-submit.js +106 -21
  41. package/dist/tasks/f29-submit.js.map +1 -1
  42. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -4,6 +4,43 @@ All notable changes to `@albertomarturelo/sii-core` are documented here. The for
4
4
  loosely based on [Keep a Changelog](https://keepachangelog.com/); the package is
5
5
  pre-1.0, so MINOR bumps may carry breaking changes (pin or use `~` downstream).
6
6
 
7
+ ## 0.19.0 — 2026-10-29
8
+
9
+ ### Added
10
+
11
+ - **`f29SubmitPreview` / `f29Submit` take `sinMovimiento` (#221, ADR-029 amendment).** SII's
12
+ « Declarar sin movimiento » route: `enviarDatosFlujo` alone with tipo `CUSTOMIZADO`, the
13
+ primitiva layout (`findVersionFormularioPrimitivaByPeriodo`), Formulario tipo 1, the Periodo
14
+ built from the flow, and the validated Borrador saved unchanged. It refuses a propuesta, a
15
+ month not ended, and a month whose previous one is not Vigente (except the account's first,
16
+ from Mi SII `DatosCntrNow`); any código validated with a value is a `sobra` desacuerdo. The
17
+ receipt carries `ruta: "sinMovimiento"`. The interpreter now ports `wM`'s editability (the
18
+ cell's `j` and the campo's editable flag) and the customizado screen (`HMb`, 8859 = "3").
19
+ - **`bienesRaicesList(runtime)` (#236, ADR-032)** with `BienesRaicesResult`, `Predio`,
20
+ `CuotaContribucion` and `BienesRaicesError` (kind `sii_error`). Session-keyed; the audit holds
21
+ the RUT and counts only. `alertas` gains the `bienes_raices` source (`contribuciones_vencida`,
22
+ `contribuciones_por_vencer`, optional `contribucion` field).
23
+
24
+ ### Changed
25
+
26
+ - **`F29SubmitPreview.borradorGuardado` is `boolean`** (was `true`): `false` on the sin
27
+ movimiento route, which saves nothing at SII.
28
+
29
+ ## 0.18.1 — 2026-10-28
30
+
31
+ ### Fixed
32
+
33
+ - **`f29SubmitPreview` / `f29Submit` read a text código as text (#235).** The validated
34
+ borrador's `D` values are read by their campo's layout type (`ENTERO*` / `DECIMAL*` as a
35
+ monto, anything else as text); 922 and 915 are `STRING`, and a value there was « scraper
36
+ roto ». `F29BorradorValidado` gains `textos`, `F29CampoValor` gains `numerico`, and
37
+ `verificarBorradorF29` takes an optional `textos` (a text SII adds is `sobra`, one it changes
38
+ `distinto`). These live in the portal layer, not the main barrel.
39
+ - **A late filing is refused before saving (ADR-029 amendment).** When SII's validated borrador
40
+ declares any código of the recargo block (92, 93, 94, 795, 915, 922), both phases throw an
41
+ `F29Error` (kind `sii_error`, audited `refused`) instead of reporting `sobra`. Filing late is
42
+ #237.
43
+
7
44
  ## 0.18.0 — 2026-10-26
8
45
 
9
46
  ### Added
@@ -7,6 +7,10 @@ export declare const HOSTS: {
7
7
  readonly logoutPath: "/cgi_AUT2000/autTermino.cgi";
8
8
  /** Mi SII landing — serves the inline `DatosCntrNow` object with the contribuyente snapshot. */
9
9
  readonly miSii: "https://misiir.sii.cl/cgi_misii/siihome.cgi";
10
+ /** Mi SII's JSON CGI behind the home's panels: form-POST `opc=<n>`, answers JSON. `opc=34` is
11
+ * the « Bienes raíces » panel (predios + cuotas por pagar). A missing session answers `200`
12
+ * `{"codigoResp":-2,…}`, not a redirect (observed 2026-10-28, #236 / ADR-032). */
13
+ readonly miSiiCarta: "https://misiir.sii.cl/cgi_misii/CViewCarta.cgi";
10
14
  readonly portal: "https://www.sii.cl";
11
15
  /** SPA JSON facades (RCV / F29 / F22) live under this host. */
12
16
  readonly portalApi: "https://www4.sii.cl";
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,KAAK;IAChB,2FAA2F;;IAE3F,+FAA+F;;IAE/F,8FAA8F;;IAE9F,gGAAgG;;;IAGhG,+DAA+D;;IAE/D;;;;2CAIuC;;IAEvC;;;uFAGmF;;IAEnF;;;;;oFAKgF;;IAEhF;wEACoE;;IAEpE;;;;0BAIsB;;IAEtB;6FACyF;;;CAGjF,CAAC;AAEX,+EAA+E;AAC/E,eAAO,MAAM,UAAU,iBAAiB,CAAC;AAEzC,yCAAyC;AACzC,eAAO,MAAM,SAAS,QAAqC,CAAC;AAE5D,oFAAoF;AACpF,eAAO,MAAM,UAAU,QAAsC,CAAC;AAE9D;;+CAE+C;AAC/C,eAAO,MAAM,cAAc,QAA8C,CAAC;AAE1E;;2FAE2F;AAC3F,eAAO,MAAM,aAAa,sBAAsB,CAAC;AAEjD;;;qCAGqC;AACrC,eAAO,MAAM,gBAAgB,QAA2D,CAAC;AAEzF;gGACgG;AAChG,eAAO,MAAM,sBAAsB,QAAyC,CAAC;AAE7E;;;sDAGsD;AACtD,eAAO,MAAM,eAAe,QAAQ,CAAC;AAErC,MAAM,WAAW,QAAQ;IACvB,sEAAsE;IACtE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,8CAA8C;IAC9C,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;CACpC;AAED,eAAO,MAAM,gBAAgB,EAAE,QAG9B,CAAC;AAEF,yFAAyF;AACzF,wBAAgB,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAEpD"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,KAAK;IAChB,2FAA2F;;IAE3F,+FAA+F;;IAE/F,8FAA8F;;IAE9F,gGAAgG;;IAEhG;;uFAEmF;;;IAGnF,+DAA+D;;IAE/D;;;;2CAIuC;;IAEvC;;;uFAGmF;;IAEnF;;;;;oFAKgF;;IAEhF;wEACoE;;IAEpE;;;;0BAIsB;;IAEtB;6FACyF;;;CAGjF,CAAC;AAEX,+EAA+E;AAC/E,eAAO,MAAM,UAAU,iBAAiB,CAAC;AAEzC,yCAAyC;AACzC,eAAO,MAAM,SAAS,QAAqC,CAAC;AAE5D,oFAAoF;AACpF,eAAO,MAAM,UAAU,QAAsC,CAAC;AAE9D;;+CAE+C;AAC/C,eAAO,MAAM,cAAc,QAA8C,CAAC;AAE1E;;2FAE2F;AAC3F,eAAO,MAAM,aAAa,sBAAsB,CAAC;AAEjD;;;qCAGqC;AACrC,eAAO,MAAM,gBAAgB,QAA2D,CAAC;AAEzF;gGACgG;AAChG,eAAO,MAAM,sBAAsB,QAAyC,CAAC;AAE7E;;;sDAGsD;AACtD,eAAO,MAAM,eAAe,QAAQ,CAAC;AAErC,MAAM,WAAW,QAAQ;IACvB,sEAAsE;IACtE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,8CAA8C;IAC9C,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;CACpC;AAED,eAAO,MAAM,gBAAgB,EAAE,QAG9B,CAAC;AAEF,yFAAyF;AACzF,wBAAgB,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAEpD"}
@@ -10,6 +10,10 @@ export const HOSTS = {
10
10
  logoutPath: '/cgi_AUT2000/autTermino.cgi',
11
11
  /** Mi SII landing — serves the inline `DatosCntrNow` object with the contribuyente snapshot. */
12
12
  miSii: 'https://misiir.sii.cl/cgi_misii/siihome.cgi',
13
+ /** Mi SII's JSON CGI behind the home's panels: form-POST `opc=<n>`, answers JSON. `opc=34` is
14
+ * the « Bienes raíces » panel (predios + cuotas por pagar). A missing session answers `200`
15
+ * `{"codigoResp":-2,…}`, not a redirect (observed 2026-10-28, #236 / ADR-032). */
16
+ miSiiCarta: 'https://misiir.sii.cl/cgi_misii/CViewCarta.cgi',
13
17
  portal: 'https://www.sii.cl',
14
18
  /** SPA JSON facades (RCV / F29 / F22) live under this host. */
15
19
  portalApi: 'https://www4.sii.cl',
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,gFAAgF;AAChF,6DAA6D;AAE7D,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,2FAA2F;IAC3F,KAAK,EAAE,sBAAsB;IAC7B,+FAA+F;IAC/F,SAAS,EAAE,mDAAmD;IAC9D,8FAA8F;IAC9F,UAAU,EAAE,6BAA6B;IACzC,gGAAgG;IAChG,KAAK,EAAE,6CAA6C;IACpD,MAAM,EAAE,oBAAoB;IAC5B,+DAA+D;IAC/D,SAAS,EAAE,qBAAqB;IAChC;;;;2CAIuC;IACvC,SAAS,EAAE,qBAAqB;IAChC;;;uFAGmF;IACnF,MAAM,EAAE,4BAA4B;IACpC;;;;;oFAKgF;IAChF,OAAO,EAAE,uCAAuC;IAChD;wEACoE;IACpE,UAAU,EAAE,+BAA+B;IAC3C;;;;0BAIsB;IACtB,MAAM,EAAE,oCAAoC;IAC5C;6FACyF;IACzF,KAAK,EAAE,uBAAuB;IAC9B,UAAU,EAAE,sDAAsD;CAC1D,CAAC;AAEX,+EAA+E;AAC/E,MAAM,CAAC,MAAM,UAAU,GAAG,cAAc,CAAC;AAEzC,yCAAyC;AACzC,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;AAE5D,oFAAoF;AACpF,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC;AAE9D;;+CAE+C;AAC/C,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,KAAK,CAAC,KAAK,6BAA6B,CAAC;AAE1E;;2FAE2F;AAC3F,MAAM,CAAC,MAAM,aAAa,GAAG,mBAAmB,CAAC;AAEjD;;;qCAGqC;AACrC,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,KAAK,CAAC,SAAS,sCAAsC,CAAC;AAEzF;gGACgG;AAChG,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,KAAK,CAAC,SAAS,oBAAoB,CAAC;AAE7E;;;sDAGsD;AACtD,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAAC;AASrC,MAAM,CAAC,MAAM,gBAAgB,GAAa;IACxC,YAAY,EAAE,CAAC;IACf,iBAAiB,EAAE,EAAE;CACtB,CAAC;AAEF,yFAAyF;AACzF,MAAM,UAAU,QAAQ,CAAC,WAAmB;IAC1C,OAAO,GAAG,SAAS,IAAI,WAAW,EAAE,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,gFAAgF;AAChF,6DAA6D;AAE7D,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,2FAA2F;IAC3F,KAAK,EAAE,sBAAsB;IAC7B,+FAA+F;IAC/F,SAAS,EAAE,mDAAmD;IAC9D,8FAA8F;IAC9F,UAAU,EAAE,6BAA6B;IACzC,gGAAgG;IAChG,KAAK,EAAE,6CAA6C;IACpD;;uFAEmF;IACnF,UAAU,EAAE,gDAAgD;IAC5D,MAAM,EAAE,oBAAoB;IAC5B,+DAA+D;IAC/D,SAAS,EAAE,qBAAqB;IAChC;;;;2CAIuC;IACvC,SAAS,EAAE,qBAAqB;IAChC;;;uFAGmF;IACnF,MAAM,EAAE,4BAA4B;IACpC;;;;;oFAKgF;IAChF,OAAO,EAAE,uCAAuC;IAChD;wEACoE;IACpE,UAAU,EAAE,+BAA+B;IAC3C;;;;0BAIsB;IACtB,MAAM,EAAE,oCAAoC;IAC5C;6FACyF;IACzF,KAAK,EAAE,uBAAuB;IAC9B,UAAU,EAAE,sDAAsD;CAC1D,CAAC;AAEX,+EAA+E;AAC/E,MAAM,CAAC,MAAM,UAAU,GAAG,cAAc,CAAC;AAEzC,yCAAyC;AACzC,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;AAE5D,oFAAoF;AACpF,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC;AAE9D;;+CAE+C;AAC/C,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,KAAK,CAAC,KAAK,6BAA6B,CAAC;AAE1E;;2FAE2F;AAC3F,MAAM,CAAC,MAAM,aAAa,GAAG,mBAAmB,CAAC;AAEjD;;;qCAGqC;AACrC,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,KAAK,CAAC,SAAS,sCAAsC,CAAC;AAEzF;gGACgG;AAChG,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,KAAK,CAAC,SAAS,oBAAoB,CAAC;AAE7E;;;sDAGsD;AACtD,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAAC;AASrC,MAAM,CAAC,MAAM,gBAAgB,GAAa;IACxC,YAAY,EAAE,CAAC;IACf,iBAAiB,EAAE,EAAE;CACtB,CAAC;AAEF,yFAAyF;AACzF,MAAM,UAAU,QAAQ,CAAC,WAAmB;IAC1C,OAAO,GAAG,SAAS,IAAI,WAAW,EAAE,CAAC;AACvC,CAAC"}
@@ -152,4 +152,10 @@ export declare class DteError extends SiiError {
152
152
  * app session is `Www2SessionError` and a `LOGIN_HOST` bounce `SessionExpiredError`, not this. */
153
153
  export declare class CarpetaError extends SiiError {
154
154
  }
155
+ /** SII rejected the Mi SII bienes-raíces read (`CViewCarta.cgi opc=34`, ADR-032), the body was
156
+ * not the observed shape ("scraper roto"), or the operation is invalid for its session-keyed
157
+ * contract (a representing pointer, ADR-005). SII's message verbatim where one exists — never
158
+ * translated (ADR-004). A missing session is `SessionExpiredError`, not this. */
159
+ export declare class BienesRaicesError extends SiiError {
160
+ }
155
161
  //# sourceMappingURL=errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors/errors.ts"],"names":[],"mappings":"AAIA,qBAAa,QAAS,SAAQ,KAAK;gBACrB,OAAO,EAAE,MAAM;CAI5B;AAED,mEAAmE;AACnE,qBAAa,qBAAsB,SAAQ,QAAQ;CAAG;AAEtD;;iEAEiE;AACjE,qBAAa,mBAAoB,SAAQ,qBAAqB;CAAG;AAEjE;;;;cAIc;AACd,qBAAa,gBAAiB,SAAQ,qBAAqB;CAAG;AAE9D;;;uFAGuF;AACvF,MAAM,MAAM,kBAAkB,GAAG,aAAa,GAAG,SAAS,CAAC;AAE3D;;;;6CAI6C;AAC7C,qBAAa,gBAAiB,SAAQ,QAAQ;IAC5C,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;gBACnB,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,kBAAkB,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE;CAK5F;AAED,mFAAmF;AACnF,qBAAa,cAAe,SAAQ,QAAQ;CAAG;AAE/C;;;oDAGoD;AACpD,qBAAa,oBAAqB,SAAQ,QAAQ;CAAG;AAErD;;6EAE6E;AAC7E,qBAAa,gBAAiB,SAAQ,gBAAgB;CAAG;AAEzD;;;;8EAI8E;AAC9E,qBAAa,iBAAkB,SAAQ,gBAAgB;CAAG;AAE1D,oFAAoF;AACpF,qBAAa,uBAAwB,SAAQ,QAAQ;CAAG;AAExD,mFAAmF;AACnF,qBAAa,eAAgB,SAAQ,QAAQ;CAAG;AAEhD;;;;;;;;wBAQwB;AACxB,qBAAa,uBAAwB,SAAQ,QAAQ;CAAG;AAExD;;;;;qBAKqB;AACrB,qBAAa,YAAa,SAAQ,KAAK;IACrC,oDAAoD;IACpD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4FAA4F;IAC5F,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;gBAClB,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE;CAM1E;AAED;;kFAEkF;AAClF,qBAAa,YAAa,SAAQ,KAAK;gBACzB,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,KAAK,EAAE,OAAO,CAAA;KAAE;CAIzD;AAED;8EAC8E;AAC9E,qBAAa,mBAAoB,SAAQ,QAAQ;CAAG;AAEpD;uFACuF;AACvF,qBAAa,QAAS,SAAQ,QAAQ;CAAG;AAEzC;8EAC8E;AAC9E,qBAAa,QAAS,SAAQ,QAAQ;CAAG;AAEzC;;;wFAGwF;AACxF,qBAAa,QAAS,SAAQ,QAAQ;CAAG;AAEzC;;mEAEmE;AACnE,qBAAa,eAAgB,SAAQ,QAAQ;CAAG;AAEhD;;;eAGe;AACf,qBAAa,QAAS,SAAQ,QAAQ;CAAG;AAEzC;;;;;gFAKgF;AAChF,qBAAa,eAAgB,SAAQ,QAAQ;CAAG;AAEhD;;;;;;;;uCAQuC;AACvC,qBAAa,QAAS,SAAQ,QAAQ;CAAG;AAEzC;;;;;mGAKmG;AACnG,qBAAa,YAAa,SAAQ,QAAQ;CAAG"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors/errors.ts"],"names":[],"mappings":"AAIA,qBAAa,QAAS,SAAQ,KAAK;gBACrB,OAAO,EAAE,MAAM;CAI5B;AAED,mEAAmE;AACnE,qBAAa,qBAAsB,SAAQ,QAAQ;CAAG;AAEtD;;iEAEiE;AACjE,qBAAa,mBAAoB,SAAQ,qBAAqB;CAAG;AAEjE;;;;cAIc;AACd,qBAAa,gBAAiB,SAAQ,qBAAqB;CAAG;AAE9D;;;uFAGuF;AACvF,MAAM,MAAM,kBAAkB,GAAG,aAAa,GAAG,SAAS,CAAC;AAE3D;;;;6CAI6C;AAC7C,qBAAa,gBAAiB,SAAQ,QAAQ;IAC5C,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;gBACnB,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,kBAAkB,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE;CAK5F;AAED,mFAAmF;AACnF,qBAAa,cAAe,SAAQ,QAAQ;CAAG;AAE/C;;;oDAGoD;AACpD,qBAAa,oBAAqB,SAAQ,QAAQ;CAAG;AAErD;;6EAE6E;AAC7E,qBAAa,gBAAiB,SAAQ,gBAAgB;CAAG;AAEzD;;;;8EAI8E;AAC9E,qBAAa,iBAAkB,SAAQ,gBAAgB;CAAG;AAE1D,oFAAoF;AACpF,qBAAa,uBAAwB,SAAQ,QAAQ;CAAG;AAExD,mFAAmF;AACnF,qBAAa,eAAgB,SAAQ,QAAQ;CAAG;AAEhD;;;;;;;;wBAQwB;AACxB,qBAAa,uBAAwB,SAAQ,QAAQ;CAAG;AAExD;;;;;qBAKqB;AACrB,qBAAa,YAAa,SAAQ,KAAK;IACrC,oDAAoD;IACpD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4FAA4F;IAC5F,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;gBAClB,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE;CAM1E;AAED;;kFAEkF;AAClF,qBAAa,YAAa,SAAQ,KAAK;gBACzB,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,KAAK,EAAE,OAAO,CAAA;KAAE;CAIzD;AAED;8EAC8E;AAC9E,qBAAa,mBAAoB,SAAQ,QAAQ;CAAG;AAEpD;uFACuF;AACvF,qBAAa,QAAS,SAAQ,QAAQ;CAAG;AAEzC;8EAC8E;AAC9E,qBAAa,QAAS,SAAQ,QAAQ;CAAG;AAEzC;;;wFAGwF;AACxF,qBAAa,QAAS,SAAQ,QAAQ;CAAG;AAEzC;;mEAEmE;AACnE,qBAAa,eAAgB,SAAQ,QAAQ;CAAG;AAEhD;;;eAGe;AACf,qBAAa,QAAS,SAAQ,QAAQ;CAAG;AAEzC;;;;;gFAKgF;AAChF,qBAAa,eAAgB,SAAQ,QAAQ;CAAG;AAEhD;;;;;;;;uCAQuC;AACvC,qBAAa,QAAS,SAAQ,QAAQ;CAAG;AAEzC;;;;;mGAKmG;AACnG,qBAAa,YAAa,SAAQ,QAAQ;CAAG;AAE7C;;;kFAGkF;AAClF,qBAAa,iBAAkB,SAAQ,QAAQ;CAAG"}
@@ -157,4 +157,10 @@ export class DteError extends SiiError {
157
157
  * app session is `Www2SessionError` and a `LOGIN_HOST` bounce `SessionExpiredError`, not this. */
158
158
  export class CarpetaError extends SiiError {
159
159
  }
160
+ /** SII rejected the Mi SII bienes-raíces read (`CViewCarta.cgi opc=34`, ADR-032), the body was
161
+ * not the observed shape ("scraper roto"), or the operation is invalid for its session-keyed
162
+ * contract (a representing pointer, ADR-005). SII's message verbatim where one exists — never
163
+ * translated (ADR-004). A missing session is `SessionExpiredError`, not this. */
164
+ export class BienesRaicesError extends SiiError {
165
+ }
160
166
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors/errors.ts"],"names":[],"mappings":"AAAA,2FAA2F;AAC3F,2EAA2E;AAC3E,kEAAkE;AAElE,MAAM,OAAO,QAAS,SAAQ,KAAK;IACjC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;IAC9B,CAAC;CACF;AAED,mEAAmE;AACnE,MAAM,OAAO,qBAAsB,SAAQ,QAAQ;CAAG;AAEtD;;iEAEiE;AACjE,MAAM,OAAO,mBAAoB,SAAQ,qBAAqB;CAAG;AAEjE;;;;cAIc;AACd,MAAM,OAAO,gBAAiB,SAAQ,qBAAqB;CAAG;AAQ9D;;;;6CAI6C;AAC7C,MAAM,OAAO,gBAAiB,SAAQ,QAAQ;IACnC,MAAM,CAAqB;IAC3B,MAAM,CAAgB;IAC/B,YAAY,OAAe,EAAE,IAA8D;QACzF,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,MAAM,GAAG,IAAI,EAAE,MAAM,IAAI,SAAS,CAAC;QACxC,IAAI,CAAC,MAAM,GAAG,IAAI,EAAE,MAAM,IAAI,IAAI,CAAC;IACrC,CAAC;CACF;AAED,mFAAmF;AACnF,MAAM,OAAO,cAAe,SAAQ,QAAQ;CAAG;AAE/C;;;oDAGoD;AACpD,MAAM,OAAO,oBAAqB,SAAQ,QAAQ;CAAG;AAErD;;6EAE6E;AAC7E,MAAM,OAAO,gBAAiB,SAAQ,gBAAgB;CAAG;AAEzD;;;;8EAI8E;AAC9E,MAAM,OAAO,iBAAkB,SAAQ,gBAAgB;CAAG;AAE1D,oFAAoF;AACpF,MAAM,OAAO,uBAAwB,SAAQ,QAAQ;CAAG;AAExD,mFAAmF;AACnF,MAAM,OAAO,eAAgB,SAAQ,QAAQ;CAAG;AAEhD;;;;;;;;wBAQwB;AACxB,MAAM,OAAO,uBAAwB,SAAQ,QAAQ;CAAG;AAExD;;;;;qBAKqB;AACrB,MAAM,OAAO,YAAa,SAAQ,KAAK;IACrC,oDAAoD;IAC3C,IAAI,CAAS;IACtB,4FAA4F;IACnF,KAAK,CAAgB;IAC9B,YAAY,OAAe,EAAE,IAA4C;QACvE,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IAC1B,CAAC;CACF;AAED;;kFAEkF;AAClF,MAAM,OAAO,YAAa,SAAQ,KAAK;IACrC,YAAY,OAAe,EAAE,OAA2B;QACtD,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;IAC9B,CAAC;CACF;AAED;8EAC8E;AAC9E,MAAM,OAAO,mBAAoB,SAAQ,QAAQ;CAAG;AAEpD;uFACuF;AACvF,MAAM,OAAO,QAAS,SAAQ,QAAQ;CAAG;AAEzC;8EAC8E;AAC9E,MAAM,OAAO,QAAS,SAAQ,QAAQ;CAAG;AAEzC;;;wFAGwF;AACxF,MAAM,OAAO,QAAS,SAAQ,QAAQ;CAAG;AAEzC;;mEAEmE;AACnE,MAAM,OAAO,eAAgB,SAAQ,QAAQ;CAAG;AAEhD;;;eAGe;AACf,MAAM,OAAO,QAAS,SAAQ,QAAQ;CAAG;AAEzC;;;;;gFAKgF;AAChF,MAAM,OAAO,eAAgB,SAAQ,QAAQ;CAAG;AAEhD;;;;;;;;uCAQuC;AACvC,MAAM,OAAO,QAAS,SAAQ,QAAQ;CAAG;AAEzC;;;;;mGAKmG;AACnG,MAAM,OAAO,YAAa,SAAQ,QAAQ;CAAG"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors/errors.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -19,6 +19,8 @@ export type { BteMensual, BteBoleta, BteTotales, BteSide, BteEmitArgs, BteEmitRe
19
19
  export { peticionesList } from './tasks/peticiones.js';
20
20
  export type { PeticionesResult, Peticion, EstadoPeticion } from './tasks/peticiones.js';
21
21
  export { carpetaInstituciones } from './tasks/carpeta.js';
22
+ export { bienesRaicesList } from './tasks/bienes-raices.js';
23
+ export type { BienesRaicesResult, CuotaContribucion, Predio } from './tasks/bienes-raices.js';
22
24
  export { alertas, FUENTES_ALERTAS } from './tasks/alertas.js';
23
25
  export type { Alerta, AlertasArgs, AlertasResult, EstadoFuente, FuenteAlertas, FuenteResultado, TipoAlerta, } from './tasks/alertas.js';
24
26
  export type { CarpetaInstitucion } from './tasks/carpeta.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -16,6 +16,7 @@ export { bteList, bteEmitPreview, bteEmit } from './tasks/bte.js';
16
16
  export { dteAuthorized, dteEmpresas, dteBorradorList, dteBorradorSave, dteBorradorDelete, dtePreviewPdf, dteEmitidos, dtePdf, TIPOS_DTE, MAX_ITEMS, } from './tasks/dte.js';
17
17
  export { peticionesList } from './tasks/peticiones.js';
18
18
  export { carpetaInstituciones } from './tasks/carpeta.js';
19
+ export { bienesRaicesList } from './tasks/bienes-raices.js';
19
20
  export { alertas, FUENTES_ALERTAS } from './tasks/alertas.js';
20
21
  // --- shared primitives ---
21
22
  export { Rut } from './rut/index.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,iGAAiG;AACjG,gFAAgF;AAChF,6EAA6E;AAE7E,uCAAuC;AACvC,mFAAmF;AACnF,mGAAmG;AACnG,gDAAgD;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAYnF,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEzF,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE7E,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAUjE,OAAO,EACL,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,kBAAkB,GACnB,MAAM,gBAAgB,CAAC;AAmBxB,OAAO,EACL,aAAa,EACb,WAAW,EACX,MAAM,EACN,SAAS,EACT,gBAAgB,EAChB,aAAa,EACb,iBAAiB,GAClB,MAAM,gBAAgB,CAAC;AAkBxB,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAOpE,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EACL,aAAa,EACb,WAAW,EACX,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,MAAM,EACN,SAAS,EACT,SAAS,GACV,MAAM,gBAAgB,CAAC;AA+BxB,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AA4B9D,4BAA4B;AAC5B,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACtD,cAAc,mBAAmB,CAAC;AAElC,2EAA2E;AAC3E,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,iGAAiG;AACjG,gFAAgF;AAChF,6EAA6E;AAE7E,uCAAuC;AACvC,mFAAmF;AACnF,mGAAmG;AACnG,gDAAgD;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAYnF,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEzF,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE7E,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAUjE,OAAO,EACL,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,kBAAkB,GACnB,MAAM,gBAAgB,CAAC;AAmBxB,OAAO,EACL,aAAa,EACb,WAAW,EACX,MAAM,EACN,SAAS,EACT,gBAAgB,EAChB,aAAa,EACb,iBAAiB,GAClB,MAAM,gBAAgB,CAAC;AAkBxB,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAOpE,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EACL,aAAa,EACb,WAAW,EACX,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,MAAM,EACN,SAAS,EACT,SAAS,GACV,MAAM,gBAAgB,CAAC;AA+BxB,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE5D,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AA4B9D,4BAA4B;AAC5B,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACtD,cAAc,mBAAmB,CAAC;AAElC,2EAA2E;AAC3E,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC"}
@@ -0,0 +1,46 @@
1
+ import type { PortalSession } from '../seams/index.js';
2
+ /** One unpaid cuota of contribuciones, as Mi SII lists it. Fields as SII's own client reads them
3
+ * (`getCuotas` / `formateaGrilla`, misii.min.js, read 2026-10-28). */
4
+ export interface CuotaContribucion {
5
+ readonly anio: number | null;
6
+ readonly semestre: number | null;
7
+ /** The cuota's number within the año (SII's grid prints `<anio>-<cuota>`). */
8
+ readonly cuota: number | null;
9
+ /** SII's `condicion`, verbatim. */
10
+ readonly condicion: string | null;
11
+ /** SII's own rule (`callMessageBBRR`): `condicion == "VENCIDA"`; every other cuota is vigente. */
12
+ readonly vencida: boolean;
13
+ /** YYYY-MM-DD, or null when SII's value is in neither format its own client accepts. */
14
+ readonly fechaVencimiento: string | null;
15
+ /** SII's `totalPago` in pesos, or null when it is not a readable amount. */
16
+ readonly totalPago: number | null;
17
+ }
18
+ /** A predio whose contribuciones the session's RUT pays, with its unpaid cuotas. */
19
+ export interface Predio {
20
+ /** SII's rol, `<manzana>-<predio>` as SII prints it. Unique within its comuna. */
21
+ readonly rol: string;
22
+ readonly comuna: {
23
+ readonly codigo: number;
24
+ readonly nombre: string | null;
25
+ };
26
+ readonly manzana: number;
27
+ readonly predio: number;
28
+ /** PII: the predio's address. */
29
+ readonly direccion: string | null;
30
+ readonly destino: string | null;
31
+ /** SII's `propietario`: the RUT is the registered owner. null when SII did not say. */
32
+ readonly propietario: boolean | null;
33
+ readonly cuotas: readonly CuotaContribucion[];
34
+ readonly cuotasVencidas: number;
35
+ readonly cuotasVigentes: number;
36
+ }
37
+ /** The two formats SII's own `dateOrderKey` accepts (misii.min.js, read 2026-10-28):
38
+ * `YYYY-MM-DD…` and `D[-/]M[-/]YYYY`. Anything else, or a date that does not exist ⇒ null. */
39
+ export declare function fechaVencimientoIso(v: unknown): string | null;
40
+ /** `totalPago`: a number as is; an es-CL string (`"$ 12.345"`, `"12.345"`, `"12345"`) parsed;
41
+ * anything else ⇒ null. SII's grid prints the value untouched, so both forms are plausible. */
42
+ export declare function montoPesos(v: unknown): number | null;
43
+ /** `POST CViewCarta.cgi opc=34` — the predios the session's RUT pays, with their unpaid cuotas.
44
+ * `data: null` / `{}` is a legitimate "no predios". */
45
+ export declare function fetchPredios(session: PortalSession): Promise<readonly Predio[]>;
46
+ //# sourceMappingURL=bienes-raices-misii.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bienes-raices-misii.d.ts","sourceRoot":"","sources":["../../src/portal/bienes-raices-misii.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD;uEACuE;AACvE,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,8EAA8E;IAC9E,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,mCAAmC;IACnC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,kGAAkG;IAClG,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,wFAAwF;IACxF,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,4EAA4E;IAC5E,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAED,oFAAoF;AACpF,MAAM,WAAW,MAAM;IACrB,kFAAkF;IAClF,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IAC7E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,iCAAiC;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,uFAAuF;IACvF,QAAQ,CAAC,WAAW,EAAE,OAAO,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAC9C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CACjC;AAgCD;+FAC+F;AAC/F,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAc7D;AAED;gGACgG;AAChG,wBAAgB,UAAU,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAMpD;AA0DD;wDACwD;AACxD,wBAAsB,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CA6CrF"}
@@ -0,0 +1,175 @@
1
+ // Bienes raíces — typed facade over Mi SII's « Bienes raíces » panel (ADR-032). First-hand
2
+ // observed, no third-party library (ADR-004); wire contract in docs/sii-contract/bienes-raices.md.
3
+ //
4
+ // The home's accordion POSTs `opc=34&VIEW=1&rnd=<random>` to `CViewCarta.cgi` (Mi SII's
5
+ // `callMessageBBRR`, `misii/js/misii.min.js`, read 2026-10-28) and gets JSON from the SDI service
6
+ // `…serviciosecontribuciones…PropiedadesApplicationService/getPropiedades`: the predios whose
7
+ // contribuciones the RUT pays (owned or not), each with a map of its UNPAID cuotas. Reached with
8
+ // `requestForm` (the CGI takes a form, which `requestJson` does not send), browser-free.
9
+ //
10
+ // Auth: SESSION-KEYED (ADR-005) — the request carries no RUT. A missing session does NOT bounce:
11
+ // the CGI answers `200 {"codigoResp":-2,"glosaRespuesta":"Error: Autenticacion"}` (observed
12
+ // 2026-10-28), so that body is the login wall here, never an empty list.
13
+ //
14
+ // PII: the row carries the dirección and the owner's name. Curated, NO `raw`; the name and the
15
+ // map keys (`<RUT>-<rol>`) are dropped (ADR-032).
16
+ import { z } from 'zod';
17
+ import { HOSTS } from '../config/index.js';
18
+ import { BienesRaicesError, NetworkError, NotAuthenticatedError, SessionExpiredError, } from '../errors/index.js';
19
+ const OPC_BIENES_RAICES = '34';
20
+ // `codigoResp` -2 is how the CGI answers a request without a session (observed 2026-10-28).
21
+ const CODIGO_SIN_SESION = -2;
22
+ // --- Wire shapes (zod-at-the-boundary, ADR-011) ---------------------------------------
23
+ // Success: `{ data: { "<RUT>-<rol>": {…} } | null, metaData: { namespace, errors, … } }`.
24
+ // Failure: `{ codigoResp, glosaRespuesta }`. `.loose()` keeps unobserved fields.
25
+ const Row = z.record(z.string(), z.unknown());
26
+ const Envelope = z
27
+ .object({
28
+ data: z.record(z.string(), Row).nullable().optional(),
29
+ metaData: z.object({ errors: z.unknown().optional() }).loose().nullable().optional(),
30
+ codigoResp: z.number().optional(),
31
+ glosaRespuesta: z.string().nullable().optional(),
32
+ })
33
+ .loose();
34
+ const isObj = (v) => typeof v === 'object' && v !== null;
35
+ const asStr = (v) => {
36
+ if (typeof v === 'string')
37
+ return v.trim() === '' ? null : v.trim();
38
+ if (typeof v === 'number' && Number.isFinite(v))
39
+ return String(v);
40
+ return null;
41
+ };
42
+ const asInt = (v) => {
43
+ if (typeof v === 'number' && Number.isInteger(v))
44
+ return v;
45
+ if (typeof v === 'string' && /^\d+$/.test(v.trim()))
46
+ return Number(v.trim());
47
+ return null;
48
+ };
49
+ const pad = (s) => s.padStart(2, '0');
50
+ /** The two formats SII's own `dateOrderKey` accepts (misii.min.js, read 2026-10-28):
51
+ * `YYYY-MM-DD…` and `D[-/]M[-/]YYYY`. Anything else, or a date that does not exist ⇒ null. */
52
+ export function fechaVencimientoIso(v) {
53
+ if (typeof v !== 'string')
54
+ return null;
55
+ const s = v.trim();
56
+ const iso = /^(\d{4})-(\d{2})-(\d{2})/.exec(s);
57
+ const dmy = iso ? null : /^(\d{1,2})[-/](\d{1,2})[-/](\d{4})/.exec(s);
58
+ const [y, m, d] = iso
59
+ ? [iso[1], iso[2], iso[3]]
60
+ : dmy
61
+ ? [dmy[3], pad(dmy[2]), pad(dmy[1])]
62
+ : [];
63
+ if (!y || !m || !d)
64
+ return null;
65
+ const date = new Date(Number(y), Number(m) - 1, Number(d));
66
+ if (date.getMonth() !== Number(m) - 1 || date.getDate() !== Number(d))
67
+ return null;
68
+ return `${y}-${m}-${d}`;
69
+ }
70
+ /** `totalPago`: a number as is; an es-CL string (`"$ 12.345"`, `"12.345"`, `"12345"`) parsed;
71
+ * anything else ⇒ null. SII's grid prints the value untouched, so both forms are plausible. */
72
+ export function montoPesos(v) {
73
+ if (typeof v === 'number')
74
+ return Number.isFinite(v) ? v : null;
75
+ if (typeof v !== 'string')
76
+ return null;
77
+ const s = v.replace(/\$/g, '').replace(/\s/g, '');
78
+ if (!/^-?(\d{1,3}(\.\d{3})+|\d+)(,\d+)?$/.test(s))
79
+ return null;
80
+ return Number(s.replace(/\./g, '').replace(',', '.'));
81
+ }
82
+ function curateCuota(row) {
83
+ const c = isObj(row) ? row : {};
84
+ const condicion = asStr(c['condicion']);
85
+ return {
86
+ anio: asInt(c['agno']),
87
+ semestre: asInt(c['semestre']),
88
+ cuota: asInt(c['cuota']),
89
+ condicion,
90
+ vencida: condicion?.toUpperCase() === 'VENCIDA',
91
+ fechaVencimiento: fechaVencimientoIso(c['fechaVencimiento']),
92
+ totalPago: montoPesos(c['totalPago']),
93
+ };
94
+ }
95
+ function curatePredio(row) {
96
+ const comuna = asInt(row['comuna']);
97
+ const manzana = asInt(row['manzana']);
98
+ const predio = asInt(row['predio']);
99
+ if (comuna === null || manzana === null || predio === null) {
100
+ // The rol is the predio's identity (and the alertas id): without it the shape moved.
101
+ throw new BienesRaicesError('Scraper roto: un predio de Mi SII (Bienes raíces) no trae comuna, manzana y predio ' +
102
+ 'numéricos; el SII cambió la forma de la respuesta.');
103
+ }
104
+ // An object keyed by an unobserved key; SII's client reads only the values.
105
+ const raw = row['cuotas'];
106
+ const cuotas = (isObj(raw) ? Object.values(raw) : []).map(curateCuota);
107
+ const vencidas = cuotas.filter((c) => c.vencida).length;
108
+ const propietario = row['propietario'];
109
+ return {
110
+ rol: asStr(row['rol']) ?? `${manzana}-${predio}`,
111
+ comuna: { codigo: comuna, nombre: asStr(row['descripcionComuna']) },
112
+ manzana,
113
+ predio,
114
+ direccion: asStr(row['direccion']),
115
+ destino: asStr(row['destino']),
116
+ propietario: typeof propietario === 'boolean' ? propietario : null,
117
+ cuotas,
118
+ cuotasVencidas: vencidas,
119
+ cuotasVigentes: cuotas.length - vencidas,
120
+ };
121
+ }
122
+ /** `metaData.errors`: null / `[]` when fine. Anything else is SII's business error, verbatim. */
123
+ function siiErrors(errors) {
124
+ if (errors === null || errors === undefined)
125
+ return null;
126
+ const list = Array.isArray(errors) ? errors : [errors];
127
+ if (list.length === 0)
128
+ return null;
129
+ return list
130
+ .map((e) => isObj(e) ? (asStr(e['descripcion']) ?? asStr(e['message']) ?? JSON.stringify(e)) : String(e))
131
+ .join('; ');
132
+ }
133
+ /** `POST CViewCarta.cgi opc=34` — the predios the session's RUT pays, with their unpaid cuotas.
134
+ * `data: null` / `{}` is a legitimate "no predios". */
135
+ export async function fetchPredios(session) {
136
+ let body;
137
+ try {
138
+ ({ body } = await session.requestForm(HOSTS.miSiiCarta, {
139
+ // `rnd` is a cache-buster in SII's own call; sent the same way.
140
+ form: { opc: OPC_BIENES_RAICES, VIEW: '1', rnd: String(Math.random()) },
141
+ }));
142
+ }
143
+ catch (e) {
144
+ if (e instanceof NotAuthenticatedError || e instanceof NetworkError)
145
+ throw e;
146
+ throw new BienesRaicesError(`Mi SII (Bienes raíces) no respondió: ${e instanceof Error ? e.message : String(e)}`);
147
+ }
148
+ let json;
149
+ try {
150
+ json = JSON.parse(body);
151
+ }
152
+ catch {
153
+ throw new BienesRaicesError(`Scraper roto: Mi SII (Bienes raíces) no respondió JSON: «${body.slice(0, 80)}».`);
154
+ }
155
+ const env = Envelope.safeParse(json);
156
+ if (!env.success) {
157
+ throw new BienesRaicesError('Scraper roto: la respuesta de Mi SII (Bienes raíces) no tiene la forma observada.');
158
+ }
159
+ const { data, metaData, codigoResp, glosaRespuesta } = env.data;
160
+ if (codigoResp === CODIGO_SIN_SESION) {
161
+ throw new SessionExpiredError(`Mi SII respondió «${glosaRespuesta ?? 'sin glosa'}»: la sesión no es válida. ` +
162
+ 'Vuelve a iniciar sesión (`sii auth login`).');
163
+ }
164
+ if (codigoResp !== undefined && codigoResp !== 0 && data == null) {
165
+ throw new BienesRaicesError(glosaRespuesta ?? `Mi SII respondió codigoResp ${codigoResp}.`);
166
+ }
167
+ const err = siiErrors(metaData?.errors);
168
+ if (err)
169
+ throw new BienesRaicesError(err);
170
+ if (data === undefined && metaData === undefined) {
171
+ throw new BienesRaicesError('Scraper roto: la respuesta de Mi SII (Bienes raíces) no trae `data` ni `metaData`.');
172
+ }
173
+ return Object.values(data ?? {}).map(curatePredio);
174
+ }
175
+ //# sourceMappingURL=bienes-raices-misii.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bienes-raices-misii.js","sourceRoot":"","sources":["../../src/portal/bienes-raices-misii.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,12 @@ export declare function parseSiiNumber(text: string): SiiNumber;
12
12
  /** `pK`: SII's string form. The trailing zeros of the decimals go, but one decimal always
13
13
  * stays ("5.0", "12.5"); the sign stays even on zero. */
14
14
  export declare function formatSiiNumber(x: SiiNumber): string;
15
+ /** `FECHA_MES_ACTUAL`: the client builds YYYYMM from the browser's clock; SII's users are in
16
+ * Chile, so the month is taken in America/Santiago. Also the submit's "has the período ended". */
17
+ export declare function mesActual(hoy: Date): string;
18
+ /** The client screen whose fill this reproduces: the propuesta view (mode PPTA-F29-COMPLETA,
19
+ * `QRb`) or the customizado one a sin movimiento filing opens (`HMb`, #221). */
20
+ export type F29Pantalla = 'propuesta' | 'customizado';
15
21
  /** A rule whose expression did not evaluate to TRUE (SII's own client-side validation). */
16
22
  export interface F29ReglaFallida {
17
23
  readonly nombre: string;
@@ -33,13 +39,16 @@ export interface F29FormFill {
33
39
  * go to FALSE, then every campo with a formula takes its formula's value. Returns what changed
34
40
  * and the rules that fail. `hoy` is the moment of the fill (a few rules read the current
35
41
  * month); pass the `Clock`'s now. The values are taxpayer data: never log them. */
36
- export declare function fillF29Form(layout: Gwt7Node, hoy: Date): F29FormFill;
37
- /** One campo of a filled layout: its código, the value the serializer will send, and whether a
38
- * formula computes it. Taxpayer data: never log the values. */
42
+ export declare function fillF29Form(layout: Gwt7Node, hoy: Date, pantalla?: F29Pantalla): F29FormFill;
43
+ /** One campo of a filled layout: its código, the value the serializer will send, whether a
44
+ * formula computes it, and whether its type is a number. Taxpayer data: never log the values. */
39
45
  export interface F29CampoValor {
40
46
  readonly codigo: string;
41
47
  readonly valor: string;
42
48
  readonly formula: boolean;
49
+ /** ENTERO* / DECIMAL*. Not every código is a monto: 922 and 915, in the recargo block, are
50
+ * STRING (observed in the layout, 2026-10-19). */
51
+ readonly numerico: boolean;
43
52
  }
44
53
  /** Every campo's stored value after `fillF29Form`. The submit's safety rule (ADR-029 amendment)
45
54
  * compares SII's validated borrador against these and the propuesta. */
@@ -1 +1 @@
1
- {"version":3,"file":"f29-rfi-form.d.ts","sourceRoot":"","sources":["../../src/portal/f29-rfi-form.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,QAAQ,EAAa,MAAM,UAAU,CAAC;AAMpD;6DAC6D;AAC7D,UAAU,SAAS;IACjB,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED;qFACqF;AACrF,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAatD;AA0ED;0DAC0D;AAC1D,wBAAgB,eAAe,CAAC,CAAC,EAAE,SAAS,GAAG,MAAM,CAIpD;AAmZD,2FAA2F;AAC3F,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,yCAAyC;IACzC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AACD,MAAM,WAAW,WAAW;IAC1B,2DAA2D;IAC3D,QAAQ,CAAC,OAAO,EAAE,SAAS;QACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;KAC1B,EAAE,CAAC;IACJ,QAAQ,CAAC,cAAc,EAAE,SAAS,eAAe,EAAE,CAAC;CACrD;AAED;;;;oFAIoF;AACpF,wBAAgB,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,GAAG,WAAW,CA4EpE;AAED;gEACgE;AAChE,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAED;yEACyE;AACzE,wBAAgB,eAAe,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,GAAG,aAAa,EAAE,CAO5E;AAED,+FAA+F;AAC/F,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,GAAG,MAAM,CAExF"}
1
+ {"version":3,"file":"f29-rfi-form.d.ts","sourceRoot":"","sources":["../../src/portal/f29-rfi-form.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,QAAQ,EAAa,MAAM,UAAU,CAAC;AAMpD;6DAC6D;AAC7D,UAAU,SAAS;IACjB,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED;qFACqF;AACrF,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAatD;AA0ED;0DAC0D;AAC1D,wBAAgB,eAAe,CAAC,CAAC,EAAE,SAAS,GAAG,MAAM,CAIpD;AAuZD;mGACmG;AACnG,wBAAgB,SAAS,CAAC,GAAG,EAAE,IAAI,GAAG,MAAM,CAQ3C;AAYD;iFACiF;AACjF,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,aAAa,CAAC;AAEtD,2FAA2F;AAC3F,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,yCAAyC;IACzC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AACD,MAAM,WAAW,WAAW;IAC1B,2DAA2D;IAC3D,QAAQ,CAAC,OAAO,EAAE,SAAS;QACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;KAC1B,EAAE,CAAC;IACJ,QAAQ,CAAC,cAAc,EAAE,SAAS,eAAe,EAAE,CAAC;CACrD;AAED;;;;oFAIoF;AACpF,wBAAgB,WAAW,CACzB,MAAM,EAAE,QAAQ,EAChB,GAAG,EAAE,IAAI,EACT,QAAQ,GAAE,WAAyB,GAClC,WAAW,CA4Gb;AAED;kGACkG;AAClG,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B;uDACmD;IACnD,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B;AAKD;yEACyE;AACzE,wBAAgB,eAAe,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,GAAG,aAAa,EAAE,CAQ5E;AAED,+FAA+F;AAC/F,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,GAAG,MAAM,CAExF"}