@ramiidv/arca-padron 0.1.0 → 0.3.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 (152) hide show
  1. package/CHANGELOG.md +51 -0
  2. package/README.md +106 -21
  3. package/dist/cjs/arca-padron.d.ts +98 -0
  4. package/dist/cjs/arca-padron.d.ts.map +1 -0
  5. package/dist/cjs/arca-padron.js +177 -0
  6. package/dist/cjs/arca-padron.js.map +1 -0
  7. package/dist/{base-client.d.ts → cjs/base-client.d.ts} +12 -2
  8. package/dist/cjs/base-client.d.ts.map +1 -0
  9. package/dist/cjs/base-client.js +52 -0
  10. package/dist/cjs/base-client.js.map +1 -0
  11. package/dist/cjs/condicion-iva.d.ts +24 -0
  12. package/dist/cjs/condicion-iva.d.ts.map +1 -0
  13. package/dist/cjs/condicion-iva.js +119 -0
  14. package/dist/cjs/condicion-iva.js.map +1 -0
  15. package/dist/{constants.d.ts → cjs/constants.d.ts} +21 -3
  16. package/dist/{constants.d.ts.map → cjs/constants.d.ts.map} +1 -1
  17. package/dist/cjs/constants.js +113 -0
  18. package/dist/cjs/constants.js.map +1 -0
  19. package/dist/{errors.d.ts → cjs/errors.d.ts} +3 -1
  20. package/dist/cjs/errors.d.ts.map +1 -0
  21. package/dist/cjs/errors.js +36 -0
  22. package/dist/cjs/errors.js.map +1 -0
  23. package/dist/cjs/index.d.ts +16 -0
  24. package/dist/cjs/index.d.ts.map +1 -0
  25. package/dist/cjs/index.js +56 -0
  26. package/dist/cjs/index.js.map +1 -0
  27. package/dist/cjs/mapping.d.ts +9 -0
  28. package/dist/cjs/mapping.d.ts.map +1 -0
  29. package/dist/cjs/mapping.js +14 -0
  30. package/dist/cjs/mapping.js.map +1 -0
  31. package/dist/cjs/package.json +1 -0
  32. package/dist/{padron-a10.d.ts → cjs/padron-a10.d.ts} +3 -1
  33. package/dist/cjs/padron-a10.d.ts.map +1 -0
  34. package/dist/cjs/padron-a10.js +73 -0
  35. package/dist/cjs/padron-a10.js.map +1 -0
  36. package/dist/{padron-a100.d.ts → cjs/padron-a100.d.ts} +2 -1
  37. package/dist/cjs/padron-a100.d.ts.map +1 -0
  38. package/dist/cjs/padron-a100.js +38 -0
  39. package/dist/cjs/padron-a100.js.map +1 -0
  40. package/dist/cjs/padron-a13.d.ts +24 -0
  41. package/dist/cjs/padron-a13.d.ts.map +1 -0
  42. package/dist/cjs/padron-a13.js +80 -0
  43. package/dist/cjs/padron-a13.js.map +1 -0
  44. package/dist/{padron-a4.d.ts → cjs/padron-a4.d.ts} +3 -1
  45. package/dist/cjs/padron-a4.d.ts.map +1 -0
  46. package/dist/cjs/padron-a4.js +173 -0
  47. package/dist/cjs/padron-a4.js.map +1 -0
  48. package/dist/cjs/padron-a5.d.ts +24 -0
  49. package/dist/cjs/padron-a5.d.ts.map +1 -0
  50. package/dist/cjs/padron-a5.js +156 -0
  51. package/dist/cjs/padron-a5.js.map +1 -0
  52. package/dist/cjs/soap-client.d.ts.map +1 -0
  53. package/dist/cjs/soap-client.js +13 -0
  54. package/dist/cjs/soap-client.js.map +1 -0
  55. package/dist/cjs/types.d.ts +346 -0
  56. package/dist/cjs/types.d.ts.map +1 -0
  57. package/dist/cjs/types.js +3 -0
  58. package/dist/cjs/types.js.map +1 -0
  59. package/dist/cjs/wsaa.d.ts.map +1 -0
  60. package/dist/cjs/wsaa.js +6 -0
  61. package/dist/cjs/wsaa.js.map +1 -0
  62. package/dist/esm/arca-padron.d.ts +98 -0
  63. package/dist/esm/arca-padron.d.ts.map +1 -0
  64. package/dist/esm/arca-padron.js +173 -0
  65. package/dist/esm/arca-padron.js.map +1 -0
  66. package/dist/esm/base-client.d.ts +36 -0
  67. package/dist/esm/base-client.d.ts.map +1 -0
  68. package/dist/esm/base-client.js +48 -0
  69. package/dist/esm/base-client.js.map +1 -0
  70. package/dist/esm/condicion-iva.d.ts +24 -0
  71. package/dist/esm/condicion-iva.d.ts.map +1 -0
  72. package/dist/esm/condicion-iva.js +116 -0
  73. package/dist/esm/condicion-iva.js.map +1 -0
  74. package/dist/esm/constants.d.ts +97 -0
  75. package/dist/esm/constants.d.ts.map +1 -0
  76. package/dist/{constants.js → esm/constants.js} +21 -3
  77. package/dist/esm/constants.js.map +1 -0
  78. package/dist/esm/errors.d.ts +22 -0
  79. package/dist/esm/errors.d.ts.map +1 -0
  80. package/dist/{errors.js → esm/errors.js} +3 -1
  81. package/dist/esm/errors.js.map +1 -0
  82. package/dist/esm/index.d.ts +16 -0
  83. package/dist/esm/index.d.ts.map +1 -0
  84. package/dist/esm/index.js +22 -0
  85. package/dist/esm/index.js.map +1 -0
  86. package/dist/esm/mapping.d.ts +9 -0
  87. package/dist/esm/mapping.d.ts.map +1 -0
  88. package/dist/esm/mapping.js +8 -0
  89. package/dist/esm/mapping.js.map +1 -0
  90. package/dist/esm/padron-a10.d.ts +18 -0
  91. package/dist/esm/padron-a10.d.ts.map +1 -0
  92. package/dist/{padron-a10.js → esm/padron-a10.js} +4 -9
  93. package/dist/esm/padron-a10.js.map +1 -0
  94. package/dist/esm/padron-a100.d.ts +16 -0
  95. package/dist/esm/padron-a100.d.ts.map +1 -0
  96. package/dist/{padron-a100.js → esm/padron-a100.js} +3 -9
  97. package/dist/esm/padron-a100.js.map +1 -0
  98. package/dist/esm/padron-a13.d.ts +24 -0
  99. package/dist/esm/padron-a13.d.ts.map +1 -0
  100. package/dist/esm/padron-a13.js +75 -0
  101. package/dist/esm/padron-a13.js.map +1 -0
  102. package/dist/esm/padron-a4.d.ts +18 -0
  103. package/dist/esm/padron-a4.d.ts.map +1 -0
  104. package/dist/{padron-a4.js → esm/padron-a4.js} +4 -9
  105. package/dist/esm/padron-a4.js.map +1 -0
  106. package/dist/esm/padron-a5.d.ts +24 -0
  107. package/dist/esm/padron-a5.d.ts.map +1 -0
  108. package/dist/esm/padron-a5.js +151 -0
  109. package/dist/esm/padron-a5.js.map +1 -0
  110. package/dist/esm/soap-client.d.ts +2 -0
  111. package/dist/esm/soap-client.d.ts.map +1 -0
  112. package/dist/esm/soap-client.js.map +1 -0
  113. package/dist/esm/types.d.ts +346 -0
  114. package/dist/esm/types.d.ts.map +1 -0
  115. package/dist/esm/types.js.map +1 -0
  116. package/dist/esm/wsaa.d.ts +3 -0
  117. package/dist/esm/wsaa.d.ts.map +1 -0
  118. package/dist/esm/wsaa.js.map +1 -0
  119. package/llms.txt +37 -15
  120. package/package.json +26 -18
  121. package/dist/arca-padron.d.ts +0 -70
  122. package/dist/arca-padron.d.ts.map +0 -1
  123. package/dist/arca-padron.js +0 -129
  124. package/dist/arca-padron.js.map +0 -1
  125. package/dist/base-client.d.ts.map +0 -1
  126. package/dist/base-client.js +0 -27
  127. package/dist/base-client.js.map +0 -1
  128. package/dist/constants.js.map +0 -1
  129. package/dist/errors.d.ts.map +0 -1
  130. package/dist/errors.js.map +0 -1
  131. package/dist/index.d.ts +0 -12
  132. package/dist/index.d.ts.map +0 -1
  133. package/dist/index.js +0 -16
  134. package/dist/index.js.map +0 -1
  135. package/dist/padron-a10.d.ts.map +0 -1
  136. package/dist/padron-a10.js.map +0 -1
  137. package/dist/padron-a100.d.ts.map +0 -1
  138. package/dist/padron-a100.js.map +0 -1
  139. package/dist/padron-a4.d.ts.map +0 -1
  140. package/dist/padron-a4.js.map +0 -1
  141. package/dist/soap-client.d.ts.map +0 -1
  142. package/dist/soap-client.js.map +0 -1
  143. package/dist/types.d.ts +0 -172
  144. package/dist/types.d.ts.map +0 -1
  145. package/dist/types.js.map +0 -1
  146. package/dist/wsaa.d.ts.map +0 -1
  147. package/dist/wsaa.js.map +0 -1
  148. /package/dist/{soap-client.d.ts → cjs/soap-client.d.ts} +0 -0
  149. /package/dist/{wsaa.d.ts → cjs/wsaa.d.ts} +0 -0
  150. /package/dist/{soap-client.js → esm/soap-client.js} +0 -0
  151. /package/dist/{types.js → esm/types.js} +0 -0
  152. /package/dist/{wsaa.js → esm/wsaa.js} +0 -0
@@ -0,0 +1,151 @@
1
+ import { ensureArray } from './soap-client.js';
2
+ import { optNumber as num, optString as str, records as list } from './mapping.js';
3
+ import { BasePadronClient } from './base-client.js';
4
+ /**
5
+ * Client for ws_sr_constancia_inscripcion (ex ws_sr_padron_a5, deprecado por
6
+ * ARCA) - Constancia de inscripción: datos generales, domicilio fiscal,
7
+ * impuestos del régimen general y monotributo.
8
+ *
9
+ * Usa `getPersona_v2`, el método vigente según el manual del servicio (v4.1).
10
+ */
11
+ export class PadronA5Client extends BasePadronClient {
12
+ /**
13
+ * Constancia de inscripción de un contribuyente.
14
+ * @param auth - Authentication object with Token, Sign, and CuitRepresentada
15
+ * @param cuit - CUIT of the taxpayer to query
16
+ * @param opts - Opciones por llamada (signal)
17
+ */
18
+ async getPersona(auth, cuit, opts) {
19
+ const result = await this.call('getPersona_v2', { ...this.authParams(auth), idPersona: cuit }, opts);
20
+ return mapPersonaA5(result);
21
+ }
22
+ }
23
+ function mapDomicilio(d) {
24
+ if (!d)
25
+ return undefined;
26
+ return {
27
+ direccion: str(d['direccion']),
28
+ localidad: str(d['localidad']),
29
+ codPostal: str(d['codPostal']),
30
+ idProvincia: num(d['idProvincia']),
31
+ descripcionProvincia: str(d['descripcionProvincia']),
32
+ tipoDomicilio: str(d['tipoDomicilio']),
33
+ datoAdicional: str(d['datoAdicional']),
34
+ tipoDatoAdicional: str(d['tipoDatoAdicional']),
35
+ };
36
+ }
37
+ function mapImpuesto(i) {
38
+ return {
39
+ idImpuesto: Number(i['idImpuesto'] ?? 0),
40
+ descripcionImpuesto: str(i['descripcionImpuesto']),
41
+ estadoImpuesto: str(i['estadoImpuesto']),
42
+ motivo: str(i['motivo']),
43
+ periodo: num(i['periodo']),
44
+ };
45
+ }
46
+ function mapActividad(a) {
47
+ return {
48
+ idActividad: String(a['idActividad'] ?? ''),
49
+ descripcionActividad: str(a['descripcionActividad']),
50
+ nomenclador: num(a['nomenclador']),
51
+ orden: num(a['orden']),
52
+ periodo: num(a['periodo']),
53
+ };
54
+ }
55
+ function mapCategoria(c) {
56
+ if (!c)
57
+ return undefined;
58
+ return {
59
+ idCategoria: Number(c['idCategoria'] ?? 0),
60
+ descripcionCategoria: str(c['descripcionCategoria']),
61
+ idImpuesto: num(c['idImpuesto']),
62
+ periodo: num(c['periodo']),
63
+ };
64
+ }
65
+ function mapErrorRegimen(e) {
66
+ if (!e)
67
+ return undefined;
68
+ return { error: ensureArray(e['error']).map(String), mensaje: str(e['mensaje']) };
69
+ }
70
+ /** Mapea `personaReturn` de `getPersona_v2`. */
71
+ export function mapPersonaA5(raw) {
72
+ const g = (raw['datosGenerales'] ?? {});
73
+ const rg = raw['datosRegimenGeneral'];
74
+ const mt = raw['datosMonotributo'];
75
+ const ec = raw['errorConstancia'];
76
+ const persona = {
77
+ idPersona: String(g['idPersona'] ?? ec?.['idPersona'] ?? ''),
78
+ tipoPersona: str(g['tipoPersona']),
79
+ tipoClave: str(g['tipoClave']),
80
+ estadoClave: str(g['estadoClave']),
81
+ nombre: str(g['nombre'] ?? ec?.['nombre']),
82
+ apellido: str(g['apellido'] ?? ec?.['apellido']),
83
+ razonSocial: str(g['razonSocial']),
84
+ mesCierre: num(g['mesCierre']),
85
+ fechaContratoSocial: str(g['fechaContratoSocial']),
86
+ fechaFallecimiento: str(g['fechaFallecimiento']),
87
+ esSucesion: str(g['esSucesion']),
88
+ domicilioFiscal: mapDomicilio(g['domicilioFiscal']),
89
+ impuestos: [],
90
+ };
91
+ const dep = g['dependencia'];
92
+ if (dep) {
93
+ persona.dependencia = {
94
+ idDependencia: num(dep['idDependencia']),
95
+ descripcionDependencia: str(dep['descripcionDependencia']),
96
+ direccion: str(dep['direccion']),
97
+ localidad: str(dep['localidad']),
98
+ codPostal: str(dep['codPostal']),
99
+ idProvincia: num(dep['idProvincia']),
100
+ descripcionProvincia: str(dep['descripcionProvincia']),
101
+ };
102
+ }
103
+ if (g['caracterizacion'] !== undefined) {
104
+ persona.caracterizacion = list(g['caracterizacion']).map((c) => ({
105
+ idCaracterizacion: Number(c['idCaracterizacion'] ?? 0),
106
+ descripcionCaracterizacion: str(c['descripcionCaracterizacion']),
107
+ periodo: num(c['periodo']),
108
+ fechaSolicitud: num(c['fechaSolicitud']),
109
+ }));
110
+ }
111
+ if (rg) {
112
+ persona.regimenGeneral = {
113
+ impuestos: list(rg['impuesto']).map(mapImpuesto),
114
+ actividades: list(rg['actividad']).map(mapActividad),
115
+ regimenes: list(rg['regimen']).map((r) => ({
116
+ idRegimen: Number(r['idRegimen'] ?? 0),
117
+ descripcionRegimen: str(r['descripcionRegimen']),
118
+ idImpuesto: num(r['idImpuesto']),
119
+ periodo: num(r['periodo']),
120
+ tipoRegimen: str(r['tipoRegimen']),
121
+ })),
122
+ categoriaAutonomo: mapCategoria(rg['categoriaAutonomo']),
123
+ };
124
+ }
125
+ if (mt) {
126
+ const actividadMonotributista = mt['actividadMonotributista'];
127
+ persona.monotributo = {
128
+ impuestos: list(mt['impuesto']).map(mapImpuesto),
129
+ actividades: list(mt['actividad']).map(mapActividad),
130
+ actividadMonotributista: actividadMonotributista ? mapActividad(actividadMonotributista) : undefined,
131
+ categoria: mapCategoria(mt['categoriaMonotributo']),
132
+ };
133
+ }
134
+ persona.impuestos = [...(persona.regimenGeneral?.impuestos ?? []), ...(persona.monotributo?.impuestos ?? [])];
135
+ if (ec) {
136
+ persona.errorConstancia = {
137
+ error: ensureArray(ec['error']).map(String),
138
+ idPersona: str(ec['idPersona']),
139
+ nombre: str(ec['nombre']),
140
+ apellido: str(ec['apellido']),
141
+ };
142
+ }
143
+ persona.errorRegimenGeneral = mapErrorRegimen(raw['errorRegimenGeneral']);
144
+ persona.errorMonotributo = mapErrorRegimen(raw['errorMonotributo']);
145
+ if (!persona.errorRegimenGeneral)
146
+ delete persona.errorRegimenGeneral;
147
+ if (!persona.errorMonotributo)
148
+ delete persona.errorMonotributo;
149
+ return persona;
150
+ }
151
+ //# sourceMappingURL=padron-a5.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"padron-a5.js","sourceRoot":"","sources":["../../src/padron-a5.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { parseXml, buildXml, ensureArray, getNestedValue, soapCall, afipSoapCall, checkServiceErrors, } from '@ramiidv/arca-common';
2
+ //# sourceMappingURL=soap-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"soap-client.d.ts","sourceRoot":"","sources":["../../src/soap-client.ts"],"names":[],"mappings":"AACA,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,cAAc,EACd,QAAQ,EACR,YAAY,EACZ,kBAAkB,GACnB,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"soap-client.js","sourceRoot":"","sources":["../../src/soap-client.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,cAAc,EACd,QAAQ,EACR,YAAY,EACZ,kBAAkB,GACnB,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,346 @@
1
+ export type { AccessTicket, ArcaEvent, ServerStatus, SoapCallOptions, TicketStorage, CallOptions, } from '@ramiidv/arca-common';
2
+ import type { ArcaEvent, CondicionIva, TicketStorage, WsaaClient } from '@ramiidv/arca-common';
3
+ /** @deprecated Use ArcaEvent from @ramiidv/arca-common instead. */
4
+ export type ArcaPadronEvent = ArcaEvent;
5
+ export interface ArcaPadronConfig {
6
+ /** PEM-encoded X.509 certificate */
7
+ cert: string;
8
+ /** PEM-encoded RSA private key */
9
+ key: string;
10
+ /** CUIT of the entity represented (e.g. "20123456789") */
11
+ cuit: string;
12
+ /** Use production endpoints (default: false = testing / homologacion) */
13
+ production?: boolean;
14
+ /** Request timeout in ms (default: 30000) */
15
+ timeout?: number;
16
+ /** Number of retries on 5xx / network errors (default: 1) */
17
+ retries?: number;
18
+ /** Base delay in ms for exponential backoff (default: 1000) */
19
+ retryDelayMs?: number;
20
+ /** Optional event callback */
21
+ onEvent?: (event: ArcaEvent) => void;
22
+ /**
23
+ * Persistencia de Tickets de Acceso entre reinicios. Sin storage, al
24
+ * reiniciar el proceso WSAA rechaza el login hasta que venza el ticket
25
+ * anterior (`ArcaTicketVigenteError`).
26
+ */
27
+ ticketStorage?: TicketStorage;
28
+ /** Diferencia `relojARCA - relojLocal` en ms (default: 0). */
29
+ clockOffsetMs?: number;
30
+ /** Ajustar el desfase de reloj si WSAA rechaza el login (default: true). */
31
+ autoClockSkew?: boolean;
32
+ /** Signal global: cancela todas las llamadas de esta instancia. */
33
+ signal?: AbortSignal;
34
+ /**
35
+ * WsaaClient compartido (ej: `arca.wsaa` de arca-facturacion, mismo
36
+ * certificado). Si se provee, se ignoran `cert`, `key`, `ticketStorage`,
37
+ * `clockOffsetMs` y `autoClockSkew`.
38
+ */
39
+ wsaa?: WsaaClient;
40
+ }
41
+ export interface WsAuth {
42
+ Token: string;
43
+ Sign: string;
44
+ CuitRepresentada: string;
45
+ }
46
+ export interface DependenciaA4 {
47
+ idDependencia: number;
48
+ descripcionDependencia: string;
49
+ }
50
+ export interface DomicilioA4 {
51
+ direccion: string;
52
+ localidad?: string;
53
+ codPostal?: string;
54
+ idProvincia?: number;
55
+ descripcionProvincia?: string;
56
+ tipoDomicilio: string;
57
+ estadoDomicilio?: string;
58
+ datoAdicional?: string;
59
+ tipoDatoAdicional?: string;
60
+ orden?: number;
61
+ }
62
+ export interface ImpuestoA4 {
63
+ idImpuesto: number;
64
+ descripcionImpuesto?: string;
65
+ estado: string;
66
+ periodo?: number;
67
+ diaPeriodo?: number;
68
+ ffInscripcion?: string;
69
+ }
70
+ export interface ActividadA4 {
71
+ idActividad: string;
72
+ descripcionActividad?: string;
73
+ nomenclador?: number;
74
+ orden?: number;
75
+ periodo?: number;
76
+ }
77
+ export interface RegimenA4 {
78
+ idRegimen: number;
79
+ descripcionRegimen?: string;
80
+ estado?: string;
81
+ periodo?: number;
82
+ diaPeriodo?: number;
83
+ tipoRegimen?: string;
84
+ idImpuesto?: number;
85
+ }
86
+ export interface RelacionA4 {
87
+ idPersona: string;
88
+ idPersonaAsociada?: string;
89
+ tipoRelacion?: string;
90
+ subtipoRelacion?: string;
91
+ ffRelacion?: string;
92
+ ffVencimiento?: string;
93
+ }
94
+ export interface CategoriaA4 {
95
+ idCategoria: number;
96
+ descripcionCategoria?: string;
97
+ idImpuesto?: number;
98
+ estado?: string;
99
+ periodo?: number;
100
+ }
101
+ export interface EmailA4 {
102
+ direccion: string;
103
+ tipoEmail?: string;
104
+ estado?: string;
105
+ }
106
+ export interface TelefonoA4 {
107
+ numero: string;
108
+ tipoTelefono?: string;
109
+ tipoLinea?: string;
110
+ }
111
+ export interface PersonaA4 {
112
+ idPersona: string;
113
+ tipoPersona: 'FISICA' | 'JURIDICA';
114
+ tipoClave?: string;
115
+ estadoClave?: string;
116
+ apellido?: string;
117
+ nombre?: string;
118
+ razonSocial?: string;
119
+ numeroDocumento?: string;
120
+ tipoDocumento?: string;
121
+ fechaNacimiento?: string;
122
+ sexo?: string;
123
+ numeroInscripcion?: string;
124
+ formaJuridica?: string;
125
+ mesCierre?: number;
126
+ fechaInscripcion?: string;
127
+ fechaContratoSocial?: string;
128
+ fechaFallecimiento?: string;
129
+ fechaJubilado?: string;
130
+ fechaVencimientoMigracion?: string;
131
+ localidadInscripcion?: string;
132
+ provinciaInscripcion?: string;
133
+ organismoInscripcion?: string;
134
+ organismoOriginante?: string;
135
+ tipoOrganismoOriginante?: string;
136
+ tipoResidencia?: string;
137
+ porcentajeCapitalNacional?: number;
138
+ cantidadSociosEmpresaMono?: number;
139
+ leyJubilacion?: number;
140
+ dependencia?: DependenciaA4;
141
+ claveInactivaAsociada?: string[];
142
+ domicilio?: DomicilioA4[];
143
+ impuesto?: ImpuestoA4[];
144
+ actividad?: ActividadA4[];
145
+ regimen?: RegimenA4[];
146
+ relacion?: RelacionA4[];
147
+ categoria?: CategoriaA4[];
148
+ email?: EmailA4[];
149
+ telefono?: TelefonoA4[];
150
+ }
151
+ export interface DependenciaA10 {
152
+ idDependencia: number;
153
+ descripcionDependencia: string;
154
+ }
155
+ export interface DomicilioA10 {
156
+ direccion?: string;
157
+ localidad?: string;
158
+ codPostal?: string;
159
+ idProvincia?: number;
160
+ descripcionProvincia?: string;
161
+ tipoDomicilio?: string;
162
+ datoAdicional?: string;
163
+ tipoDatoAdicional?: string;
164
+ }
165
+ export interface PersonaA10 {
166
+ idPersona: string;
167
+ tipoPersona: 'FISICA' | 'JURIDICA';
168
+ tipoClave?: string;
169
+ estadoClave?: string;
170
+ nombre?: string;
171
+ apellido?: string;
172
+ razonSocial?: string;
173
+ numeroDocumento?: string;
174
+ tipoDocumento?: string;
175
+ idActividadPrincipal?: string;
176
+ descripcionActividadPrincipal?: string;
177
+ dependencia?: DependenciaA10;
178
+ claveInactivaAsociada?: string[];
179
+ domicilio?: DomicilioA10[];
180
+ }
181
+ export interface ParameterAttribute {
182
+ name: string;
183
+ value: string;
184
+ }
185
+ export interface ParameterRecord {
186
+ id: string;
187
+ descripcion: string;
188
+ atributos?: ParameterAttribute[];
189
+ }
190
+ export interface DomicilioA13 {
191
+ direccion?: string;
192
+ calle?: string;
193
+ numero?: number;
194
+ piso?: string;
195
+ oficinaDptoLocal?: string;
196
+ sector?: string;
197
+ torre?: string;
198
+ manzana?: string;
199
+ codigoPostal?: string;
200
+ localidad?: string;
201
+ idProvincia?: number;
202
+ descripcionProvincia?: string;
203
+ tipoDomicilio?: string;
204
+ estadoDomicilio?: string;
205
+ datoAdicional?: string;
206
+ tipoDatoAdicional?: string;
207
+ }
208
+ export interface PersonaA13 {
209
+ idPersona: string;
210
+ tipoPersona: 'FISICA' | 'JURIDICA';
211
+ tipoClave?: string;
212
+ estadoClave?: string;
213
+ nombre?: string;
214
+ apellido?: string;
215
+ razonSocial?: string;
216
+ numeroDocumento?: string;
217
+ tipoDocumento?: string;
218
+ formaJuridica?: string;
219
+ mesCierre?: number;
220
+ fechaNacimiento?: string;
221
+ fechaFallecimiento?: string;
222
+ fechaContratoSocial?: string;
223
+ idActividadPrincipal?: string;
224
+ descripcionActividadPrincipal?: string;
225
+ periodoActividadPrincipal?: number;
226
+ claveInactivaAsociada?: string[];
227
+ domicilio?: DomicilioA13[];
228
+ }
229
+ export interface DomicilioA5 {
230
+ direccion?: string;
231
+ localidad?: string;
232
+ codPostal?: string;
233
+ idProvincia?: number;
234
+ descripcionProvincia?: string;
235
+ tipoDomicilio?: string;
236
+ datoAdicional?: string;
237
+ tipoDatoAdicional?: string;
238
+ }
239
+ export interface DependenciaA5 {
240
+ idDependencia?: number;
241
+ descripcionDependencia?: string;
242
+ direccion?: string;
243
+ localidad?: string;
244
+ codPostal?: string;
245
+ idProvincia?: number;
246
+ descripcionProvincia?: string;
247
+ }
248
+ export interface CaracterizacionA5 {
249
+ idCaracterizacion: number;
250
+ descripcionCaracterizacion?: string;
251
+ periodo?: number;
252
+ /** Desde 11/02/2026 (opcional) */
253
+ fechaSolicitud?: number;
254
+ }
255
+ export interface ImpuestoA5 {
256
+ idImpuesto: number;
257
+ descripcionImpuesto?: string;
258
+ /** Estado en SUPA (ej: "AC" = activo) */
259
+ estadoImpuesto?: string;
260
+ motivo?: string;
261
+ periodo?: number;
262
+ }
263
+ export interface ActividadA5 {
264
+ idActividad: string;
265
+ descripcionActividad?: string;
266
+ nomenclador?: number;
267
+ orden?: number;
268
+ periodo?: number;
269
+ }
270
+ export interface CategoriaA5 {
271
+ idCategoria: number;
272
+ descripcionCategoria?: string;
273
+ idImpuesto?: number;
274
+ periodo?: number;
275
+ }
276
+ export interface RegimenA5 {
277
+ idRegimen: number;
278
+ descripcionRegimen?: string;
279
+ idImpuesto?: number;
280
+ periodo?: number;
281
+ tipoRegimen?: string;
282
+ }
283
+ export interface RegimenGeneralA5 {
284
+ impuestos: ImpuestoA5[];
285
+ actividades: ActividadA5[];
286
+ regimenes: RegimenA5[];
287
+ categoriaAutonomo?: CategoriaA5;
288
+ }
289
+ export interface MonotributoA5 {
290
+ impuestos: ImpuestoA5[];
291
+ actividades: ActividadA5[];
292
+ actividadMonotributista?: ActividadA5;
293
+ categoria?: CategoriaA5;
294
+ }
295
+ export interface ErrorConstanciaA5 {
296
+ /** Mensajes de error (ej: "La CUIT no está activa", constancia bloqueada, etc.) */
297
+ error: string[];
298
+ idPersona?: string;
299
+ nombre?: string;
300
+ apellido?: string;
301
+ }
302
+ export interface ErrorRegimenA5 {
303
+ error: string[];
304
+ mensaje?: string;
305
+ }
306
+ /**
307
+ * Constancia de inscripción de un contribuyente (`getPersona_v2`).
308
+ *
309
+ * Si ARCA no puede emitir la constancia, los datos pueden venir incompletos y
310
+ * `errorConstancia` / `errorRegimenGeneral` / `errorMonotributo` indican por qué.
311
+ */
312
+ export interface PersonaA5 {
313
+ idPersona: string;
314
+ tipoPersona?: 'FISICA' | 'JURIDICA';
315
+ tipoClave?: string;
316
+ estadoClave?: string;
317
+ nombre?: string;
318
+ apellido?: string;
319
+ razonSocial?: string;
320
+ mesCierre?: number;
321
+ fechaContratoSocial?: string;
322
+ fechaFallecimiento?: string;
323
+ esSucesion?: string;
324
+ domicilioFiscal?: DomicilioA5;
325
+ dependencia?: DependenciaA5;
326
+ caracterizacion?: CaracterizacionA5[];
327
+ /** Régimen general (IVA, ganancias, autónomos, etc.). Ausente si no está inscripto. */
328
+ regimenGeneral?: RegimenGeneralA5;
329
+ /** Monotributo (categoría e impuestos). Ausente si no es monotributista. */
330
+ monotributo?: MonotributoA5;
331
+ /** Impuestos de ambos regímenes, juntos. */
332
+ impuestos: ImpuestoA5[];
333
+ errorConstancia?: ErrorConstanciaA5;
334
+ errorRegimenGeneral?: ErrorRegimenA5;
335
+ errorMonotributo?: ErrorRegimenA5;
336
+ }
337
+ export interface CondicionIvaPadron {
338
+ /**
339
+ * Condición frente al IVA (`CondicionIVAReceptorId` de WSFEv1), o `null` si
340
+ * el padrón no alcanza para determinarla (ver `motivo`).
341
+ */
342
+ condicionIva: CondicionIva | null;
343
+ /** Explicación legible de cómo se determinó (o por qué no se pudo). */
344
+ motivo: string;
345
+ }
346
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AACA,YAAY,EACV,YAAY,EACZ,SAAS,EACT,YAAY,EACZ,eAAe,EACf,aAAa,EACb,WAAW,GACZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAM/F,mEAAmE;AACnE,MAAM,MAAM,eAAe,GAAG,SAAS,CAAC;AAMxC,MAAM,WAAW,gBAAgB;IAC/B,oCAAoC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,kCAAkC;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,0DAA0D;IAC1D,IAAI,EAAE,MAAM,CAAC;IACb,yEAAyE;IACzE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+DAA+D;IAC/D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,8BAA8B;IAC9B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;IACrC;;;;OAIG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,8DAA8D;IAC9D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,mEAAmE;IACnE,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;;;OAIG;IACH,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB;AAMD,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAMD,MAAM,WAAW,aAAa;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,sBAAsB,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,OAAO;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,QAAQ,GAAG,UAAU,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;IACjC,SAAS,CAAC,EAAE,WAAW,EAAE,CAAC;IAC1B,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,WAAW,EAAE,CAAC;IAC1B,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,WAAW,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC;CACzB;AAMD,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,sBAAsB,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,QAAQ,GAAG,UAAU,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;IACjC,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC;CAC5B;AAMD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAClC;AAMD,MAAM,WAAW,YAAY;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,QAAQ,GAAG,UAAU,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;IACjC,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC;CAC5B;AAMD,MAAM,WAAW,WAAW;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,aAAa;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,iBAAiB;IAChC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kCAAkC;IAClC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,yCAAyC;IACzC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,UAAU,EAAE,CAAC;IACxB,WAAW,EAAE,WAAW,EAAE,CAAC;IAC3B,SAAS,EAAE,SAAS,EAAE,CAAC;IACvB,iBAAiB,CAAC,EAAE,WAAW,CAAC;CACjC;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,UAAU,EAAE,CAAC;IACxB,WAAW,EAAE,WAAW,EAAE,CAAC;IAC3B,uBAAuB,CAAC,EAAE,WAAW,CAAC;IACtC,SAAS,CAAC,EAAE,WAAW,CAAC;CACzB;AAED,MAAM,WAAW,iBAAiB;IAChC,mFAAmF;IACnF,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;GAKG;AACH,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,WAAW,CAAC;IAC9B,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B,eAAe,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACtC,uFAAuF;IACvF,cAAc,CAAC,EAAE,gBAAgB,CAAC;IAClC,4EAA4E;IAC5E,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B,4CAA4C;IAC5C,SAAS,EAAE,UAAU,EAAE,CAAC;IACxB,eAAe,CAAC,EAAE,iBAAiB,CAAC;IACpC,mBAAmB,CAAC,EAAE,cAAc,CAAC;IACrC,gBAAgB,CAAC,EAAE,cAAc,CAAC;CACnC;AAMD,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;IAClC,uEAAuE;IACvE,MAAM,EAAE,MAAM,CAAC;CAChB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ export { WsaaClient } from '@ramiidv/arca-common';
2
+ export type { WsaaClientConfig } from '@ramiidv/arca-common';
3
+ //# sourceMappingURL=wsaa.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wsaa.d.ts","sourceRoot":"","sources":["../../src/wsaa.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wsaa.js","sourceRoot":"","sources":["../../src/wsaa.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC"}
package/llms.txt CHANGED
@@ -1,19 +1,19 @@
1
- # @ramiidv/arca-padron-sdk
1
+ # @ramiidv/arca-padron
2
2
 
3
- > TypeScript SDK para los web services de Padron de ARCA (ex AFIP) - Alcances A4, A10 y A100
3
+ > TypeScript SDK para los web services de Padron de ARCA (ex AFIP) - Constancia de Inscripcion (ex A5), A4, A10, A13 y A100, mas condicionIvaDesdePadron
4
4
 
5
5
  ## Instalacion
6
6
 
7
7
  ```bash
8
- npm install @ramiidv/arca-padron-sdk
8
+ npm install @ramiidv/arca-padron
9
9
  ```
10
10
 
11
- Requisitos: Node.js >= 18 (fetch nativo). ESM only.
11
+ Requisitos: Node.js >= 18 (fetch nativo). Dual ESM + CommonJS.
12
12
 
13
13
  ## Configuracion
14
14
 
15
15
  ```typescript
16
- import { ArcaPadron } from '@ramiidv/arca-padron-sdk';
16
+ import { ArcaPadron } from '@ramiidv/arca-padron';
17
17
 
18
18
  const padron = new ArcaPadron({
19
19
  cert: string, // PEM X.509 certificate
@@ -22,12 +22,32 @@ const padron = new ArcaPadron({
22
22
  production?: boolean, // default: false (homologacion)
23
23
  retries?: number, // default: 1
24
24
  retryDelayMs?: number, // default: 1000
25
- onEvent?: (event: ArcaPadronEvent) => void,
25
+ onEvent?: (event: ArcaEvent) => void,
26
+ ticketStorage?: TicketStorage, // persist WSAA tickets across restarts (recommended)
27
+ clockOffsetMs?: number, // ARCA clock - local clock, ms. Default: 0
28
+ autoClockSkew?: boolean, // default: true
29
+ signal?: AbortSignal, // global cancellation
30
+ wsaa?: WsaaClient, // shared WSAA client (e.g. arca.wsaa from arca-facturacion)
26
31
  });
27
32
  ```
28
33
 
34
+ Every method accepts an optional last argument `{ signal?: AbortSignal }`.
35
+ Without `ticketStorage`, a restart loses the access ticket and WSAA rejects new logins until it expires (`ArcaTicketVigenteError`).
36
+
29
37
  ## Metodos principales
30
38
 
39
+ ### getConstanciaInscripcion(cuit: string): Promise<PersonaA5>
40
+ Constancia de inscripcion via ws_sr_constancia_inscripcion (getPersona_v2; replaces ws_sr_padron_a5, deprecated by ARCA). PersonaA5: idPersona, tipoPersona, nombre/apellido/razonSocial, estadoClave, domicilioFiscal, dependencia, caracterizacion[], regimenGeneral { impuestos, actividades, regimenes, categoriaAutonomo }, monotributo { impuestos, actividades, actividadMonotributista, categoria }, impuestos (both regimes), errorConstancia { error[] }, errorRegimenGeneral, errorMonotributo.
41
+
42
+ ### condicionIvaDesdePadron(persona: PersonaA5 | PersonaA4): { condicionIva: CondicionIva | null; motivo: string }
43
+ Pure helper. Monotributo active (impuesto 20 or category) → MONOTRIBUTISTA (6), MONOTRIBUTO_SOCIAL (13) for categories 61/99/100, MONOTRIBUTO_INDEPENDIENTE_PROMOVIDO (16) by category description; IVA 30 active → RESPONSABLE_INSCRIPTO (1); IVA exento 32 → EXENTO (4); IVA no alcanzado 34 → IVA_NO_ALCANZADO (15); otherwise null with motivo (never assumes consumidor final). Use the result as `condicionIva` in @ramiidv/arca-facturacion.
44
+
45
+ ### getPersonaA13(cuit: string): Promise<PersonaA13>
46
+ Datos basicos via ws_sr_padron_a13 (domicilio[] with calle, numero, codigoPostal, ...).
47
+
48
+ ### getIdPersonaListByDocumento(documento: string): Promise<string[]>
49
+ CUIT/CUIL list for a DNI via ws_sr_padron_a13.
50
+
31
51
  ### getPersona(cuit: string): Promise<PersonaA4>
32
52
  Datos completos del contribuyente via ws_sr_padron_a4. Incluye: domicilios, impuestos, actividades, regimenes, relaciones, categorias, emails, telefonos.
33
53
 
@@ -37,8 +57,8 @@ Datos basicos del contribuyente via ws_sr_padron_a10. Incluye: datos generales y
37
57
  ### getParametros(collection: string): Promise<ParameterRecord[]>
38
58
  Tablas de parametros via ws_sr_padron_a100. Usa el enum CollectionName con valores SUPA.* prefijados. Colecciones: PROVINCIA (SUPA.E_PROVINCIA), TIPO_DOCUMENTO (SUPA.TIPO_DOCUMENTO), TIPO_DOMICILIO (SUPA.TIPO_DOMICILIO), TIPO_CLAVE (SUPA.TIPO_CLAVE_IDENTIFICACION), TIPO_EMPRESA_JURIDICA, TIPO_EMPRESA_JURIDICA_SUBGRUPO, TIPO_RELACION, TIPO_SUBTIPO_RELACION, TIPO_COMPONENTE_SOCIEDAD, TIPO_RELACION_COMPONENTE_SOC, TIPO_EMAIL, TIPO_TELEFONO, TIPO_RESIDENCIA, TIPO_DATO_ADICIONAL_DOMICILIO, ORGANISMO_INFORMANTE, ORGANISMO_CONTROL, PROVINCIA_SOCIEDAD_ORG, SEXO, CALLE, LOCALIDAD.
39
59
 
40
- ### status(): Promise<{ a4: ServerStatus, a10: ServerStatus, a100: ServerStatus }>
41
- Health check de los tres servicios. No requiere autenticacion.
60
+ ### status(): Promise<{ a5, a4, a10, a13, a100 }>
61
+ Health check de los servicios. No requiere autenticacion.
42
62
 
43
63
  ## Tipos principales
44
64
 
@@ -121,14 +141,15 @@ interface ServerStatus {
121
141
 
122
142
  ## Errores
123
143
 
124
- 4-class hierarchy:
125
- - ArcaPadronError: base class
144
+ All extend ArcaError (from @ramiidv/arca-common), have a stable `code`, and instanceof works across duplicated package copies:
145
+ - ArcaPadronError
126
146
  - ArcaAuthError: WSAA authentication failures
147
+ - ArcaTicketVigenteError (extends ArcaAuthError): WSAA already issued a valid TA not available in memory/storage
127
148
  - ArcaPadronServiceError: business errors from ARCA (has errors: {code: number, msg: string}[])
128
- - ArcaSoapError: HTTP/transport errors (has statusCode?: number)
149
+ - ArcaSoapError: HTTP/transport errors and SOAP Faults (statusCode?, faultCode?, faultString?, uncertain, aborted). "Persona inexistente" comes as a SOAP Fault.
129
150
 
130
151
  ```typescript
131
- import { ArcaAuthError, ArcaPadronServiceError, ArcaSoapError } from '@ramiidv/arca-padron-sdk';
152
+ import { ArcaAuthError, ArcaPadronServiceError, ArcaSoapError } from '@ramiidv/arca-padron';
132
153
 
133
154
  try {
134
155
  await padron.getPersona(cuit);
@@ -141,19 +162,20 @@ try {
141
162
 
142
163
  ## Eventos
143
164
 
144
- Discriminated union types: auth:login, auth:cache-hit, request:start, request:end, request:retry, request:error.
165
+ Discriminated union types: auth:login, auth:cache-hit (source: memory|storage), auth:clock-skew, auth:storage-error, request:start, request:end, request:retry, request:error.
145
166
 
146
167
  ## Enums
147
168
 
148
169
  - Provincia (0-24, Argentine provinces)
149
170
  - TipoDomicilio (FISCAL, LEGAL, REAL)
150
171
  - TipoPersona (FISICA, JURIDICA)
151
- - ImpuestoId (IVA_RESPONSABLE_INSCRIPTO=30, IVA_EXENTO=32, MONOTRIBUTO=20, EMPLEADOR=301, GANANCIAS_PH=11, GANANCIAS_PJ=10, BIENES_PERSONALES=31)
172
+ - ImpuestoId (IVA_RESPONSABLE_INSCRIPTO=30, IVA_EXENTO=32, IVA_NO_ALCANZADO=34, MONOTRIBUTO=20, EMPLEADOR=301, GANANCIAS_PH=11, GANANCIAS_PJ=10, BIENES_PERSONALES=31). MONOTRIBUTO_SOCIAL=20 is deprecated (social monotributo is identified by category).
173
+ - CondicionIva (re-exported from @ramiidv/arca-common)
152
174
  - CollectionName (PROVINCIA, TIPO_DOCUMENTO, TIPO_DOMICILIO, TIPO_CLAVE, TIPO_EMPRESA_JURIDICA, TIPO_EMPRESA_JURIDICA_SUBGRUPO, TIPO_RELACION, TIPO_SUBTIPO_RELACION, TIPO_COMPONENTE_SOCIEDAD, TIPO_RELACION_COMPONENTE_SOC, TIPO_EMAIL, TIPO_TELEFONO, TIPO_RESIDENCIA, TIPO_DATO_ADICIONAL_DOMICILIO, ORGANISMO_INFORMANTE, ORGANISMO_CONTROL, PROVINCIA_SOCIEDAD_ORG, SEXO, CALLE, LOCALIDAD)
153
175
 
154
176
  ## Clientes de bajo nivel
155
177
 
156
- Accesibles como propiedades publicas: padron.wsaa, padron.a4, padron.a10, padron.a100.
178
+ Accesibles como propiedades publicas: padron.wsaa, padron.a5 (constancia), padron.a4, padron.a10, padron.a13, padron.a100.
157
179
 
158
180
  ## Utilidades exportadas
159
181