@ramiidv/arca-padron 0.4.0 → 0.5.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 (139) hide show
  1. package/CHANGELOG.md +52 -0
  2. package/README.md +39 -47
  3. package/dist/{cjs/arca-padron.d.ts → arca-padron.d.ts} +4 -8
  4. package/dist/arca-padron.d.ts.map +1 -0
  5. package/dist/{esm/arca-padron.js → arca-padron.js} +31 -60
  6. package/dist/arca-padron.js.map +1 -0
  7. package/dist/{cjs/base-client.d.ts → base-client.d.ts} +5 -5
  8. package/dist/base-client.d.ts.map +1 -0
  9. package/dist/{esm/base-client.js → base-client.js} +12 -22
  10. package/dist/base-client.js.map +1 -0
  11. package/dist/condicion-iva.d.ts.map +1 -0
  12. package/dist/{esm/condicion-iva.js → condicion-iva.js} +10 -3
  13. package/dist/condicion-iva.js.map +1 -0
  14. package/dist/constants.d.ts.map +1 -0
  15. package/dist/constants.js.map +1 -0
  16. package/dist/errors.d.ts.map +1 -0
  17. package/dist/{esm/errors.js → errors.js} +4 -1
  18. package/dist/errors.js.map +1 -0
  19. package/dist/index.d.ts.map +1 -0
  20. package/dist/index.js.map +1 -0
  21. package/dist/mapping.d.ts +22 -0
  22. package/dist/mapping.d.ts.map +1 -0
  23. package/dist/mapping.js +52 -0
  24. package/dist/mapping.js.map +1 -0
  25. package/dist/{esm/padron-a10.d.ts → padron-a10.d.ts} +6 -3
  26. package/dist/padron-a10.d.ts.map +1 -0
  27. package/dist/{esm/padron-a10.js → padron-a10.js} +22 -14
  28. package/dist/padron-a10.js.map +1 -0
  29. package/dist/{esm/padron-a100.d.ts → padron-a100.d.ts} +6 -0
  30. package/dist/padron-a100.d.ts.map +1 -0
  31. package/dist/{esm/padron-a100.js → padron-a100.js} +22 -20
  32. package/dist/padron-a100.js.map +1 -0
  33. package/dist/{esm/padron-a13.d.ts → padron-a13.d.ts} +5 -3
  34. package/dist/padron-a13.d.ts.map +1 -0
  35. package/dist/padron-a13.js +95 -0
  36. package/dist/padron-a13.js.map +1 -0
  37. package/dist/{esm/padron-a4.d.ts → padron-a4.d.ts} +3 -3
  38. package/dist/padron-a4.d.ts.map +1 -0
  39. package/dist/padron-a4.js +128 -0
  40. package/dist/padron-a4.js.map +1 -0
  41. package/dist/{esm/padron-a5.d.ts → padron-a5.d.ts} +5 -3
  42. package/dist/padron-a5.d.ts.map +1 -0
  43. package/dist/padron-a5.js +214 -0
  44. package/dist/padron-a5.js.map +1 -0
  45. package/dist/{cjs/types.d.ts → types.d.ts} +4 -12
  46. package/dist/types.d.ts.map +1 -0
  47. package/dist/types.js.map +1 -0
  48. package/package.json +21 -32
  49. package/dist/cjs/arca-padron.d.ts.map +0 -1
  50. package/dist/cjs/arca-padron.js +0 -211
  51. package/dist/cjs/arca-padron.js.map +0 -1
  52. package/dist/cjs/base-client.d.ts.map +0 -1
  53. package/dist/cjs/base-client.js +0 -68
  54. package/dist/cjs/base-client.js.map +0 -1
  55. package/dist/cjs/condicion-iva.d.ts.map +0 -1
  56. package/dist/cjs/condicion-iva.js +0 -166
  57. package/dist/cjs/condicion-iva.js.map +0 -1
  58. package/dist/cjs/constants.d.ts.map +0 -1
  59. package/dist/cjs/constants.js +0 -155
  60. package/dist/cjs/constants.js.map +0 -1
  61. package/dist/cjs/errors.d.ts.map +0 -1
  62. package/dist/cjs/errors.js +0 -62
  63. package/dist/cjs/errors.js.map +0 -1
  64. package/dist/cjs/index.d.ts.map +0 -1
  65. package/dist/cjs/index.js +0 -66
  66. package/dist/cjs/index.js.map +0 -1
  67. package/dist/cjs/mapping.d.ts +0 -52
  68. package/dist/cjs/mapping.d.ts.map +0 -1
  69. package/dist/cjs/mapping.js +0 -135
  70. package/dist/cjs/mapping.js.map +0 -1
  71. package/dist/cjs/package.json +0 -1
  72. package/dist/cjs/padron-a10.d.ts +0 -21
  73. package/dist/cjs/padron-a10.d.ts.map +0 -1
  74. package/dist/cjs/padron-a10.js +0 -38
  75. package/dist/cjs/padron-a10.js.map +0 -1
  76. package/dist/cjs/padron-a100.d.ts +0 -20
  77. package/dist/cjs/padron-a100.d.ts.map +0 -1
  78. package/dist/cjs/padron-a100.js +0 -48
  79. package/dist/cjs/padron-a100.js.map +0 -1
  80. package/dist/cjs/padron-a13.d.ts +0 -34
  81. package/dist/cjs/padron-a13.d.ts.map +0 -1
  82. package/dist/cjs/padron-a13.js +0 -100
  83. package/dist/cjs/padron-a13.js.map +0 -1
  84. package/dist/cjs/padron-a4.d.ts +0 -21
  85. package/dist/cjs/padron-a4.d.ts.map +0 -1
  86. package/dist/cjs/padron-a4.js +0 -119
  87. package/dist/cjs/padron-a4.js.map +0 -1
  88. package/dist/cjs/padron-a5.d.ts +0 -37
  89. package/dist/cjs/padron-a5.d.ts.map +0 -1
  90. package/dist/cjs/padron-a5.js +0 -181
  91. package/dist/cjs/padron-a5.js.map +0 -1
  92. package/dist/cjs/types.d.ts.map +0 -1
  93. package/dist/cjs/types.js +0 -3
  94. package/dist/cjs/types.js.map +0 -1
  95. package/dist/esm/arca-padron.d.ts +0 -111
  96. package/dist/esm/arca-padron.d.ts.map +0 -1
  97. package/dist/esm/arca-padron.js.map +0 -1
  98. package/dist/esm/base-client.d.ts +0 -45
  99. package/dist/esm/base-client.d.ts.map +0 -1
  100. package/dist/esm/base-client.js.map +0 -1
  101. package/dist/esm/condicion-iva.d.ts +0 -28
  102. package/dist/esm/condicion-iva.d.ts.map +0 -1
  103. package/dist/esm/condicion-iva.js.map +0 -1
  104. package/dist/esm/constants.d.ts +0 -142
  105. package/dist/esm/constants.d.ts.map +0 -1
  106. package/dist/esm/constants.js.map +0 -1
  107. package/dist/esm/errors.d.ts +0 -50
  108. package/dist/esm/errors.d.ts.map +0 -1
  109. package/dist/esm/errors.js.map +0 -1
  110. package/dist/esm/index.d.ts +0 -24
  111. package/dist/esm/index.d.ts.map +0 -1
  112. package/dist/esm/index.js.map +0 -1
  113. package/dist/esm/mapping.d.ts +0 -52
  114. package/dist/esm/mapping.d.ts.map +0 -1
  115. package/dist/esm/mapping.js +0 -118
  116. package/dist/esm/mapping.js.map +0 -1
  117. package/dist/esm/padron-a10.d.ts.map +0 -1
  118. package/dist/esm/padron-a10.js.map +0 -1
  119. package/dist/esm/padron-a100.d.ts.map +0 -1
  120. package/dist/esm/padron-a100.js.map +0 -1
  121. package/dist/esm/padron-a13.d.ts.map +0 -1
  122. package/dist/esm/padron-a13.js +0 -94
  123. package/dist/esm/padron-a13.js.map +0 -1
  124. package/dist/esm/padron-a4.d.ts.map +0 -1
  125. package/dist/esm/padron-a4.js +0 -114
  126. package/dist/esm/padron-a4.js.map +0 -1
  127. package/dist/esm/padron-a5.d.ts.map +0 -1
  128. package/dist/esm/padron-a5.js +0 -176
  129. package/dist/esm/padron-a5.js.map +0 -1
  130. package/dist/esm/types.d.ts +0 -337
  131. package/dist/esm/types.d.ts.map +0 -1
  132. package/dist/esm/types.js.map +0 -1
  133. /package/dist/{cjs/condicion-iva.d.ts → condicion-iva.d.ts} +0 -0
  134. /package/dist/{cjs/constants.d.ts → constants.d.ts} +0 -0
  135. /package/dist/{esm/constants.js → constants.js} +0 -0
  136. /package/dist/{cjs/errors.d.ts → errors.d.ts} +0 -0
  137. /package/dist/{cjs/index.d.ts → index.d.ts} +0 -0
  138. /package/dist/{esm/index.js → index.js} +0 -0
  139. /package/dist/{esm/types.js → types.js} +0 -0
@@ -1,68 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BasePadronClient = void 0;
4
- const arca_common_1 = require("@ramiidv/arca-common");
5
- const errors_js_1 = require("./errors.js");
6
- const mapping_js_1 = require("./mapping.js");
7
- /**
8
- * Base de los clientes de Padrón.
9
- *
10
- * Los WS de Padrón declaran los parámetros sin namespace
11
- * (`elementFormDefault="unqualified"`) y `soapAction=""`: `afipSoapCall` de
12
- * arca-common prefija el método y deja los parámetros sin namespace. Todas las
13
- * operaciones son consultas: se reintentan ante errores transitorios (nunca
14
- * ante un SOAP Fault). Los Faults de negocio conocidos (CUIT inexistente,
15
- * clave inactiva, token no autorizado...) se lanzan como `ArcaPadronServiceError`.
16
- *
17
- * Las respuestas se parsean con `parseNumbers: false`: todos los valores llegan
18
- * como string tal cual los envía ARCA, y `mapping.ts` convierte explícitamente
19
- * los campos numéricos del WSDL (`optNumber`/`reqNumber`). Así los `xs:string`
20
- * con contenido numérico (`datoAdicional`, `codPostal`, `piso`, los campos del
21
- * A100...) no pierden ceros ni decimales (`"10.50"`, `"1E3"`).
22
- */
23
- class BasePadronClient {
24
- endpoint;
25
- namespace;
26
- soapOptions;
27
- onEvent;
28
- constructor(config) {
29
- this.endpoint = config.endpoint;
30
- this.namespace = config.namespace;
31
- this.soapOptions = config.soapOptions;
32
- this.onEvent = config.onEvent;
33
- }
34
- /** Llama a un método del servicio y traduce los Faults de negocio. */
35
- async call(method, params, opts) {
36
- try {
37
- return await (0, arca_common_1.afipSoapCall)(this.endpoint, this.namespace, method, params, {
38
- ...this.soapOptions,
39
- parseNumbers: false,
40
- kind: 'consulta',
41
- onEvent: this.onEvent,
42
- signal: opts?.signal,
43
- });
44
- }
45
- catch (err) {
46
- throw (0, errors_js_1.toPadronError)(err, method);
47
- }
48
- }
49
- /** Parámetros de autenticación en el orden del WSDL: token, sign, cuitRepresentada. */
50
- authParams(auth) {
51
- return {
52
- token: auth.Token,
53
- sign: auth.Sign,
54
- cuitRepresentada: (0, arca_common_1.validateCuit)(auth.CuitRepresentada),
55
- };
56
- }
57
- /** Health check for this service. */
58
- async dummy(opts) {
59
- const result = await this.call('dummy', {}, opts);
60
- return {
61
- appserver: (0, mapping_js_1.reqString)(result['appserver'], 'dummy.appserver'),
62
- dbserver: (0, mapping_js_1.reqString)(result['dbserver'], 'dummy.dbserver'),
63
- authserver: (0, mapping_js_1.reqString)(result['authserver'], 'dummy.authserver'),
64
- };
65
- }
66
- }
67
- exports.BasePadronClient = BasePadronClient;
68
- //# sourceMappingURL=base-client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"base-client.js","sourceRoot":"","sources":["../../src/base-client.ts"],"names":[],"mappings":";;;AAAA,sDAAkE;AAOlE,2CAA4C;AAC5C,6CAAyC;AAkBzC;;;;;;;;;;;;;;;GAeG;AACH,MAAsB,gBAAgB;IACjB,QAAQ,CAAS;IACjB,SAAS,CAAS;IAClB,WAAW,CAAqB;IAChC,OAAO,CAA8B;IAExD,YAAY,MAA0B;QACpC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAClC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAChC,CAAC;IAED,sEAAsE;IAC5D,KAAK,CAAC,IAAI,CAClB,MAAc,EACd,MAA+B,EAC/B,IAAkB;QAElB,IAAI,CAAC;YACH,OAAO,MAAM,IAAA,0BAAY,EAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE;gBACvE,GAAG,IAAI,CAAC,WAAW;gBACnB,YAAY,EAAE,KAAK;gBACnB,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,MAAM,EAAE,IAAI,EAAE,MAAM;aACrB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAA,yBAAa,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAED,uFAAuF;IAC7E,UAAU,CAAC,IAAY;QAC/B,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,gBAAgB,EAAE,IAAA,0BAAY,EAAC,IAAI,CAAC,gBAAgB,CAAC;SACtD,CAAC;IACJ,CAAC;IAED,qCAAqC;IACrC,KAAK,CAAC,KAAK,CAAC,IAAkB;QAC5B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QAClD,OAAO;YACL,SAAS,EAAE,IAAA,sBAAS,EAAC,MAAM,CAAC,WAAW,CAAC,EAAE,iBAAiB,CAAC;YAC5D,QAAQ,EAAE,IAAA,sBAAS,EAAC,MAAM,CAAC,UAAU,CAAC,EAAE,gBAAgB,CAAC;YACzD,UAAU,EAAE,IAAA,sBAAS,EAAC,MAAM,CAAC,YAAY,CAAC,EAAE,kBAAkB,CAAC;SAChE,CAAC;IACJ,CAAC;CACF;AAlDD,4CAkDC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"condicion-iva.d.ts","sourceRoot":"","sources":["../../src/condicion-iva.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAsG3E;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,SAAS,GAAG,SAAS,GAAG,kBAAkB,CAuE1F"}
@@ -1,166 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.condicionIvaDesdePadron = condicionIvaDesdePadron;
4
- const arca_common_1 = require("@ramiidv/arca-common");
5
- const constants_js_1 = require("./constants.js");
6
- /*
7
- * Fuentes:
8
- * - Manual ws_sr_constancia_inscripcion v4.1: impuesto 20 = MONOTRIBUTO
9
- * (datosMonotributo), impuesto 30 = IVA (datosRegimenGeneral), estadoImpuesto
10
- * "AC" = activo. Categorías de monotributo (anexo 5.3): 61, 99, 100
11
- * "B MONOTRIBUTO SOCIAL ..."; 101 a 104 "D/E 2/3 SOCIOS PROY. SERVICIOS /
12
- * PRODUCTIVO" (proyectos productivos de efectores sociales, Ley 25.865: también
13
- * monotributo social); 98 "B ASOCIADO COOPERATIVA" (monotributo común: no
14
- * es necesariamente efector social).
15
- * - Manual ws_sr_padron_a4 v1.3 §5.3 (TipoEstado): ACTIVO, ACTIVO EN TRAMITE,
16
- * BAJA PROVISORIA, BAJA DEFINITIVA, EXENTO, EXENTO EN TRAMITE, NO APORTANTE.
17
- * La constancia informa el id del estado (`estadoImpuesto`, ej: "AC"); solo
18
- * "AC" figura en los manuales. Las demás abreviaturas que se reconocen son
19
- * las iniciales de TipoEstado (EX, BP, BD, NA = NO APORTANTE). "NO APORTANTE"
20
- * no es "IVA no alcanzado": no se mapea a ninguna condición.
21
- * - IVA exento (32) e IVA no alcanzado (34) no figuran en los manuales: se
22
- * reconocen por id o por la descripción del impuesto.
23
- * - Valores de CondicionIva: FEParamGetCondicionIvaReceptor (WSFEv1, RG 5616).
24
- */
25
- const CATEGORIAS_MONOTRIBUTO_SOCIAL = new Set([61, 99, 100, 101, 102, 103, 104]);
26
- const ABREVIATURAS = {
27
- AC: 'ACTIVO',
28
- EX: 'EXENTO',
29
- BP: 'BAJA PROVISORIA',
30
- BD: 'BAJA DEFINITIVA',
31
- NA: 'NO APORTANTE',
32
- };
33
- /** Normaliza el estado de un impuesto (palabras de TipoEstado o abreviatura SUPA). `''` si no vino. */
34
- function normalizarEstado(estado) {
35
- const e = (estado ?? '').trim().toUpperCase().normalize('NFD').replace(/[̀-ͯ]/g, '').replace(/\s+/g, ' ');
36
- return ABREVIATURAS[e] ?? e;
37
- }
38
- /** Activo: ACTIVO o ACTIVO EN TRAMITE. Sin estado (respuestas anteriores a la v3.6 de la constancia) cuenta como activo. */
39
- function esActivo(estado) {
40
- return estado === '' || estado === 'ACTIVO' || estado === 'ACTIVO EN TRAMITE';
41
- }
42
- function esExento(estado) {
43
- return estado === 'EXENTO' || estado === 'EXENTO EN TRAMITE';
44
- }
45
- function esA5(persona) {
46
- return Array.isArray(persona.impuestos);
47
- }
48
- function impuesto(id, descripcion, estadoRaw) {
49
- const estado = normalizarEstado(estadoRaw);
50
- return { id, descripcion: descripcion ?? '', estado, activo: esActivo(estado) };
51
- }
52
- function impuestosDe(persona) {
53
- if (esA5(persona))
54
- return persona.impuestos.map((i) => impuesto(i.idImpuesto, i.descripcionImpuesto, i.estadoImpuesto));
55
- return (persona.impuesto ?? []).map((i) => impuesto(i.idImpuesto, i.descripcionImpuesto, i.estado));
56
- }
57
- function categoriaMonotributo(persona) {
58
- if (esA5(persona)) {
59
- const c = persona.monotributo?.categoria;
60
- return c ? { id: c.idCategoria, descripcion: c.descripcionCategoria ?? '' } : undefined;
61
- }
62
- const c = (persona.categoria ?? []).find((x) => x.idImpuesto === constants_js_1.ImpuestoId.MONOTRIBUTO && esActivo(normalizarEstado(x.estado)));
63
- return c ? { id: c.idCategoria, descripcion: c.descripcionCategoria ?? '' } : undefined;
64
- }
65
- /** Errores que informó la constancia (régimen general / monotributo), para el motivo. */
66
- function erroresConstancia(persona) {
67
- if (!esA5(persona))
68
- return [];
69
- const out = [];
70
- const add = (nombre, e) => {
71
- if (!e)
72
- return;
73
- const detalle = e.error.length > 0 ? e.error.join('; ') : (e.mensaje ?? 'sin detalle');
74
- out.push(`${nombre}: ${detalle}`);
75
- };
76
- add('régimen general', persona.errorRegimenGeneral);
77
- add('monotributo', persona.errorMonotributo);
78
- return out;
79
- }
80
- /**
81
- * Determina la condición frente al IVA de un contribuyente a partir del padrón
82
- * (constancia de inscripción / A5, o A4), para usarla como `condicionIva` al
83
- * facturarle.
84
- *
85
- * - Monotributo activo (impuesto 20 activo; o, si el impuesto 20 no figura, la
86
- * categoría de monotributo) → MONOTRIBUTISTA, o MONOTRIBUTO_SOCIAL /
87
- * MONOTRIBUTO_INDEPENDIENTE_PROMOVIDO según la categoría. Un impuesto 20 en
88
- * baja no cuenta aunque haya categoría.
89
- * - IVA activo (impuesto 30, ACTIVO o ACTIVO EN TRAMITE) → RESPONSABLE_INSCRIPTO.
90
- * - IVA (30) en estado EXENTO / EXENTO EN TRAMITE, o impuesto 32 → EXENTO.
91
- * - Impuesto 34 → IVA_NO_ALCANZADO.
92
- * - Si no figura ninguno, devuelve `condicionIva: null`: el padrón no alcanza
93
- * para decidir (puede ser consumidor final o sujeto no categorizado según la
94
- * operación). Si ARCA informó errores de la constancia (`errorConstancia`,
95
- * `errorRegimenGeneral`, `errorMonotributo`), el motivo los incluye. No adivina.
96
- *
97
- * Es una función pura: no consulta ARCA.
98
- *
99
- * @example
100
- * ```ts
101
- * const persona = await padron.getConstanciaInscripcion('30712345674');
102
- * const { condicionIva, motivo } = condicionIvaDesdePadron(persona);
103
- * ```
104
- */
105
- function condicionIvaDesdePadron(persona) {
106
- const impuestos = impuestosDe(persona);
107
- const tiene = (pred) => impuestos.find((i) => i.activo && pred(i));
108
- const errores = erroresConstancia(persona);
109
- const notaErrores = errores.length > 0 ? ` ARCA informó errores en la constancia (${errores.join(' | ')}).` : '';
110
- const avisoClave = persona.estadoClave && persona.estadoClave.toUpperCase() !== 'ACTIVO'
111
- ? ` Atención: la CUIT tiene estado ${persona.estadoClave}.`
112
- : '';
113
- const advertencia = avisoClave + notaErrores;
114
- const categoria = categoriaMonotributo(persona);
115
- const impuesto20 = impuestos.find((i) => i.id === constants_js_1.ImpuestoId.MONOTRIBUTO);
116
- const monotributo = impuesto20 ? impuesto20.activo : categoria !== undefined;
117
- if (monotributo) {
118
- const desc = categoria ? ` (categoría ${categoria.id} - ${categoria.descripcion.trim()})` : '';
119
- if (categoria && (CATEGORIAS_MONOTRIBUTO_SOCIAL.has(categoria.id) || /MONOTRIBUTO SOCIAL/i.test(categoria.descripcion))) {
120
- return { condicionIva: arca_common_1.CondicionIva.MONOTRIBUTO_SOCIAL, motivo: `Monotributo social${desc}.${advertencia}` };
121
- }
122
- if (categoria && /PROMOVID/i.test(categoria.descripcion)) {
123
- return {
124
- condicionIva: arca_common_1.CondicionIva.MONOTRIBUTO_INDEPENDIENTE_PROMOVIDO,
125
- motivo: `Monotributo trabajador independiente promovido${desc}.${advertencia}`,
126
- };
127
- }
128
- return { condicionIva: arca_common_1.CondicionIva.MONOTRIBUTISTA, motivo: `Inscripto en monotributo (impuesto 20)${desc}.${advertencia}` };
129
- }
130
- if (tiene((i) => i.id === constants_js_1.ImpuestoId.IVA_RESPONSABLE_INSCRIPTO)) {
131
- return { condicionIva: arca_common_1.CondicionIva.RESPONSABLE_INSCRIPTO, motivo: `Inscripto en IVA (impuesto 30).${advertencia}` };
132
- }
133
- const ivaExento = impuestos.find((i) => i.id === constants_js_1.ImpuestoId.IVA_RESPONSABLE_INSCRIPTO && esExento(i.estado));
134
- if (ivaExento) {
135
- return {
136
- condicionIva: arca_common_1.CondicionIva.EXENTO,
137
- motivo: `IVA (impuesto 30) en estado ${ivaExento.estado}.${advertencia}`,
138
- };
139
- }
140
- if (tiene((i) => i.id === constants_js_1.ImpuestoId.IVA_EXENTO || /IVA\s+EXENTO/i.test(i.descripcion))) {
141
- return { condicionIva: arca_common_1.CondicionIva.EXENTO, motivo: `IVA exento (impuesto 32).${advertencia}` };
142
- }
143
- if (tiene((i) => i.id === constants_js_1.ImpuestoId.IVA_NO_ALCANZADO || /IVA.*NO\s+ALCANZADO/i.test(i.descripcion))) {
144
- return { condicionIva: arca_common_1.CondicionIva.IVA_NO_ALCANZADO, motivo: `IVA no alcanzado (impuesto 34).${advertencia}` };
145
- }
146
- if (esA5(persona) && persona.errorConstancia && impuestos.length === 0) {
147
- return {
148
- condicionIva: null,
149
- motivo: `ARCA no emitió la constancia: ${persona.errorConstancia.error.join('; ')}.${advertencia}`,
150
- };
151
- }
152
- if (errores.length > 0) {
153
- return {
154
- condicionIva: null,
155
- motivo: `No se puede determinar: ARCA no informó datos de ${errores.map((e) => e.split(':')[0]).join(' ni de ')} ` +
156
- `(${errores.join(' | ')}).${avisoClave}`,
157
- };
158
- }
159
- return {
160
- condicionIva: null,
161
- motivo: 'No figura inscripto en IVA ni en monotributo: el padrón no alcanza para determinar la condición ' +
162
- '(puede ser consumidor final o sujeto no categorizado según la operación).' +
163
- advertencia,
164
- };
165
- }
166
- //# sourceMappingURL=condicion-iva.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"condicion-iva.js","sourceRoot":"","sources":["../../src/condicion-iva.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkB,MAAM,sBAAsB,CAAC;AAG/D,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAExE;;;;;GAKG;AACH,eAAO,MAAM,aAAa,gBAAU,CAAC;AACrC,oEAAoE;AACpE,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC;AAMpC,eAAO,MAAM,SAAS;;;;;IAEpB,yFAAyF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BjF,CAAC;AAMX,yBAAyB;AACzB,oBAAY,aAAa;IACvB,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,IAAI,SAAS;CACd;AAED,uBAAuB;AACvB,oBAAY,WAAW;IACrB,MAAM,WAAW;IACjB,QAAQ,aAAa;CACtB;AAED;;;;;;GAMG;AACH,oBAAY,UAAU;IACpB,qEAAqE;IACrE,YAAY,KAAK;IACjB,kCAAkC;IAClC,YAAY,KAAK;IACjB,mBAAmB;IACnB,WAAW,KAAK;IAChB,6CAA6C;IAC7C,oBAAoB,KAAK;IACzB,WAAW;IACX,yBAAyB,KAAK;IAC9B,yHAAyH;IACzH,UAAU,KAAK;IACf,+EAA+E;IAC/E,gBAAgB,KAAK;IACrB,iEAAiE;IACjE,gBAAgB,KAAK;IACrB,kGAAkG;IAClG,iBAAiB,MAAM;IACvB,kDAAkD;IAClD,SAAS,MAAM;IACf,kDAAkD;IAClD,SAAS,MAAM;CAChB;AAED,kDAAkD;AAClD,oBAAY,WAAW;IACrB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,QAAQ,aAAa;CACtB;AAED;;;;;;GAMG;AACH,oBAAY,cAAc;IACxB,SAAS,qBAAqB;IAC9B,cAAc,wBAAwB;IACtC,cAAc,wBAAwB;IACtC,UAAU,mCAAmC;IAC7C,qBAAqB,+BAA+B;IACpD,8BAA8B,oCAAoC;IAClE,aAAa,uBAAuB;IACpC,qBAAqB,+BAA+B;IACpD,wBAAwB,kCAAkC;IAC1D,4BAA4B,sCAAsC;IAClE,UAAU,oBAAoB;IAC9B,aAAa,uBAAuB;IACpC,eAAe,yBAAyB;IACxC,6BAA6B,uCAAuC;IACpE,oBAAoB,gCAAgC;IACpD,iBAAiB,6BAA6B;IAC9C,sBAAsB,kCAAkC;IACxD,IAAI,WAAW;IACf,KAAK,sBAAsB;IAC3B,SAAS,0BAA0B;IACnC,yDAAyD;IACzD,oBAAoB,gCAAgC;IACpD,kDAAkD;IAClD,OAAO,mBAAmB;IAC1B,oCAAoC;IACpC,YAAY,sBAAsB;IAClC,yDAAyD;IACzD,eAAe,2BAA2B;IAC1C,kDAAkD;IAClD,YAAY,sBAAsB;IAClC,wEAAwE;IACxE,eAAe,2BAA2B;IAC1C,6DAA6D;IAC7D,eAAe,2BAA2B;IAC1C,sEAAsE;IACtE,qBAAqB,iCAAiC;CACvD"}
@@ -1,155 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CollectionName = exports.EstadoClave = exports.ImpuestoId = exports.TipoPersona = exports.TipoDomicilio = exports.ENDPOINTS = exports.TipoDocumento = exports.CondicionIva = exports.DocTipo = exports.Provincia = void 0;
4
- const arca_common_1 = require("@ramiidv/arca-common");
5
- // Re-export shared enums from common
6
- var arca_common_2 = require("@ramiidv/arca-common");
7
- Object.defineProperty(exports, "Provincia", { enumerable: true, get: function () { return arca_common_2.Provincia; } });
8
- Object.defineProperty(exports, "DocTipo", { enumerable: true, get: function () { return arca_common_2.DocTipo; } });
9
- Object.defineProperty(exports, "CondicionIva", { enumerable: true, get: function () { return arca_common_2.CondicionIva; } });
10
- /**
11
- * @deprecated Es `DocTipo` de arca-common: los códigos numéricos de tipo de
12
- * documento de WSFEv1 (80 = CUIT, 96 = DNI...). No sirve para interpretar el
13
- * campo `tipoDocumento` del padrón, que es un string ("DNI", "LC", "LE"...;
14
- * ver la colección A100 `SUPA.TIPO_DOCUMENTO`). Usá `DocTipo`.
15
- */
16
- exports.TipoDocumento = arca_common_1.DocTipo;
17
- // ---------------------------------------------------------------------------
18
- // Endpoints
19
- // ---------------------------------------------------------------------------
20
- exports.ENDPOINTS = {
21
- wsaa: arca_common_1.WSAA_ENDPOINTS,
22
- /** Constancia de inscripción (ex Padrón A5: ws_sr_padron_a5 está deprecado por ARCA). */
23
- a5: {
24
- testing: 'https://awshomo.afip.gov.ar/sr-padron/webservices/personaServiceA5',
25
- production: 'https://aws.afip.gov.ar/sr-padron/webservices/personaServiceA5',
26
- namespace: 'http://a5.soap.ws.server.puc.sr/',
27
- serviceId: 'ws_sr_constancia_inscripcion',
28
- },
29
- a13: {
30
- testing: 'https://awshomo.afip.gov.ar/sr-padron/webservices/personaServiceA13',
31
- production: 'https://aws.afip.gov.ar/sr-padron/webservices/personaServiceA13',
32
- namespace: 'http://a13.soap.ws.server.puc.sr/',
33
- serviceId: 'ws_sr_padron_a13',
34
- },
35
- a4: {
36
- testing: 'https://awshomo.afip.gov.ar/sr-padron/webservices/personaServiceA4',
37
- production: 'https://aws.afip.gov.ar/sr-padron/webservices/personaServiceA4',
38
- namespace: 'http://a4.soap.ws.server.puc.sr/',
39
- serviceId: 'ws_sr_padron_a4',
40
- },
41
- a10: {
42
- testing: 'https://awshomo.afip.gov.ar/sr-padron/webservices/personaServiceA10',
43
- production: 'https://aws.afip.gov.ar/sr-padron/webservices/personaServiceA10',
44
- namespace: 'http://a10.soap.ws.server.puc.sr/',
45
- serviceId: 'ws_sr_padron_a10',
46
- },
47
- a100: {
48
- testing: 'https://awshomo.afip.gov.ar/sr-parametros/webservices/parameterServiceA100',
49
- production: 'https://aws.afip.gov.ar/sr-parametros/webservices/parameterServiceA100',
50
- namespace: 'http://a100.soap.ws.server.pucParam.sr/',
51
- serviceId: 'ws_sr_padron_a100',
52
- },
53
- };
54
- // ---------------------------------------------------------------------------
55
- // Enums (domain-specific)
56
- // ---------------------------------------------------------------------------
57
- /** Tipos de domicilio */
58
- var TipoDomicilio;
59
- (function (TipoDomicilio) {
60
- TipoDomicilio["FISCAL"] = "FISCAL";
61
- TipoDomicilio["LEGAL"] = "LEGAL";
62
- TipoDomicilio["REAL"] = "REAL";
63
- })(TipoDomicilio || (exports.TipoDomicilio = TipoDomicilio = {}));
64
- /** Tipos de persona */
65
- var TipoPersona;
66
- (function (TipoPersona) {
67
- TipoPersona["FISICA"] = "FISICA";
68
- TipoPersona["JURIDICA"] = "JURIDICA";
69
- })(TipoPersona || (exports.TipoPersona = TipoPersona = {}));
70
- /**
71
- * IDs de impuestos de SUPA.
72
- *
73
- * Respaldados por los manuales de ARCA: 11, 20, 21, 30, 180, 301, 308
74
- * (ejemplos y validaciones de los manuales de constancia de inscripción v4.1 y
75
- * A4 v1.3). Los marcados "sin respaldo" no figuran en esos manuales.
76
- */
77
- var ImpuestoId;
78
- (function (ImpuestoId) {
79
- /** Ganancias sociedades. Sin respaldo en los manuales del padrón. */
80
- ImpuestoId[ImpuestoId["GANANCIAS_PJ"] = 10] = "GANANCIAS_PJ";
81
- /** Ganancias personas físicas. */
82
- ImpuestoId[ImpuestoId["GANANCIAS_PH"] = 11] = "GANANCIAS_PH";
83
- /** Monotributo. */
84
- ImpuestoId[ImpuestoId["MONOTRIBUTO"] = 20] = "MONOTRIBUTO";
85
- /** Monotributo autónomo (manual A4 v1.3). */
86
- ImpuestoId[ImpuestoId["MONOTRIBUTO_AUTONOMO"] = 21] = "MONOTRIBUTO_AUTONOMO";
87
- /** IVA. */
88
- ImpuestoId[ImpuestoId["IVA_RESPONSABLE_INSCRIPTO"] = 30] = "IVA_RESPONSABLE_INSCRIPTO";
89
- /** IVA exento. Sin respaldo en los manuales del padrón: el A4 informa la exención como impuesto 30 con estado EXENTO. */
90
- ImpuestoId[ImpuestoId["IVA_EXENTO"] = 32] = "IVA_EXENTO";
91
- /** @deprecated Sin respaldo en los manuales del padrón y sin uso en el SDK. */
92
- ImpuestoId[ImpuestoId["IVA_NO_INSCRIPTO"] = 33] = "IVA_NO_INSCRIPTO";
93
- /** IVA no alcanzado. Sin respaldo en los manuales del padrón. */
94
- ImpuestoId[ImpuestoId["IVA_NO_ALCANZADO"] = 34] = "IVA_NO_ALCANZADO";
95
- /** Bienes personales (manual de constancia v4.1: "180 – Bs Ps"). Antes figuraba, mal, como 31. */
96
- ImpuestoId[ImpuestoId["BIENES_PERSONALES"] = 180] = "BIENES_PERSONALES";
97
- /** Empleador - aportes de la seguridad social. */
98
- ImpuestoId[ImpuestoId["EMPLEADOR"] = 301] = "EMPLEADOR";
99
- /** Aportes de la seguridad social - autónomos. */
100
- ImpuestoId[ImpuestoId["AUTONOMOS"] = 308] = "AUTONOMOS";
101
- })(ImpuestoId || (exports.ImpuestoId = ImpuestoId = {}));
102
- /** Estado de la clave fiscal del contribuyente */
103
- var EstadoClave;
104
- (function (EstadoClave) {
105
- EstadoClave["ACTIVO"] = "ACTIVO";
106
- EstadoClave["INACTIVO"] = "INACTIVO";
107
- EstadoClave["LIMITADO"] = "LIMITADO";
108
- })(EstadoClave || (exports.EstadoClave = EstadoClave = {}));
109
- /**
110
- * Nombres de colecciones de ws_sr_padron_a100 (manual v2.1, anexo 5.1).
111
- *
112
- * La fila de "Categorías de Monotributo según F.184" está cortada en el manual
113
- * (solo se lee el atributo `COD_CATEGORIA_MONOTRIBUTO`), así que no se incluye:
114
- * pasá el nombre como string si lo conocés.
115
- */
116
- var CollectionName;
117
- (function (CollectionName) {
118
- CollectionName["PROVINCIA"] = "SUPA.E_PROVINCIA";
119
- CollectionName["TIPO_DOCUMENTO"] = "SUPA.TIPO_DOCUMENTO";
120
- CollectionName["TIPO_DOMICILIO"] = "SUPA.TIPO_DOMICILIO";
121
- CollectionName["TIPO_CLAVE"] = "SUPA.TIPO_CLAVE_IDENTIFICACION";
122
- CollectionName["TIPO_EMPRESA_JURIDICA"] = "SUPA.TIPO_EMPRESA_JURIDICA";
123
- CollectionName["TIPO_EMPRESA_JURIDICA_SUBGRUPO"] = "SUPA.TIPO_EMPRESA_JURI_SUBGRUPO";
124
- CollectionName["TIPO_RELACION"] = "SUPA.TIPO_RELACION";
125
- CollectionName["TIPO_SUBTIPO_RELACION"] = "SUPA.TIPO_SUBTIPO_RELACION";
126
- CollectionName["TIPO_COMPONENTE_SOCIEDAD"] = "SUPA.TIPO_COMPONENTE_SOCIEDAD";
127
- CollectionName["TIPO_RELACION_COMPONENTE_SOC"] = "SUPA.TIPO_RELACION_COMPONENTE_SOC";
128
- CollectionName["TIPO_EMAIL"] = "SUPA.TIPO_EMAIL";
129
- CollectionName["TIPO_TELEFONO"] = "SUPA.TIPO_TELEFONO";
130
- CollectionName["TIPO_RESIDENCIA"] = "SUPA.TIPO_RESIDENCIA";
131
- CollectionName["TIPO_DATO_ADICIONAL_DOMICILIO"] = "SUPA.TIPO_DATO_ADICIONAL_DOMICILIO";
132
- CollectionName["ORGANISMO_INFORMANTE"] = "SUPA.E_ORGANISMO_INFORMANTE";
133
- CollectionName["ORGANISMO_CONTROL"] = "SUPA.E_ORGANISMO_CONTROL";
134
- CollectionName["PROVINCIA_SOCIEDAD_ORG"] = "SUPA.A_PROVINCIA_SOCIEDAD_ORG";
135
- CollectionName["SEXO"] = "E_SEXO";
136
- CollectionName["CALLE"] = "PUC_PARAM.T_CALLE";
137
- CollectionName["LOCALIDAD"] = "PUC_PARAM.T_LOCALIDAD";
138
- /** Tipología de autónomos de monotributo según F.184. */
139
- CollectionName["AUTONOMO_MONOTRIBUTO"] = "SUPA.E_AUTONOMO_MONOTRIBUTO";
140
- /** Nómina de regímenes vigentes y no vigentes. */
141
- CollectionName["REGIMEN"] = "SUPA.E_REGIMEN";
142
- /** Clasificaciones de regímenes. */
143
- CollectionName["TIPO_REGIMEN"] = "SUPA.TIPO_REGIMEN";
144
- /** Atributos y características de los contribuyentes. */
145
- CollectionName["CARACTERIZACION"] = "SUPA.E_CARACTERIZACION";
146
- /** Tipos de documento válidos para el sistema. */
147
- CollectionName["TIPO_ARCHIVO"] = "SUPA.TIPO_ARCHIVO";
148
- /** Relaciones entre actividades y rubros de todos los nomencladores. */
149
- CollectionName["ACTIVIDAD_RUBRO"] = "SUPA.A_ACTIVIDAD_RUBRO";
150
- /** Rubros de los nomencladores de actividades económicas. */
151
- CollectionName["RUBRO_ACTIVIDAD"] = "SUPA.E_RUBRO_ACTIVIDAD";
152
- /** Actividades ocupacionales no incluidas en el nomenclador F.150. */
153
- CollectionName["ACTIVIDAD_OCUPACIONAL"] = "SUPA.E_ACTIVIDAD_OCUPACIONAL";
154
- })(CollectionName || (exports.CollectionName = CollectionName = {}));
155
- //# sourceMappingURL=constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":";;;AAAA,sDAA+D;AAE/D,qCAAqC;AACrC,oDAAwE;AAA/D,wGAAA,SAAS,OAAA;AAAE,sGAAA,OAAO,OAAA;AAAE,2GAAA,YAAY,OAAA;AAEzC;;;;;GAKG;AACU,QAAA,aAAa,GAAG,qBAAO,CAAC;AAIrC,8EAA8E;AAC9E,YAAY;AACZ,8EAA8E;AAEjE,QAAA,SAAS,GAAG;IACvB,IAAI,EAAE,4BAAc;IACpB,yFAAyF;IACzF,EAAE,EAAE;QACF,OAAO,EAAE,oEAAoE;QAC7E,UAAU,EAAE,gEAAgE;QAC5E,SAAS,EAAE,kCAAkC;QAC7C,SAAS,EAAE,8BAA8B;KAC1C;IACD,GAAG,EAAE;QACH,OAAO,EAAE,qEAAqE;QAC9E,UAAU,EAAE,iEAAiE;QAC7E,SAAS,EAAE,mCAAmC;QAC9C,SAAS,EAAE,kBAAkB;KAC9B;IACD,EAAE,EAAE;QACF,OAAO,EAAE,oEAAoE;QAC7E,UAAU,EAAE,gEAAgE;QAC5E,SAAS,EAAE,kCAAkC;QAC7C,SAAS,EAAE,iBAAiB;KAC7B;IACD,GAAG,EAAE;QACH,OAAO,EAAE,qEAAqE;QAC9E,UAAU,EAAE,iEAAiE;QAC7E,SAAS,EAAE,mCAAmC;QAC9C,SAAS,EAAE,kBAAkB;KAC9B;IACD,IAAI,EAAE;QACJ,OAAO,EAAE,4EAA4E;QACrF,UAAU,EAAE,wEAAwE;QACpF,SAAS,EAAE,yCAAyC;QACpD,SAAS,EAAE,mBAAmB;KAC/B;CACO,CAAC;AAEX,8EAA8E;AAC9E,0BAA0B;AAC1B,8EAA8E;AAE9E,yBAAyB;AACzB,IAAY,aAIX;AAJD,WAAY,aAAa;IACvB,kCAAiB,CAAA;IACjB,gCAAe,CAAA;IACf,8BAAa,CAAA;AACf,CAAC,EAJW,aAAa,6BAAb,aAAa,QAIxB;AAED,uBAAuB;AACvB,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,gCAAiB,CAAA;IACjB,oCAAqB,CAAA;AACvB,CAAC,EAHW,WAAW,2BAAX,WAAW,QAGtB;AAED;;;;;;GAMG;AACH,IAAY,UAuBX;AAvBD,WAAY,UAAU;IACpB,qEAAqE;IACrE,4DAAiB,CAAA;IACjB,kCAAkC;IAClC,4DAAiB,CAAA;IACjB,mBAAmB;IACnB,0DAAgB,CAAA;IAChB,6CAA6C;IAC7C,4EAAyB,CAAA;IACzB,WAAW;IACX,sFAA8B,CAAA;IAC9B,yHAAyH;IACzH,wDAAe,CAAA;IACf,+EAA+E;IAC/E,oEAAqB,CAAA;IACrB,iEAAiE;IACjE,oEAAqB,CAAA;IACrB,kGAAkG;IAClG,uEAAuB,CAAA;IACvB,kDAAkD;IAClD,uDAAe,CAAA;IACf,kDAAkD;IAClD,uDAAe,CAAA;AACjB,CAAC,EAvBW,UAAU,0BAAV,UAAU,QAuBrB;AAED,kDAAkD;AAClD,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,gCAAiB,CAAA;IACjB,oCAAqB,CAAA;IACrB,oCAAqB,CAAA;AACvB,CAAC,EAJW,WAAW,2BAAX,WAAW,QAItB;AAED;;;;;;GAMG;AACH,IAAY,cAqCX;AArCD,WAAY,cAAc;IACxB,gDAA8B,CAAA;IAC9B,wDAAsC,CAAA;IACtC,wDAAsC,CAAA;IACtC,+DAA6C,CAAA;IAC7C,sEAAoD,CAAA;IACpD,oFAAkE,CAAA;IAClE,sDAAoC,CAAA;IACpC,sEAAoD,CAAA;IACpD,4EAA0D,CAAA;IAC1D,oFAAkE,CAAA;IAClE,gDAA8B,CAAA;IAC9B,sDAAoC,CAAA;IACpC,0DAAwC,CAAA;IACxC,sFAAoE,CAAA;IACpE,sEAAoD,CAAA;IACpD,gEAA8C,CAAA;IAC9C,0EAAwD,CAAA;IACxD,iCAAe,CAAA;IACf,6CAA2B,CAAA;IAC3B,qDAAmC,CAAA;IACnC,yDAAyD;IACzD,sEAAoD,CAAA;IACpD,kDAAkD;IAClD,4CAA0B,CAAA;IAC1B,oCAAoC;IACpC,oDAAkC,CAAA;IAClC,yDAAyD;IACzD,4DAA0C,CAAA;IAC1C,kDAAkD;IAClD,oDAAkC,CAAA;IAClC,wEAAwE;IACxE,4DAA0C,CAAA;IAC1C,6DAA6D;IAC7D,4DAA0C,CAAA;IAC1C,sEAAsE;IACtE,wEAAsD,CAAA;AACxD,CAAC,EArCW,cAAc,8BAAd,cAAc,QAqCzB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAiB,MAAM,sBAAsB,CAAC;AAClF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE/D;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,SAAS;IAC5C,gBAAyB,IAAI,EAAE,MAAM,CAAuB;gBAEhD,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;CAI3D;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,iBAAiB,GAAG,aAAa,GAAG,UAAU,GAAG,aAAa,GAAG,eAAe,GAAG,MAAM,CAAC;AAEtG;;;;;GAKG;AACH,qBAAa,sBAAuB,SAAQ,gBAAgB;IAC1D,gBAAyB,IAAI,EAAE,MAAM,CAA+B;IACpE,SAAgB,MAAM,EAAE,iBAAiB,CAAC;gBAGxC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,kBAAkB,EAAE,EAC5B,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,iBAAiB,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;CAM5D;AASD,+FAA+F;AAC/F,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CAEhF;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAOnE"}
@@ -1,62 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ArcaPadronServiceError = exports.ArcaPadronError = void 0;
4
- exports.padronErrorReason = padronErrorReason;
5
- exports.toPadronError = toPadronError;
6
- const arca_common_1 = require("@ramiidv/arca-common");
7
- /**
8
- * Error propio del SDK de Padrón que no es de negocio ni de transporte: la
9
- * respuesta de ARCA no tiene un dato obligatorio (ej: `personaReturn` sin
10
- * `persona`) o tiene una forma inesperada.
11
- */
12
- class ArcaPadronError extends arca_common_1.ArcaError {
13
- static code = 'ARCA_PADRON_ERROR';
14
- constructor(message, options) {
15
- super(message, options);
16
- this.name = 'ArcaPadronError';
17
- }
18
- }
19
- exports.ArcaPadronError = ArcaPadronError;
20
- /**
21
- * Error de negocio de Padrón (CUIT inexistente, clave inactiva, token no
22
- * autorizado, etc.). ARCA los informa como SOAP Fault: el SDK los convierte en
23
- * este error con un `reason` tipado. El `ArcaSoapError` original queda en
24
- * `cause` y el texto de ARCA en `errors[0].msg`. No se reintentan.
25
- */
26
- class ArcaPadronServiceError extends arca_common_1.ArcaServiceError {
27
- static code = 'ARCA_PADRON_SERVICE_ERROR';
28
- reason;
29
- constructor(message, errors, options) {
30
- super(message, errors, options?.cause !== undefined ? { cause: options.cause } : undefined);
31
- this.name = 'ArcaPadronServiceError';
32
- this.reason = options?.reason ?? 'otro';
33
- }
34
- }
35
- exports.ArcaPadronServiceError = ArcaPadronServiceError;
36
- const FAULT_REASONS = [
37
- [/es inexistente|no existe persona/i, 'inexistente'],
38
- [/se encuentra inactiva/i, 'inactiva'],
39
- [/id de la persona no es v[aá]lido/i, 'id_invalido'],
40
- [/no autorizado|falta token|debe enviar la cuit representada|no le permite actuar en representaci[oó]n/i, 'no_autorizado'],
41
- ];
42
- /** Motivo de un mensaje de error de negocio de Padrón, o `undefined` si no es uno conocido. */
43
- function padronErrorReason(message) {
44
- return FAULT_REASONS.find(([re]) => re.test(message))?.[1];
45
- }
46
- /**
47
- * Convierte un SOAP Fault de negocio conocido en `ArcaPadronServiceError`.
48
- * Cualquier otro error (transporte, timeout, Fault desconocido) se devuelve
49
- * sin cambios.
50
- */
51
- function toPadronError(err, method) {
52
- if (!(err instanceof arca_common_1.ArcaSoapError) || err.faultString === undefined)
53
- return err;
54
- const reason = padronErrorReason(err.faultString);
55
- if (!reason)
56
- return err;
57
- const detail = { code: 0, msg: err.faultString };
58
- if (err.faultCode)
59
- detail.rawCode = err.faultCode;
60
- return new ArcaPadronServiceError(`${method}: ${err.faultString}`, [detail], { reason, cause: err });
61
- }
62
- //# sourceMappingURL=errors.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":";;;AA6DA,8CAEC;AAOD,sCAOC;AA7ED,sDAAkF;AAGlF;;;;GAIG;AACH,MAAa,eAAgB,SAAQ,uBAAS;IAC5C,MAAM,CAAmB,IAAI,GAAW,mBAAmB,CAAC;IAE5D,YAAY,OAAe,EAAE,OAA6B;QACxD,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;;AANH,0CAOC;AAiBD;;;;;GAKG;AACH,MAAa,sBAAuB,SAAQ,8BAAgB;IAC1D,MAAM,CAAmB,IAAI,GAAW,2BAA2B,CAAC;IACpD,MAAM,CAAoB;IAE1C,YACE,OAAe,EACf,MAA4B,EAC5B,OAAyD;QAEzD,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC5F,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;QACrC,IAAI,CAAC,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,MAAM,CAAC;IAC1C,CAAC;;AAZH,wDAaC;AAED,MAAM,aAAa,GAAuC;IACxD,CAAC,mCAAmC,EAAE,aAAa,CAAC;IACpD,CAAC,wBAAwB,EAAE,UAAU,CAAC;IACtC,CAAC,mCAAmC,EAAE,aAAa,CAAC;IACpD,CAAC,uGAAuG,EAAE,eAAe,CAAC;CAC3H,CAAC;AAEF,+FAA+F;AAC/F,SAAgB,iBAAiB,CAAC,OAAe;IAC/C,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED;;;;GAIG;AACH,SAAgB,aAAa,CAAC,GAAY,EAAE,MAAc;IACxD,IAAI,CAAC,CAAC,GAAG,YAAY,2BAAa,CAAC,IAAI,GAAG,CAAC,WAAW,KAAK,SAAS;QAAE,OAAO,GAAG,CAAC;IACjF,MAAM,MAAM,GAAG,iBAAiB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAClD,IAAI,CAAC,MAAM;QAAE,OAAO,GAAG,CAAC;IACxB,MAAM,MAAM,GAAuB,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;IACrE,IAAI,GAAG,CAAC,SAAS;QAAE,MAAM,CAAC,OAAO,GAAG,GAAG,CAAC,SAAS,CAAC;IAClD,OAAO,IAAI,sBAAsB,CAAC,GAAG,MAAM,KAAK,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;AACvG,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,IAAI,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAGtF,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAG7D,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAG9E,OAAO,EACL,SAAS,EACT,aAAa,EACb,sBAAsB,EACtB,aAAa,EACb,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAG9F,OAAO,EAAE,gBAAgB,EAAE,KAAK,kBAAkB,EAAE,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGrG,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,KAAK,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC7F,OAAO,EAAE,cAAc,EAAE,KAAK,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,KAAK,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,KAAK,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,KAAK,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAGjF,YAAY,EACV,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,WAAW,EACX,MAAM,EACN,eAAe,EACf,YAAY,EACZ,SAAS,EACT,eAAe,EACf,SAAS,EACT,aAAa,EACb,WAAW,EACX,UAAU,EACV,WAAW,EACX,SAAS,EACT,UAAU,EACV,WAAW,EACX,OAAO,EACP,UAAU,EACV,UAAU,EACV,cAAc,EACd,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,UAAU,EACV,YAAY,EACZ,SAAS,EACT,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,oBAAoB,EACpB,UAAU,EACV,WAAW,EACX,WAAW,EACX,SAAS,EACT,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,kBAAkB,GACnB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,SAAS,EACT,SAAS,EACT,OAAO,EACP,aAAa,EACb,YAAY,EACZ,aAAa,EACb,WAAW,EACX,UAAU,EACV,WAAW,EACX,cAAc,GACf,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEvE;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,iCAA2B,CAAC"}
package/dist/cjs/index.js DELETED
@@ -1,66 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.checkServiceErrors = exports.buildXml = exports.parseXml = exports.ensureArray = exports.CollectionName = exports.EstadoClave = exports.ImpuestoId = exports.TipoPersona = exports.TipoDomicilio = exports.CondicionIva = exports.TipoDocumento = exports.DocTipo = exports.Provincia = exports.ENDPOINTS = exports.PadronA100Client = exports.PadronA10Client = exports.PadronA13Client = exports.PadronA4Client = exports.MAX_PERSONA_LIST = exports.PadronA5Client = exports.WsaaClient = exports.BasePadronClient = exports.ArcaPadronServiceError = exports.ArcaPadronError = exports.ArcaValidationError = exports.ArcaServiceError = exports.ArcaSoapError = exports.ArcaTicketVigenteError = exports.ArcaAuthError = exports.ArcaError = exports.FileTicketStorage = exports.MemoryTicketStorage = exports.condicionIvaDesdePadron = exports.ArcaPadron = void 0;
4
- const arca_common_1 = require("@ramiidv/arca-common");
5
- // Main class
6
- var arca_padron_js_1 = require("./arca-padron.js");
7
- Object.defineProperty(exports, "ArcaPadron", { enumerable: true, get: function () { return arca_padron_js_1.ArcaPadron; } });
8
- // Helpers puros
9
- var condicion_iva_js_1 = require("./condicion-iva.js");
10
- Object.defineProperty(exports, "condicionIvaDesdePadron", { enumerable: true, get: function () { return condicion_iva_js_1.condicionIvaDesdePadron; } });
11
- // Persistencia de tickets (desde arca-common)
12
- var arca_common_2 = require("@ramiidv/arca-common");
13
- Object.defineProperty(exports, "MemoryTicketStorage", { enumerable: true, get: function () { return arca_common_2.MemoryTicketStorage; } });
14
- Object.defineProperty(exports, "FileTicketStorage", { enumerable: true, get: function () { return arca_common_2.FileTicketStorage; } });
15
- // Error classes
16
- var arca_common_3 = require("@ramiidv/arca-common");
17
- Object.defineProperty(exports, "ArcaError", { enumerable: true, get: function () { return arca_common_3.ArcaError; } });
18
- Object.defineProperty(exports, "ArcaAuthError", { enumerable: true, get: function () { return arca_common_3.ArcaAuthError; } });
19
- Object.defineProperty(exports, "ArcaTicketVigenteError", { enumerable: true, get: function () { return arca_common_3.ArcaTicketVigenteError; } });
20
- Object.defineProperty(exports, "ArcaSoapError", { enumerable: true, get: function () { return arca_common_3.ArcaSoapError; } });
21
- Object.defineProperty(exports, "ArcaServiceError", { enumerable: true, get: function () { return arca_common_3.ArcaServiceError; } });
22
- Object.defineProperty(exports, "ArcaValidationError", { enumerable: true, get: function () { return arca_common_3.ArcaValidationError; } });
23
- var errors_js_1 = require("./errors.js");
24
- Object.defineProperty(exports, "ArcaPadronError", { enumerable: true, get: function () { return errors_js_1.ArcaPadronError; } });
25
- Object.defineProperty(exports, "ArcaPadronServiceError", { enumerable: true, get: function () { return errors_js_1.ArcaPadronServiceError; } });
26
- // Base class
27
- var base_client_js_1 = require("./base-client.js");
28
- Object.defineProperty(exports, "BasePadronClient", { enumerable: true, get: function () { return base_client_js_1.BasePadronClient; } });
29
- // Low-level clients
30
- var arca_common_4 = require("@ramiidv/arca-common");
31
- Object.defineProperty(exports, "WsaaClient", { enumerable: true, get: function () { return arca_common_4.WsaaClient; } });
32
- var padron_a5_js_1 = require("./padron-a5.js");
33
- Object.defineProperty(exports, "PadronA5Client", { enumerable: true, get: function () { return padron_a5_js_1.PadronA5Client; } });
34
- Object.defineProperty(exports, "MAX_PERSONA_LIST", { enumerable: true, get: function () { return padron_a5_js_1.MAX_PERSONA_LIST; } });
35
- var padron_a4_js_1 = require("./padron-a4.js");
36
- Object.defineProperty(exports, "PadronA4Client", { enumerable: true, get: function () { return padron_a4_js_1.PadronA4Client; } });
37
- var padron_a13_js_1 = require("./padron-a13.js");
38
- Object.defineProperty(exports, "PadronA13Client", { enumerable: true, get: function () { return padron_a13_js_1.PadronA13Client; } });
39
- var padron_a10_js_1 = require("./padron-a10.js");
40
- Object.defineProperty(exports, "PadronA10Client", { enumerable: true, get: function () { return padron_a10_js_1.PadronA10Client; } });
41
- var padron_a100_js_1 = require("./padron-a100.js");
42
- Object.defineProperty(exports, "PadronA100Client", { enumerable: true, get: function () { return padron_a100_js_1.PadronA100Client; } });
43
- // Constants and enums
44
- var constants_js_1 = require("./constants.js");
45
- Object.defineProperty(exports, "ENDPOINTS", { enumerable: true, get: function () { return constants_js_1.ENDPOINTS; } });
46
- Object.defineProperty(exports, "Provincia", { enumerable: true, get: function () { return constants_js_1.Provincia; } });
47
- Object.defineProperty(exports, "DocTipo", { enumerable: true, get: function () { return constants_js_1.DocTipo; } });
48
- Object.defineProperty(exports, "TipoDocumento", { enumerable: true, get: function () { return constants_js_1.TipoDocumento; } });
49
- Object.defineProperty(exports, "CondicionIva", { enumerable: true, get: function () { return constants_js_1.CondicionIva; } });
50
- Object.defineProperty(exports, "TipoDomicilio", { enumerable: true, get: function () { return constants_js_1.TipoDomicilio; } });
51
- Object.defineProperty(exports, "TipoPersona", { enumerable: true, get: function () { return constants_js_1.TipoPersona; } });
52
- Object.defineProperty(exports, "ImpuestoId", { enumerable: true, get: function () { return constants_js_1.ImpuestoId; } });
53
- Object.defineProperty(exports, "EstadoClave", { enumerable: true, get: function () { return constants_js_1.EstadoClave; } });
54
- Object.defineProperty(exports, "CollectionName", { enumerable: true, get: function () { return constants_js_1.CollectionName; } });
55
- // Utilities (from common)
56
- var arca_common_5 = require("@ramiidv/arca-common");
57
- Object.defineProperty(exports, "ensureArray", { enumerable: true, get: function () { return arca_common_5.ensureArray; } });
58
- Object.defineProperty(exports, "parseXml", { enumerable: true, get: function () { return arca_common_5.parseXml; } });
59
- Object.defineProperty(exports, "buildXml", { enumerable: true, get: function () { return arca_common_5.buildXml; } });
60
- /**
61
- * @deprecated Padrón no devuelve errores de negocio en el body (los informa
62
- * como SOAP Fault, que el SDK ya convierte en `ArcaPadronServiceError`). Si lo
63
- * necesitás para otro servicio, importalo de `@ramiidv/arca-common`.
64
- */
65
- exports.checkServiceErrors = arca_common_1.checkServiceErrors;
66
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,sDAAsF;AAEtF,aAAa;AACb,mDAA8C;AAArC,4GAAA,UAAU,OAAA;AAEnB,gBAAgB;AAChB,uDAA6D;AAApD,2HAAA,uBAAuB,OAAA;AAEhC,8CAA8C;AAC9C,oDAA8E;AAArE,kHAAA,mBAAmB,OAAA;AAAE,gHAAA,iBAAiB,OAAA;AAE/C,gBAAgB;AAChB,oDAO8B;AAN5B,wGAAA,SAAS,OAAA;AACT,4GAAA,aAAa,OAAA;AACb,qHAAA,sBAAsB,OAAA;AACtB,4GAAA,aAAa,OAAA;AACb,+GAAA,gBAAgB,OAAA;AAChB,kHAAA,mBAAmB,OAAA;AAErB,yCAA8F;AAArF,4GAAA,eAAe,OAAA;AAAE,mHAAA,sBAAsB,OAAA;AAEhD,aAAa;AACb,mDAAqG;AAA5F,kHAAA,gBAAgB,OAAA;AAEzB,oBAAoB;AACpB,oDAAkD;AAAzC,yGAAA,UAAU,OAAA;AAEnB,+CAA6F;AAApF,8GAAA,cAAc,OAAA;AAAE,gHAAA,gBAAgB,OAAA;AACzC,+CAA2E;AAAlE,8GAAA,cAAc,OAAA;AACvB,iDAA8E;AAArE,gHAAA,eAAe,OAAA;AACxB,iDAA8E;AAArE,gHAAA,eAAe,OAAA;AACxB,mDAAiF;AAAxE,kHAAA,gBAAgB,OAAA;AAgDzB,sBAAsB;AACtB,+CAWwB;AAVtB,yGAAA,SAAS,OAAA;AACT,yGAAA,SAAS,OAAA;AACT,uGAAA,OAAO,OAAA;AACP,6GAAA,aAAa,OAAA;AACb,4GAAA,YAAY,OAAA;AACZ,6GAAA,aAAa,OAAA;AACb,2GAAA,WAAW,OAAA;AACX,0GAAA,UAAU,OAAA;AACV,2GAAA,WAAW,OAAA;AACX,8GAAA,cAAc,OAAA;AAGhB,0BAA0B;AAC1B,oDAAuE;AAA9D,0GAAA,WAAW,OAAA;AAAE,uGAAA,QAAQ,OAAA;AAAE,uGAAA,QAAQ,OAAA;AAExC;;;;GAIG;AACU,QAAA,kBAAkB,GAAG,gCAAwB,CAAC"}
@@ -1,52 +0,0 @@
1
- import type { DependenciaA4, DomicilioA10 } from './types.js';
2
- /** Registro de una respuesta SOAP parseada. */
3
- export type SoapRecord = Record<string, unknown>;
4
- /**
5
- * `true` si el valor no vino o es un elemento `xsi:nil="true"` (el parser deja
6
- * el atributo como `@_nil` o `@_xsi:nil`). Los WSDL de Padrón declaran
7
- * `nillable` los elementos repetidos.
8
- */
9
- export declare function isNil(v: unknown): boolean;
10
- /** Convierte a string, o `undefined` si el valor no vino. Para campos `xs:string`/`xs:long`/`xs:dateTime`. */
11
- export declare const optString: (v: unknown) => string | undefined;
12
- /** Convierte a número, o `undefined` si el valor no vino. Para campos `xs:int`/`xs:double`. */
13
- export declare const optNumber: (v: unknown) => number | undefined;
14
- /** Normaliza un elemento complejo que puede venir solo, repetido, ausente o nil. */
15
- export declare const records: (v: unknown) => SoapRecord[];
16
- /** Elemento complejo opcional (`undefined` si no vino, vino vacío o es nil). */
17
- export declare const record: (v: unknown) => SoapRecord | undefined;
18
- /** Lista de valores simples repetidos (ej: `claveInactivaAsociada`, `error`), sin los nil. */
19
- export declare const strings: (v: unknown) => string[];
20
- /** String obligatorio: lanza `ArcaPadronError` si no vino. */
21
- export declare function reqString(v: unknown, field: string): string;
22
- /** Número obligatorio: lanza `ArcaPadronError` si no vino. */
23
- export declare function reqNumber(v: unknown, field: string): number;
24
- /** `tipoPersona` obligatorio (`FISICA` | `JURIDICA`). */
25
- export declare function tipoPersona(v: unknown, field?: string): 'FISICA' | 'JURIDICA';
26
- /**
27
- * Elemento `persona` de `personaReturn` (A4, A10, A13). Si falta, lanza
28
- * `ArcaPadronError`: nunca se inventa una persona vacía.
29
- */
30
- export declare function requirePersona(result: SoapRecord, method: string): SoapRecord;
31
- /** `dependencia` de A4/A10: `{descripcionDependencia, idDependencia}`. */
32
- export declare function mapDependencia(v: unknown): DependenciaA4 | undefined;
33
- /** `domicilio` de A4/A10/constancia (todos `xs:string` salvo `idProvincia`). */
34
- export declare function mapDomicilio(d: SoapRecord): DomicilioA10;
35
- /** Campos comunes de `persona` en A4 y A10. */
36
- export declare function mapPersonaComun(raw: SoapRecord): {
37
- idPersona: string;
38
- tipoPersona: "FISICA" | "JURIDICA";
39
- tipoClave: string | undefined;
40
- estadoClave: string | undefined;
41
- nombre: string | undefined;
42
- apellido: string | undefined;
43
- razonSocial: string | undefined;
44
- numeroDocumento: string | undefined;
45
- tipoDocumento: string | undefined;
46
- };
47
- /** Asigna `dependencia` y `claveInactivaAsociada` solo si vinieron. */
48
- export declare function asignarDependenciaYClaves(target: {
49
- dependencia?: DependenciaA4;
50
- claveInactivaAsociada?: string[];
51
- }, raw: SoapRecord): void;
52
- //# sourceMappingURL=mapping.d.ts.map