@ramiidv/arca-padron 0.3.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.
- package/CHANGELOG.md +117 -0
- package/README.md +146 -99
- package/dist/arca-padron.d.ts +107 -0
- package/dist/arca-padron.d.ts.map +1 -0
- package/dist/arca-padron.js +178 -0
- package/dist/arca-padron.js.map +1 -0
- package/dist/base-client.d.ts +45 -0
- package/dist/base-client.d.ts.map +1 -0
- package/dist/base-client.js +54 -0
- package/dist/base-client.js.map +1 -0
- package/dist/{esm/condicion-iva.d.ts → condicion-iva.d.ts} +9 -5
- package/dist/condicion-iva.d.ts.map +1 -0
- package/dist/condicion-iva.js +170 -0
- package/dist/condicion-iva.js.map +1 -0
- package/dist/{esm/constants.d.ts → constants.d.ts} +57 -12
- package/dist/constants.d.ts.map +1 -0
- package/dist/{esm/constants.js → constants.js} +53 -11
- package/dist/constants.js.map +1 -0
- package/dist/errors.d.ts +50 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +58 -0
- package/dist/errors.js.map +1 -0
- package/dist/index.d.ts +24 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +30 -0
- package/dist/index.js.map +1 -0
- package/dist/mapping.d.ts +22 -0
- package/dist/mapping.d.ts.map +1 -0
- package/dist/mapping.js +52 -0
- package/dist/mapping.js.map +1 -0
- package/dist/padron-a10.d.ts +24 -0
- package/dist/padron-a10.d.ts.map +1 -0
- package/dist/padron-a10.js +41 -0
- package/dist/padron-a10.js.map +1 -0
- package/dist/padron-a100.d.ts +26 -0
- package/dist/padron-a100.d.ts.map +1 -0
- package/dist/padron-a100.js +46 -0
- package/dist/padron-a100.js.map +1 -0
- package/dist/padron-a13.d.ts +36 -0
- package/dist/padron-a13.d.ts.map +1 -0
- package/dist/padron-a13.js +95 -0
- package/dist/padron-a13.js.map +1 -0
- package/dist/padron-a4.d.ts +21 -0
- package/dist/padron-a4.d.ts.map +1 -0
- package/dist/padron-a4.js +128 -0
- package/dist/padron-a4.js.map +1 -0
- package/dist/padron-a5.d.ts +39 -0
- package/dist/padron-a5.d.ts.map +1 -0
- package/dist/padron-a5.js +214 -0
- package/dist/padron-a5.js.map +1 -0
- package/dist/{cjs/types.d.ts → types.d.ts} +36 -53
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js.map +1 -0
- package/llms.txt +46 -27
- package/package.json +21 -32
- package/dist/cjs/arca-padron.d.ts +0 -98
- package/dist/cjs/arca-padron.d.ts.map +0 -1
- package/dist/cjs/arca-padron.js +0 -177
- package/dist/cjs/arca-padron.js.map +0 -1
- package/dist/cjs/base-client.d.ts +0 -36
- package/dist/cjs/base-client.d.ts.map +0 -1
- package/dist/cjs/base-client.js +0 -52
- package/dist/cjs/base-client.js.map +0 -1
- package/dist/cjs/condicion-iva.d.ts +0 -24
- package/dist/cjs/condicion-iva.d.ts.map +0 -1
- package/dist/cjs/condicion-iva.js +0 -119
- package/dist/cjs/condicion-iva.js.map +0 -1
- package/dist/cjs/constants.d.ts +0 -97
- package/dist/cjs/constants.d.ts.map +0 -1
- package/dist/cjs/constants.js +0 -113
- package/dist/cjs/constants.js.map +0 -1
- package/dist/cjs/errors.d.ts +0 -22
- package/dist/cjs/errors.d.ts.map +0 -1
- package/dist/cjs/errors.js +0 -36
- package/dist/cjs/errors.js.map +0 -1
- package/dist/cjs/index.d.ts +0 -16
- package/dist/cjs/index.d.ts.map +0 -1
- package/dist/cjs/index.js +0 -56
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/mapping.d.ts +0 -9
- package/dist/cjs/mapping.d.ts.map +0 -1
- package/dist/cjs/mapping.js +0 -14
- package/dist/cjs/mapping.js.map +0 -1
- package/dist/cjs/package.json +0 -1
- package/dist/cjs/padron-a10.d.ts +0 -18
- package/dist/cjs/padron-a10.d.ts.map +0 -1
- package/dist/cjs/padron-a10.js +0 -73
- package/dist/cjs/padron-a10.js.map +0 -1
- package/dist/cjs/padron-a100.d.ts +0 -16
- package/dist/cjs/padron-a100.d.ts.map +0 -1
- package/dist/cjs/padron-a100.js +0 -38
- package/dist/cjs/padron-a100.js.map +0 -1
- package/dist/cjs/padron-a13.d.ts +0 -24
- package/dist/cjs/padron-a13.d.ts.map +0 -1
- package/dist/cjs/padron-a13.js +0 -80
- package/dist/cjs/padron-a13.js.map +0 -1
- package/dist/cjs/padron-a4.d.ts +0 -18
- package/dist/cjs/padron-a4.d.ts.map +0 -1
- package/dist/cjs/padron-a4.js +0 -173
- package/dist/cjs/padron-a4.js.map +0 -1
- package/dist/cjs/padron-a5.d.ts +0 -24
- package/dist/cjs/padron-a5.d.ts.map +0 -1
- package/dist/cjs/padron-a5.js +0 -156
- package/dist/cjs/padron-a5.js.map +0 -1
- package/dist/cjs/soap-client.d.ts +0 -2
- package/dist/cjs/soap-client.d.ts.map +0 -1
- package/dist/cjs/soap-client.js +0 -13
- package/dist/cjs/soap-client.js.map +0 -1
- package/dist/cjs/types.d.ts.map +0 -1
- package/dist/cjs/types.js +0 -3
- package/dist/cjs/types.js.map +0 -1
- package/dist/cjs/wsaa.d.ts +0 -3
- package/dist/cjs/wsaa.d.ts.map +0 -1
- package/dist/cjs/wsaa.js +0 -6
- package/dist/cjs/wsaa.js.map +0 -1
- package/dist/esm/arca-padron.d.ts +0 -98
- package/dist/esm/arca-padron.d.ts.map +0 -1
- package/dist/esm/arca-padron.js +0 -173
- package/dist/esm/arca-padron.js.map +0 -1
- package/dist/esm/base-client.d.ts +0 -36
- package/dist/esm/base-client.d.ts.map +0 -1
- package/dist/esm/base-client.js +0 -48
- package/dist/esm/base-client.js.map +0 -1
- package/dist/esm/condicion-iva.d.ts.map +0 -1
- package/dist/esm/condicion-iva.js +0 -116
- package/dist/esm/condicion-iva.js.map +0 -1
- package/dist/esm/constants.d.ts.map +0 -1
- package/dist/esm/constants.js.map +0 -1
- package/dist/esm/errors.d.ts +0 -22
- package/dist/esm/errors.d.ts.map +0 -1
- package/dist/esm/errors.js +0 -26
- package/dist/esm/errors.js.map +0 -1
- package/dist/esm/index.d.ts +0 -16
- package/dist/esm/index.d.ts.map +0 -1
- package/dist/esm/index.js +0 -22
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/mapping.d.ts +0 -9
- package/dist/esm/mapping.d.ts.map +0 -1
- package/dist/esm/mapping.js +0 -8
- package/dist/esm/mapping.js.map +0 -1
- package/dist/esm/padron-a10.d.ts +0 -18
- package/dist/esm/padron-a10.d.ts.map +0 -1
- package/dist/esm/padron-a10.js +0 -69
- package/dist/esm/padron-a10.js.map +0 -1
- package/dist/esm/padron-a100.d.ts +0 -16
- package/dist/esm/padron-a100.d.ts.map +0 -1
- package/dist/esm/padron-a100.js +0 -34
- package/dist/esm/padron-a100.js.map +0 -1
- package/dist/esm/padron-a13.d.ts +0 -24
- package/dist/esm/padron-a13.d.ts.map +0 -1
- package/dist/esm/padron-a13.js +0 -75
- package/dist/esm/padron-a13.js.map +0 -1
- package/dist/esm/padron-a4.d.ts +0 -18
- package/dist/esm/padron-a4.d.ts.map +0 -1
- package/dist/esm/padron-a4.js +0 -169
- package/dist/esm/padron-a4.js.map +0 -1
- package/dist/esm/padron-a5.d.ts +0 -24
- package/dist/esm/padron-a5.d.ts.map +0 -1
- package/dist/esm/padron-a5.js +0 -151
- package/dist/esm/padron-a5.js.map +0 -1
- package/dist/esm/soap-client.d.ts +0 -2
- package/dist/esm/soap-client.d.ts.map +0 -1
- package/dist/esm/soap-client.js +0 -3
- package/dist/esm/soap-client.js.map +0 -1
- package/dist/esm/types.d.ts +0 -346
- package/dist/esm/types.d.ts.map +0 -1
- package/dist/esm/types.js.map +0 -1
- package/dist/esm/wsaa.d.ts +0 -3
- package/dist/esm/wsaa.d.ts.map +0 -1
- package/dist/esm/wsaa.js +0 -2
- package/dist/esm/wsaa.js.map +0 -1
- /package/dist/{esm/types.js → types.js} +0 -0
|
@@ -1,6 +1,13 @@
|
|
|
1
|
-
import { WSAA_ENDPOINTS } from '@ramiidv/arca-common';
|
|
1
|
+
import { DocTipo, WSAA_ENDPOINTS } from '@ramiidv/arca-common';
|
|
2
2
|
// Re-export shared enums from common
|
|
3
|
-
export { Provincia, DocTipo
|
|
3
|
+
export { Provincia, DocTipo, CondicionIva } from '@ramiidv/arca-common';
|
|
4
|
+
/**
|
|
5
|
+
* @deprecated Es `DocTipo` de arca-common: los códigos numéricos de tipo de
|
|
6
|
+
* documento de WSFEv1 (80 = CUIT, 96 = DNI...). No sirve para interpretar el
|
|
7
|
+
* campo `tipoDocumento` del padrón, que es un string ("DNI", "LC", "LE"...;
|
|
8
|
+
* ver la colección A100 `SUPA.TIPO_DOCUMENTO`). Usá `DocTipo`.
|
|
9
|
+
*/
|
|
10
|
+
export const TipoDocumento = DocTipo;
|
|
4
11
|
// ---------------------------------------------------------------------------
|
|
5
12
|
// Endpoints
|
|
6
13
|
// ---------------------------------------------------------------------------
|
|
@@ -54,24 +61,37 @@ export var TipoPersona;
|
|
|
54
61
|
TipoPersona["FISICA"] = "FISICA";
|
|
55
62
|
TipoPersona["JURIDICA"] = "JURIDICA";
|
|
56
63
|
})(TipoPersona || (TipoPersona = {}));
|
|
57
|
-
/**
|
|
64
|
+
/**
|
|
65
|
+
* IDs de impuestos de SUPA.
|
|
66
|
+
*
|
|
67
|
+
* Respaldados por los manuales de ARCA: 11, 20, 21, 30, 180, 301, 308
|
|
68
|
+
* (ejemplos y validaciones de los manuales de constancia de inscripción v4.1 y
|
|
69
|
+
* A4 v1.3). Los marcados "sin respaldo" no figuran en esos manuales.
|
|
70
|
+
*/
|
|
58
71
|
export var ImpuestoId;
|
|
59
72
|
(function (ImpuestoId) {
|
|
73
|
+
/** Ganancias sociedades. Sin respaldo en los manuales del padrón. */
|
|
60
74
|
ImpuestoId[ImpuestoId["GANANCIAS_PJ"] = 10] = "GANANCIAS_PJ";
|
|
75
|
+
/** Ganancias personas físicas. */
|
|
61
76
|
ImpuestoId[ImpuestoId["GANANCIAS_PH"] = 11] = "GANANCIAS_PH";
|
|
62
|
-
/** Monotributo
|
|
77
|
+
/** Monotributo. */
|
|
63
78
|
ImpuestoId[ImpuestoId["MONOTRIBUTO"] = 20] = "MONOTRIBUTO";
|
|
64
|
-
/**
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
*/
|
|
68
|
-
ImpuestoId[ImpuestoId["MONOTRIBUTO_SOCIAL"] = 20] = "MONOTRIBUTO_SOCIAL";
|
|
79
|
+
/** Monotributo autónomo (manual A4 v1.3). */
|
|
80
|
+
ImpuestoId[ImpuestoId["MONOTRIBUTO_AUTONOMO"] = 21] = "MONOTRIBUTO_AUTONOMO";
|
|
81
|
+
/** IVA. */
|
|
69
82
|
ImpuestoId[ImpuestoId["IVA_RESPONSABLE_INSCRIPTO"] = 30] = "IVA_RESPONSABLE_INSCRIPTO";
|
|
70
|
-
|
|
83
|
+
/** IVA exento. Sin respaldo en los manuales del padrón: el A4 informa la exención como impuesto 30 con estado EXENTO. */
|
|
71
84
|
ImpuestoId[ImpuestoId["IVA_EXENTO"] = 32] = "IVA_EXENTO";
|
|
85
|
+
/** @deprecated Sin respaldo en los manuales del padrón y sin uso en el SDK. */
|
|
72
86
|
ImpuestoId[ImpuestoId["IVA_NO_INSCRIPTO"] = 33] = "IVA_NO_INSCRIPTO";
|
|
87
|
+
/** IVA no alcanzado. Sin respaldo en los manuales del padrón. */
|
|
73
88
|
ImpuestoId[ImpuestoId["IVA_NO_ALCANZADO"] = 34] = "IVA_NO_ALCANZADO";
|
|
89
|
+
/** Bienes personales (manual de constancia v4.1: "180 – Bs Ps"). Antes figuraba, mal, como 31. */
|
|
90
|
+
ImpuestoId[ImpuestoId["BIENES_PERSONALES"] = 180] = "BIENES_PERSONALES";
|
|
91
|
+
/** Empleador - aportes de la seguridad social. */
|
|
74
92
|
ImpuestoId[ImpuestoId["EMPLEADOR"] = 301] = "EMPLEADOR";
|
|
93
|
+
/** Aportes de la seguridad social - autónomos. */
|
|
94
|
+
ImpuestoId[ImpuestoId["AUTONOMOS"] = 308] = "AUTONOMOS";
|
|
75
95
|
})(ImpuestoId || (ImpuestoId = {}));
|
|
76
96
|
/** Estado de la clave fiscal del contribuyente */
|
|
77
97
|
export var EstadoClave;
|
|
@@ -80,7 +100,13 @@ export var EstadoClave;
|
|
|
80
100
|
EstadoClave["INACTIVO"] = "INACTIVO";
|
|
81
101
|
EstadoClave["LIMITADO"] = "LIMITADO";
|
|
82
102
|
})(EstadoClave || (EstadoClave = {}));
|
|
83
|
-
/**
|
|
103
|
+
/**
|
|
104
|
+
* Nombres de colecciones de ws_sr_padron_a100 (manual v2.1, anexo 5.1).
|
|
105
|
+
*
|
|
106
|
+
* La fila de "Categorías de Monotributo según F.184" está cortada en el manual
|
|
107
|
+
* (solo se lee el atributo `COD_CATEGORIA_MONOTRIBUTO`), así que no se incluye:
|
|
108
|
+
* pasá el nombre como string si lo conocés.
|
|
109
|
+
*/
|
|
84
110
|
export var CollectionName;
|
|
85
111
|
(function (CollectionName) {
|
|
86
112
|
CollectionName["PROVINCIA"] = "SUPA.E_PROVINCIA";
|
|
@@ -103,5 +129,21 @@ export var CollectionName;
|
|
|
103
129
|
CollectionName["SEXO"] = "E_SEXO";
|
|
104
130
|
CollectionName["CALLE"] = "PUC_PARAM.T_CALLE";
|
|
105
131
|
CollectionName["LOCALIDAD"] = "PUC_PARAM.T_LOCALIDAD";
|
|
132
|
+
/** Tipología de autónomos de monotributo según F.184. */
|
|
133
|
+
CollectionName["AUTONOMO_MONOTRIBUTO"] = "SUPA.E_AUTONOMO_MONOTRIBUTO";
|
|
134
|
+
/** Nómina de regímenes vigentes y no vigentes. */
|
|
135
|
+
CollectionName["REGIMEN"] = "SUPA.E_REGIMEN";
|
|
136
|
+
/** Clasificaciones de regímenes. */
|
|
137
|
+
CollectionName["TIPO_REGIMEN"] = "SUPA.TIPO_REGIMEN";
|
|
138
|
+
/** Atributos y características de los contribuyentes. */
|
|
139
|
+
CollectionName["CARACTERIZACION"] = "SUPA.E_CARACTERIZACION";
|
|
140
|
+
/** Tipos de documento válidos para el sistema. */
|
|
141
|
+
CollectionName["TIPO_ARCHIVO"] = "SUPA.TIPO_ARCHIVO";
|
|
142
|
+
/** Relaciones entre actividades y rubros de todos los nomencladores. */
|
|
143
|
+
CollectionName["ACTIVIDAD_RUBRO"] = "SUPA.A_ACTIVIDAD_RUBRO";
|
|
144
|
+
/** Rubros de los nomencladores de actividades económicas. */
|
|
145
|
+
CollectionName["RUBRO_ACTIVIDAD"] = "SUPA.E_RUBRO_ACTIVIDAD";
|
|
146
|
+
/** Actividades ocupacionales no incluidas en el nomenclador F.150. */
|
|
147
|
+
CollectionName["ACTIVIDAD_OCUPACIONAL"] = "SUPA.E_ACTIVIDAD_OCUPACIONAL";
|
|
106
148
|
})(CollectionName || (CollectionName = {}));
|
|
107
149
|
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
|
package/dist/errors.d.ts
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { ArcaError, ArcaServiceError } from '@ramiidv/arca-common';
|
|
2
|
+
import type { ServiceErrorDetail } from '@ramiidv/arca-common';
|
|
3
|
+
/**
|
|
4
|
+
* Error propio del SDK de Padrón que no es de negocio ni de transporte: la
|
|
5
|
+
* respuesta de ARCA no tiene un dato obligatorio (ej: `personaReturn` sin
|
|
6
|
+
* `persona`) o tiene una forma inesperada.
|
|
7
|
+
*/
|
|
8
|
+
export declare class ArcaPadronError extends ArcaError {
|
|
9
|
+
static readonly code: string;
|
|
10
|
+
constructor(message: string, options?: {
|
|
11
|
+
cause?: unknown;
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Motivo de un error de negocio de Padrón. Textos de los manuales de ARCA
|
|
16
|
+
* (A13 v1.4 §5.3 y constancia de inscripción v4.1):
|
|
17
|
+
*
|
|
18
|
+
* - `inexistente`: "La Clave (CUIT/CUIL) consultada es inexistente",
|
|
19
|
+
* "No existe persona con ese Id".
|
|
20
|
+
* - `inactiva`: "La clave (CUIT/CUIL) consultada se encuentra INACTIVA".
|
|
21
|
+
* - `id_invalido`: "El Id de la persona no es valido".
|
|
22
|
+
* - `no_autorizado`: "No autorizado, par token/sign invalido.", "Falta token
|
|
23
|
+
* y/o sign.", "Debe enviar la CUIT representada", "Este token no le permite
|
|
24
|
+
* actuar en representacion de la CUIT ...".
|
|
25
|
+
* - `otro`: cualquier otro error de negocio.
|
|
26
|
+
*/
|
|
27
|
+
export type PadronErrorReason = 'inexistente' | 'inactiva' | 'id_invalido' | 'no_autorizado' | 'otro';
|
|
28
|
+
/**
|
|
29
|
+
* Error de negocio de Padrón (CUIT inexistente, clave inactiva, token no
|
|
30
|
+
* autorizado, etc.). ARCA los informa como SOAP Fault: el SDK los convierte en
|
|
31
|
+
* este error con un `reason` tipado. El `ArcaSoapError` original queda en
|
|
32
|
+
* `cause` y el texto de ARCA en `errors[0].msg`. No se reintentan.
|
|
33
|
+
*/
|
|
34
|
+
export declare class ArcaPadronServiceError extends ArcaServiceError {
|
|
35
|
+
static readonly code: string;
|
|
36
|
+
readonly reason: PadronErrorReason;
|
|
37
|
+
constructor(message: string, errors: ServiceErrorDetail[], options?: {
|
|
38
|
+
reason?: PadronErrorReason;
|
|
39
|
+
cause?: unknown;
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
/** Motivo de un mensaje de error de negocio de Padrón, o `undefined` si no es uno conocido. */
|
|
43
|
+
export declare function padronErrorReason(message: string): PadronErrorReason | undefined;
|
|
44
|
+
/**
|
|
45
|
+
* Convierte un SOAP Fault de negocio conocido en `ArcaPadronServiceError`.
|
|
46
|
+
* Cualquier otro error (transporte, timeout, Fault desconocido) se devuelve
|
|
47
|
+
* sin cambios.
|
|
48
|
+
*/
|
|
49
|
+
export declare function toPadronError(err: unknown, method: string): unknown;
|
|
50
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
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;AAYD,+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"}
|
package/dist/errors.js
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { ArcaError, ArcaServiceError, ArcaSoapError } from '@ramiidv/arca-common';
|
|
2
|
+
/**
|
|
3
|
+
* Error propio del SDK de Padrón que no es de negocio ni de transporte: la
|
|
4
|
+
* respuesta de ARCA no tiene un dato obligatorio (ej: `personaReturn` sin
|
|
5
|
+
* `persona`) o tiene una forma inesperada.
|
|
6
|
+
*/
|
|
7
|
+
export class ArcaPadronError extends ArcaError {
|
|
8
|
+
static code = 'ARCA_PADRON_ERROR';
|
|
9
|
+
constructor(message, options) {
|
|
10
|
+
super(message, options);
|
|
11
|
+
this.name = 'ArcaPadronError';
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Error de negocio de Padrón (CUIT inexistente, clave inactiva, token no
|
|
16
|
+
* autorizado, etc.). ARCA los informa como SOAP Fault: el SDK los convierte en
|
|
17
|
+
* este error con un `reason` tipado. El `ArcaSoapError` original queda en
|
|
18
|
+
* `cause` y el texto de ARCA en `errors[0].msg`. No se reintentan.
|
|
19
|
+
*/
|
|
20
|
+
export class ArcaPadronServiceError extends ArcaServiceError {
|
|
21
|
+
static code = 'ARCA_PADRON_SERVICE_ERROR';
|
|
22
|
+
reason;
|
|
23
|
+
constructor(message, errors, options) {
|
|
24
|
+
super(message, errors, options?.cause !== undefined ? { cause: options.cause } : undefined);
|
|
25
|
+
this.name = 'ArcaPadronServiceError';
|
|
26
|
+
this.reason = options?.reason ?? 'otro';
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
const FAULT_REASONS = [
|
|
30
|
+
[/es inexistente|no existe persona/i, 'inexistente'],
|
|
31
|
+
[/se encuentra inactiva/i, 'inactiva'],
|
|
32
|
+
[/id de la persona no es v[aá]lido/i, 'id_invalido'],
|
|
33
|
+
[
|
|
34
|
+
/no autorizado|falta token|debe enviar la cuit representada|no le permite actuar en representaci[oó]n/i,
|
|
35
|
+
'no_autorizado',
|
|
36
|
+
],
|
|
37
|
+
];
|
|
38
|
+
/** Motivo de un mensaje de error de negocio de Padrón, o `undefined` si no es uno conocido. */
|
|
39
|
+
export function padronErrorReason(message) {
|
|
40
|
+
return FAULT_REASONS.find(([re]) => re.test(message))?.[1];
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Convierte un SOAP Fault de negocio conocido en `ArcaPadronServiceError`.
|
|
44
|
+
* Cualquier otro error (transporte, timeout, Fault desconocido) se devuelve
|
|
45
|
+
* sin cambios.
|
|
46
|
+
*/
|
|
47
|
+
export function toPadronError(err, method) {
|
|
48
|
+
if (!(err instanceof ArcaSoapError) || err.faultString === undefined)
|
|
49
|
+
return err;
|
|
50
|
+
const reason = padronErrorReason(err.faultString);
|
|
51
|
+
if (!reason)
|
|
52
|
+
return err;
|
|
53
|
+
const detail = { code: 0, msg: err.faultString };
|
|
54
|
+
if (err.faultCode)
|
|
55
|
+
detail.rawCode = err.faultCode;
|
|
56
|
+
return new ArcaPadronServiceError(`${method}: ${err.faultString}`, [detail], { reason, cause: err });
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGlF;;;;GAIG;AACH,MAAM,OAAO,eAAgB,SAAQ,SAAS;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;;AAkBH;;;;;GAKG;AACH,MAAM,OAAO,sBAAuB,SAAQ,gBAAgB;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;;AAGH,MAAM,aAAa,GAAuC;IACxD,CAAC,mCAAmC,EAAE,aAAa,CAAC;IACpD,CAAC,wBAAwB,EAAE,UAAU,CAAC;IACtC,CAAC,mCAAmC,EAAE,aAAa,CAAC;IACpD;QACE,uGAAuG;QACvG,eAAe;KAChB;CACF,CAAC;AAEF,+FAA+F;AAC/F,MAAM,UAAU,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,MAAM,UAAU,aAAa,CAAC,GAAY,EAAE,MAAc;IACxD,IAAI,CAAC,CAAC,GAAG,YAAY,aAAa,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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { checkServiceErrors as commonCheckServiceErrors } from '@ramiidv/arca-common';
|
|
2
|
+
export { ArcaPadron } from './arca-padron.js';
|
|
3
|
+
export { condicionIvaDesdePadron } from './condicion-iva.js';
|
|
4
|
+
export { MemoryTicketStorage, FileTicketStorage } from '@ramiidv/arca-common';
|
|
5
|
+
export { ArcaError, ArcaAuthError, ArcaTicketVigenteError, ArcaSoapError, ArcaServiceError, ArcaValidationError, } from '@ramiidv/arca-common';
|
|
6
|
+
export { ArcaPadronError, ArcaPadronServiceError, type PadronErrorReason } from './errors.js';
|
|
7
|
+
export { BasePadronClient, type PadronClientConfig, type PadronSoapOptions } from './base-client.js';
|
|
8
|
+
export { WsaaClient } from '@ramiidv/arca-common';
|
|
9
|
+
export type { WsaaClientConfig } from '@ramiidv/arca-common';
|
|
10
|
+
export { PadronA5Client, MAX_PERSONA_LIST, type PadronA5ClientConfig } from './padron-a5.js';
|
|
11
|
+
export { PadronA4Client, type PadronA4ClientConfig } from './padron-a4.js';
|
|
12
|
+
export { PadronA13Client, type PadronA13ClientConfig } from './padron-a13.js';
|
|
13
|
+
export { PadronA10Client, type PadronA10ClientConfig } from './padron-a10.js';
|
|
14
|
+
export { PadronA100Client, type PadronA100ClientConfig } from './padron-a100.js';
|
|
15
|
+
export type { ArcaPadronConfig, PadronServicio, PadronStatus, AccessTicket, TicketStorage, CallOptions, WsAuth, SoapCallOptions, ServerStatus, ArcaEvent, ArcaPadronEvent, PersonaA4, DependenciaA4, DomicilioA4, ImpuestoA4, ActividadA4, RegimenA4, RelacionA4, CategoriaA4, EmailA4, TelefonoA4, PersonaA10, DependenciaA10, DomicilioA10, ParameterRecord, ParameterAttribute, PersonaA13, DomicilioA13, PersonaA5, DomicilioA5, DependenciaA5, CaracterizacionA5, ComponenteSociedadA5, ImpuestoA5, ActividadA5, CategoriaA5, RegimenA5, RegimenGeneralA5, MonotributoA5, ErrorConstanciaA5, ErrorRegimenA5, CondicionIvaPadron, } from './types.js';
|
|
16
|
+
export { ENDPOINTS, Provincia, DocTipo, TipoDocumento, CondicionIva, TipoDomicilio, TipoPersona, ImpuestoId, EstadoClave, CollectionName, } from './constants.js';
|
|
17
|
+
export { ensureArray, parseXml, buildXml } from '@ramiidv/arca-common';
|
|
18
|
+
/**
|
|
19
|
+
* @deprecated Padrón no devuelve errores de negocio en el body (los informa
|
|
20
|
+
* como SOAP Fault, que el SDK ya convierte en `ArcaPadronServiceError`). Si lo
|
|
21
|
+
* necesitás para otro servicio, importalo de `@ramiidv/arca-common`.
|
|
22
|
+
*/
|
|
23
|
+
export declare const checkServiceErrors: typeof commonCheckServiceErrors;
|
|
24
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
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/index.js
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { checkServiceErrors as commonCheckServiceErrors } from '@ramiidv/arca-common';
|
|
2
|
+
// Main class
|
|
3
|
+
export { ArcaPadron } from './arca-padron.js';
|
|
4
|
+
// Helpers puros
|
|
5
|
+
export { condicionIvaDesdePadron } from './condicion-iva.js';
|
|
6
|
+
// Persistencia de tickets (desde arca-common)
|
|
7
|
+
export { MemoryTicketStorage, FileTicketStorage } from '@ramiidv/arca-common';
|
|
8
|
+
// Error classes
|
|
9
|
+
export { ArcaError, ArcaAuthError, ArcaTicketVigenteError, ArcaSoapError, ArcaServiceError, ArcaValidationError, } from '@ramiidv/arca-common';
|
|
10
|
+
export { ArcaPadronError, ArcaPadronServiceError } from './errors.js';
|
|
11
|
+
// Base class
|
|
12
|
+
export { BasePadronClient } from './base-client.js';
|
|
13
|
+
// Low-level clients
|
|
14
|
+
export { WsaaClient } from '@ramiidv/arca-common';
|
|
15
|
+
export { PadronA5Client, MAX_PERSONA_LIST } from './padron-a5.js';
|
|
16
|
+
export { PadronA4Client } from './padron-a4.js';
|
|
17
|
+
export { PadronA13Client } from './padron-a13.js';
|
|
18
|
+
export { PadronA10Client } from './padron-a10.js';
|
|
19
|
+
export { PadronA100Client } from './padron-a100.js';
|
|
20
|
+
// Constants and enums
|
|
21
|
+
export { ENDPOINTS, Provincia, DocTipo, TipoDocumento, CondicionIva, TipoDomicilio, TipoPersona, ImpuestoId, EstadoClave, CollectionName, } from './constants.js';
|
|
22
|
+
// Utilities (from common)
|
|
23
|
+
export { ensureArray, parseXml, buildXml } from '@ramiidv/arca-common';
|
|
24
|
+
/**
|
|
25
|
+
* @deprecated Padrón no devuelve errores de negocio en el body (los informa
|
|
26
|
+
* como SOAP Fault, que el SDK ya convierte en `ArcaPadronServiceError`). Si lo
|
|
27
|
+
* necesitás para otro servicio, importalo de `@ramiidv/arca-common`.
|
|
28
|
+
*/
|
|
29
|
+
export const checkServiceErrors = commonCheckServiceErrors;
|
|
30
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,IAAI,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAEtF,aAAa;AACb,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,gBAAgB;AAChB,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAE7D,8CAA8C;AAC9C,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE9E,gBAAgB;AAChB,OAAO,EACL,SAAS,EACT,aAAa,EACb,sBAAsB,EACtB,aAAa,EACb,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAA0B,MAAM,aAAa,CAAC;AAE9F,aAAa;AACb,OAAO,EAAE,gBAAgB,EAAmD,MAAM,kBAAkB,CAAC;AAErG,oBAAoB;AACpB,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAA6B,MAAM,gBAAgB,CAAC;AAC7F,OAAO,EAAE,cAAc,EAA6B,MAAM,gBAAgB,CAAC;AAC3E,OAAO,EAAE,eAAe,EAA8B,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EAAE,eAAe,EAA8B,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAA+B,MAAM,kBAAkB,CAAC;AAgDjF,sBAAsB;AACtB,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;AAExB,0BAA0B;AAC1B,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEvE;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { Schema } from '@ramiidv/arca-common/schema';
|
|
2
|
+
export { dec, id, int, list, must, obj, str } from '@ramiidv/arca-common/schema';
|
|
3
|
+
export type { Schema } from '@ramiidv/arca-common/schema';
|
|
4
|
+
/** Registro de una respuesta SOAP parseada. */
|
|
5
|
+
export type SoapRecord = Record<string, unknown>;
|
|
6
|
+
/**
|
|
7
|
+
* Decodifica un nodo de respuesta de Padrón según el schema.
|
|
8
|
+
* @throws ArcaPadronError si falta un dato obligatorio o un valor no tiene el tipo del WSDL.
|
|
9
|
+
*/
|
|
10
|
+
export declare function decode<T>(node: unknown, schema: Schema, path: string): T;
|
|
11
|
+
/**
|
|
12
|
+
* Decodifica el `persona` de un `personaReturn` (A4, A10, A13). Si falta,
|
|
13
|
+
* lanza `ArcaPadronError`: nunca se inventa una persona vacía.
|
|
14
|
+
*/
|
|
15
|
+
export declare function decodePersona<T>(result: unknown, persona: Schema, method: string): T;
|
|
16
|
+
/** Schema del `personaReturn` (A4, A10, A13) que envuelve a un `persona`. */
|
|
17
|
+
export declare const personaReturnSchema: (persona: Schema) => Schema;
|
|
18
|
+
/** `dependencia` de A4/A10. */
|
|
19
|
+
export declare const Dependencia: Schema;
|
|
20
|
+
/** `domicilio` de A10 y `domicilioFiscal` de la constancia (todos `xs:string` salvo `idProvincia`). */
|
|
21
|
+
export declare const Domicilio: Schema;
|
|
22
|
+
//# sourceMappingURL=mapping.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mapping.d.ts","sourceRoot":"","sources":["../src/mapping.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAG1D,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,6BAA6B,CAAC;AACjF,YAAY,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAE1D,+CAA+C;AAC/C,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAKjD;;;GAGG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,CAExE;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,CAEpF;AAED,6EAA6E;AAC7E,eAAO,MAAM,mBAAmB,GAAI,SAAS,MAAM,KAAG,MAA2C,CAAC;AAMlG,+BAA+B;AAC/B,eAAO,MAAM,WAAW,EAAE,MAGzB,CAAC;AAEF,uGAAuG;AACvG,eAAO,MAAM,SAAS,EAAE,MASvB,CAAC"}
|
package/dist/mapping.js
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Decodificación de respuestas de Padrón con el DSL de schemas de
|
|
3
|
+
* `@ramiidv/arca-common/schema`, con lo propio de estos WSDL:
|
|
4
|
+
*
|
|
5
|
+
* - Los elementos repetidos son `nillable`: el DSL descarta los `xsi:nil="true"`
|
|
6
|
+
* (un nil suelto queda como lista vacía).
|
|
7
|
+
* - Una lista ausente no aparece en el resultado (`emptyLists: 'omit'`): los
|
|
8
|
+
* tipos públicos la declaran opcional (`domicilio?`, `impuesto?`...).
|
|
9
|
+
* - Las respuestas inválidas se lanzan como `ArcaPadronError`.
|
|
10
|
+
*
|
|
11
|
+
* @internal No se exporta desde `index.ts`.
|
|
12
|
+
*/
|
|
13
|
+
import { decodeResponse, int, must, obj, str } from '@ramiidv/arca-common/schema';
|
|
14
|
+
import { ArcaPadronError } from './errors.js';
|
|
15
|
+
export { dec, id, int, list, must, obj, str } from '@ramiidv/arca-common/schema';
|
|
16
|
+
const responseError = (message) => new ArcaPadronError(message.replace(/^Respuesta inválida:/, 'Respuesta inválida de ARCA:'));
|
|
17
|
+
/**
|
|
18
|
+
* Decodifica un nodo de respuesta de Padrón según el schema.
|
|
19
|
+
* @throws ArcaPadronError si falta un dato obligatorio o un valor no tiene el tipo del WSDL.
|
|
20
|
+
*/
|
|
21
|
+
export function decode(node, schema, path) {
|
|
22
|
+
return decodeResponse(node, schema, path, { error: responseError, emptyLists: 'omit' });
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Decodifica el `persona` de un `personaReturn` (A4, A10, A13). Si falta,
|
|
26
|
+
* lanza `ArcaPadronError`: nunca se inventa una persona vacía.
|
|
27
|
+
*/
|
|
28
|
+
export function decodePersona(result, persona, method) {
|
|
29
|
+
return decode(result, personaReturnSchema(persona), `${method}.personaReturn`).persona;
|
|
30
|
+
}
|
|
31
|
+
/** Schema del `personaReturn` (A4, A10, A13) que envuelve a un `persona`. */
|
|
32
|
+
export const personaReturnSchema = (persona) => ({ persona: must(obj(persona)) });
|
|
33
|
+
// ---------------------------------------------------------------------------
|
|
34
|
+
// Tipos comunes de los WSDL de A4, A10 y constancia (orden del WSDL)
|
|
35
|
+
// ---------------------------------------------------------------------------
|
|
36
|
+
/** `dependencia` de A4/A10. */
|
|
37
|
+
export const Dependencia = {
|
|
38
|
+
descripcionDependencia: str(),
|
|
39
|
+
idDependencia: int(),
|
|
40
|
+
};
|
|
41
|
+
/** `domicilio` de A10 y `domicilioFiscal` de la constancia (todos `xs:string` salvo `idProvincia`). */
|
|
42
|
+
export const Domicilio = {
|
|
43
|
+
codPostal: str(),
|
|
44
|
+
datoAdicional: str(),
|
|
45
|
+
descripcionProvincia: str(),
|
|
46
|
+
direccion: str(),
|
|
47
|
+
idProvincia: int(),
|
|
48
|
+
localidad: str(),
|
|
49
|
+
tipoDatoAdicional: str(),
|
|
50
|
+
tipoDomicilio: str(),
|
|
51
|
+
};
|
|
52
|
+
//# sourceMappingURL=mapping.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mapping.js","sourceRoot":"","sources":["../src/mapping.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,cAAc,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,6BAA6B,CAAC;AAElF,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,6BAA6B,CAAC;AAMjF,MAAM,aAAa,GAAG,CAAC,OAAe,EAAE,EAAE,CACxC,IAAI,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,sBAAsB,EAAE,6BAA6B,CAAC,CAAC,CAAC;AAE9F;;;GAGG;AACH,MAAM,UAAU,MAAM,CAAI,IAAa,EAAE,MAAc,EAAE,IAAY;IACnE,OAAO,cAAc,CAAI,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;AAC7F,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAI,MAAe,EAAE,OAAe,EAAE,MAAc;IAC/E,OAAO,MAAM,CAAiB,MAAM,EAAE,mBAAmB,CAAC,OAAO,CAAC,EAAE,GAAG,MAAM,gBAAgB,CAAC,CAAC,OAAO,CAAC;AACzG,CAAC;AAED,6EAA6E;AAC7E,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,OAAe,EAAU,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;AAElG,8EAA8E;AAC9E,qEAAqE;AACrE,8EAA8E;AAE9E,+BAA+B;AAC/B,MAAM,CAAC,MAAM,WAAW,GAAW;IACjC,sBAAsB,EAAE,GAAG,EAAE;IAC7B,aAAa,EAAE,GAAG,EAAE;CACrB,CAAC;AAEF,uGAAuG;AACvG,MAAM,CAAC,MAAM,SAAS,GAAW;IAC/B,SAAS,EAAE,GAAG,EAAE;IAChB,aAAa,EAAE,GAAG,EAAE;IACpB,oBAAoB,EAAE,GAAG,EAAE;IAC3B,SAAS,EAAE,GAAG,EAAE;IAChB,WAAW,EAAE,GAAG,EAAE;IAClB,SAAS,EAAE,GAAG,EAAE;IAChB,iBAAiB,EAAE,GAAG,EAAE;IACxB,aAAa,EAAE,GAAG,EAAE;CACrB,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { CallOptions } from '@ramiidv/arca-common';
|
|
2
|
+
import { type Schema } from './mapping.js';
|
|
3
|
+
import { BasePadronClient, type PadronClientConfig } from './base-client.js';
|
|
4
|
+
import type { PersonaA10, WsAuth } from './types.js';
|
|
5
|
+
export type PadronA10ClientConfig = PadronClientConfig;
|
|
6
|
+
/**
|
|
7
|
+
* Client for ws_sr_padron_a10 - Datos básicos de un contribuyente.
|
|
8
|
+
*/
|
|
9
|
+
export declare class PadronA10Client extends BasePadronClient {
|
|
10
|
+
/**
|
|
11
|
+
* Datos básicos de un contribuyente.
|
|
12
|
+
* @param auth - Authentication object with Token, Sign, and CuitRepresentada
|
|
13
|
+
* @param cuit - CUIT/CUIL a consultar (con o sin guiones; se valida el dígito verificador)
|
|
14
|
+
* @param opts - Opciones por llamada (signal)
|
|
15
|
+
* @throws ArcaPadronServiceError si ARCA informa la CUIT inexistente, inactiva, etc.
|
|
16
|
+
*/
|
|
17
|
+
getPersona(auth: WsAuth, cuit: string | number, opts?: CallOptions): Promise<PersonaA10>;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* `persona` de A10 (WSDL personaServiceA10, orden del WSDL). Todos los
|
|
21
|
+
* elementos son `minOccurs="0"`; los `must()` son los que el SDK exige.
|
|
22
|
+
*/
|
|
23
|
+
export declare const PersonaA10Schema: Schema;
|
|
24
|
+
//# sourceMappingURL=padron-a10.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"padron-a10.d.ts","sourceRoot":"","sources":["../src/padron-a10.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAmE,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAC5G,OAAO,EAAE,gBAAgB,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAErD,MAAM,MAAM,qBAAqB,GAAG,kBAAkB,CAAC;AAEvD;;GAEG;AACH,qBAAa,eAAgB,SAAQ,gBAAgB;IACnD;;;;;;OAMG;IACG,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;CAK/F;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAe9B,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { validateCuit } from '@ramiidv/arca-common';
|
|
2
|
+
import { Dependencia, Domicilio, decodePersona, id, list, must, obj, str } from './mapping.js';
|
|
3
|
+
import { BasePadronClient } from './base-client.js';
|
|
4
|
+
/**
|
|
5
|
+
* Client for ws_sr_padron_a10 - Datos básicos de un contribuyente.
|
|
6
|
+
*/
|
|
7
|
+
export class PadronA10Client extends BasePadronClient {
|
|
8
|
+
/**
|
|
9
|
+
* Datos básicos de un contribuyente.
|
|
10
|
+
* @param auth - Authentication object with Token, Sign, and CuitRepresentada
|
|
11
|
+
* @param cuit - CUIT/CUIL a consultar (con o sin guiones; se valida el dígito verificador)
|
|
12
|
+
* @param opts - Opciones por llamada (signal)
|
|
13
|
+
* @throws ArcaPadronServiceError si ARCA informa la CUIT inexistente, inactiva, etc.
|
|
14
|
+
*/
|
|
15
|
+
async getPersona(auth, cuit, opts) {
|
|
16
|
+
const idPersona = validateCuit(cuit);
|
|
17
|
+
const result = await this.call('getPersona', { ...this.authParams(auth), idPersona }, opts);
|
|
18
|
+
return decodePersona(result, PersonaA10Schema, 'getPersona');
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* `persona` de A10 (WSDL personaServiceA10, orden del WSDL). Todos los
|
|
23
|
+
* elementos son `minOccurs="0"`; los `must()` son los que el SDK exige.
|
|
24
|
+
*/
|
|
25
|
+
export const PersonaA10Schema = {
|
|
26
|
+
apellido: str(),
|
|
27
|
+
claveInactivaAsociada: list(id()),
|
|
28
|
+
dependencia: obj(Dependencia),
|
|
29
|
+
descripcionActividadPrincipal: str(),
|
|
30
|
+
domicilio: list(obj(Domicilio)),
|
|
31
|
+
estadoClave: str(),
|
|
32
|
+
idActividadPrincipal: id(),
|
|
33
|
+
idPersona: must(id()),
|
|
34
|
+
nombre: str(),
|
|
35
|
+
numeroDocumento: str(),
|
|
36
|
+
razonSocial: str(),
|
|
37
|
+
tipoClave: str(),
|
|
38
|
+
tipoDocumento: str(),
|
|
39
|
+
tipoPersona: must(str({ minLen: 1 })),
|
|
40
|
+
};
|
|
41
|
+
//# sourceMappingURL=padron-a10.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"padron-a10.js","sourceRoot":"","sources":["../src/padron-a10.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAe,MAAM,cAAc,CAAC;AAC5G,OAAO,EAAE,gBAAgB,EAA2B,MAAM,kBAAkB,CAAC;AAK7E;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,gBAAgB;IACnD;;;;;;OAMG;IACH,KAAK,CAAC,UAAU,CAAC,IAAY,EAAE,IAAqB,EAAE,IAAkB;QACtE,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,EAAE,IAAI,CAAC,CAAC;QAC5F,OAAO,aAAa,CAAa,MAAM,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;IAC3E,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAW;IACtC,QAAQ,EAAE,GAAG,EAAE;IACf,qBAAqB,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC;IACjC,WAAW,EAAE,GAAG,CAAC,WAAW,CAAC;IAC7B,6BAA6B,EAAE,GAAG,EAAE;IACpC,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC/B,WAAW,EAAE,GAAG,EAAE;IAClB,oBAAoB,EAAE,EAAE,EAAE;IAC1B,SAAS,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,EAAE,GAAG,EAAE;IACb,eAAe,EAAE,GAAG,EAAE;IACtB,WAAW,EAAE,GAAG,EAAE;IAClB,SAAS,EAAE,GAAG,EAAE;IAChB,aAAa,EAAE,GAAG,EAAE;IACpB,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;CACtC,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { CallOptions } from '@ramiidv/arca-common';
|
|
2
|
+
import { type Schema } from './mapping.js';
|
|
3
|
+
import { BasePadronClient, type PadronClientConfig } from './base-client.js';
|
|
4
|
+
import type { ParameterRecord, WsAuth } from './types.js';
|
|
5
|
+
export type PadronA100ClientConfig = PadronClientConfig;
|
|
6
|
+
/**
|
|
7
|
+
* Respuesta (WSDL parameterServiceA100, orden del WSDL; los `must()` son los que el SDK exige).
|
|
8
|
+
* @internal Exportado para los tests de contrato.
|
|
9
|
+
*/
|
|
10
|
+
export declare const ParameterCollectionReturnSchema: Schema;
|
|
11
|
+
/**
|
|
12
|
+
* Client for ws_sr_padron_a100 - Tablas de parámetros.
|
|
13
|
+
*
|
|
14
|
+
* `id`, `description`, `name` y `value` son `xs:string` en el WSDL y se
|
|
15
|
+
* devuelven tal cual los envía ARCA (`"10.50"`, `"1E3"`, `"007"`): la
|
|
16
|
+
* respuesta se parsea sin conversión a número (ver `BasePadronClient`).
|
|
17
|
+
*/
|
|
18
|
+
export declare class PadronA100Client extends BasePadronClient {
|
|
19
|
+
/**
|
|
20
|
+
* Tabla de parámetros por nombre de colección (ver `CollectionName`).
|
|
21
|
+
* @param collectionName - Nombre de la colección (ej: "SUPA.E_PROVINCIA")
|
|
22
|
+
* @returns los registros de la tabla (`[]` si ARCA devuelve la colección vacía)
|
|
23
|
+
*/
|
|
24
|
+
getParameterCollectionByName(auth: WsAuth, collectionName: string, opts?: CallOptions): Promise<ParameterRecord[]>;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=padron-a100.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"padron-a100.d.ts","sourceRoot":"","sources":["../src/padron-a100.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAgC,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,KAAK,EAAsB,eAAe,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAE9E,MAAM,MAAM,sBAAsB,GAAG,kBAAkB,CAAC;AAIxD;;;GAGG;AACH,eAAO,MAAM,+BAA+B,EAAE,MAc7C,CAAC;AASF;;;;;;GAMG;AACH,qBAAa,gBAAiB,SAAQ,gBAAgB;IACpD;;;;OAIG;IACG,4BAA4B,CAChC,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,MAAM,EACtB,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,eAAe,EAAE,CAAC;CAsB9B"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { ArcaValidationError } from '@ramiidv/arca-common';
|
|
2
|
+
import { decode, list, must, obj, str } from './mapping.js';
|
|
3
|
+
import { BasePadronClient } from './base-client.js';
|
|
4
|
+
const METHOD = 'getParameterCollectionByName';
|
|
5
|
+
/**
|
|
6
|
+
* Respuesta (WSDL parameterServiceA100, orden del WSDL; los `must()` son los que el SDK exige).
|
|
7
|
+
* @internal Exportado para los tests de contrato.
|
|
8
|
+
*/
|
|
9
|
+
export const ParameterCollectionReturnSchema = {
|
|
10
|
+
parameterCollection: must(obj({
|
|
11
|
+
name: str(),
|
|
12
|
+
parameterList: list(obj({
|
|
13
|
+
attributeList: list(obj({ name: must(str({ minLen: 1 })), value: str() })),
|
|
14
|
+
// minOccurs=0 en el WSDL; ARCA puede mandarla vacía.
|
|
15
|
+
description: str(),
|
|
16
|
+
id: must(str({ minLen: 1 })),
|
|
17
|
+
})),
|
|
18
|
+
})),
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* Client for ws_sr_padron_a100 - Tablas de parámetros.
|
|
22
|
+
*
|
|
23
|
+
* `id`, `description`, `name` y `value` son `xs:string` en el WSDL y se
|
|
24
|
+
* devuelven tal cual los envía ARCA (`"10.50"`, `"1E3"`, `"007"`): la
|
|
25
|
+
* respuesta se parsea sin conversión a número (ver `BasePadronClient`).
|
|
26
|
+
*/
|
|
27
|
+
export class PadronA100Client extends BasePadronClient {
|
|
28
|
+
/**
|
|
29
|
+
* Tabla de parámetros por nombre de colección (ver `CollectionName`).
|
|
30
|
+
* @param collectionName - Nombre de la colección (ej: "SUPA.E_PROVINCIA")
|
|
31
|
+
* @returns los registros de la tabla (`[]` si ARCA devuelve la colección vacía)
|
|
32
|
+
*/
|
|
33
|
+
async getParameterCollectionByName(auth, collectionName, opts) {
|
|
34
|
+
if (typeof collectionName !== 'string' || collectionName.trim() === '') {
|
|
35
|
+
throw new ArcaValidationError('collectionName es obligatorio', [{ field: 'collectionName', message: 'Indicá el nombre de la colección', value: collectionName }], 'collectionName');
|
|
36
|
+
}
|
|
37
|
+
const result = await this.call(METHOD, { ...this.authParams(auth), collectionName: collectionName.trim() }, opts);
|
|
38
|
+
const { parameterCollection } = decode(result, ParameterCollectionReturnSchema, `${METHOD}.parameterCollectionReturn`);
|
|
39
|
+
return (parameterCollection.parameterList ?? []).map((p) => ({
|
|
40
|
+
id: p.id,
|
|
41
|
+
descripcion: p.description ?? '',
|
|
42
|
+
atributos: p.attributeList?.length ? p.attributeList : undefined,
|
|
43
|
+
}));
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=padron-a100.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"padron-a100.js","sourceRoot":"","sources":["../src/padron-a100.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAe,MAAM,cAAc,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAA2B,MAAM,kBAAkB,CAAC;AAK7E,MAAM,MAAM,GAAG,8BAA8B,CAAC;AAE9C;;;GAGG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAW;IACrD,mBAAmB,EAAE,IAAI,CACvB,GAAG,CAAC;QACF,IAAI,EAAE,GAAG,EAAE;QACX,aAAa,EAAE,IAAI,CACjB,GAAG,CAAC;YACF,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YAC1E,qDAAqD;YACrD,WAAW,EAAE,GAAG,EAAE;YAClB,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;SAC7B,CAAC,CACH;KACF,CAAC,CACH;CACF,CAAC;AASF;;;;;;GAMG;AACH,MAAM,OAAO,gBAAiB,SAAQ,gBAAgB;IACpD;;;;OAIG;IACH,KAAK,CAAC,4BAA4B,CAChC,IAAY,EACZ,cAAsB,EACtB,IAAkB;QAElB,IAAI,OAAO,cAAc,KAAK,QAAQ,IAAI,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACvE,MAAM,IAAI,mBAAmB,CAC3B,+BAA+B,EAC/B,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,kCAAkC,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,EACjG,gBAAgB,CACjB,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,cAAc,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QAElH,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,CACpC,MAAM,EACN,+BAA+B,EAC/B,GAAG,MAAM,4BAA4B,CACtC,CAAC;QACF,OAAO,CAAC,mBAAmB,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC3D,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,EAAE;YAChC,SAAS,EAAE,CAAC,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;SACjE,CAAC,CAAC,CAAC;IACN,CAAC;CACF"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { CallOptions } from '@ramiidv/arca-common';
|
|
2
|
+
import { type Schema } from './mapping.js';
|
|
3
|
+
import { BasePadronClient, type PadronClientConfig } from './base-client.js';
|
|
4
|
+
import type { PersonaA13, WsAuth } from './types.js';
|
|
5
|
+
export type PadronA13ClientConfig = PadronClientConfig;
|
|
6
|
+
/**
|
|
7
|
+
* Client for ws_sr_padron_a13 - Datos básicos de un contribuyente (manual v1.4).
|
|
8
|
+
*/
|
|
9
|
+
export declare class PadronA13Client extends BasePadronClient {
|
|
10
|
+
/**
|
|
11
|
+
* Datos de un contribuyente por CUIT (`getPersona`). Si la clave está
|
|
12
|
+
* inactiva, ARCA responde con error (`reason: 'inactiva'`): usá `getPersonaV2`.
|
|
13
|
+
* @param auth - Authentication object with Token, Sign, and CuitRepresentada
|
|
14
|
+
* @param cuit - CUIT/CUIL a consultar (con o sin guiones)
|
|
15
|
+
* @param opts - Opciones por llamada (signal)
|
|
16
|
+
*/
|
|
17
|
+
getPersona(auth: WsAuth, cuit: string | number, opts?: CallOptions): Promise<PersonaA13>;
|
|
18
|
+
/**
|
|
19
|
+
* Datos de un contribuyente por CUIT, aunque la clave esté INACTIVA
|
|
20
|
+
* (`getPersonaV2`, agregado en el manual v1.4).
|
|
21
|
+
*/
|
|
22
|
+
getPersonaV2(auth: WsAuth, cuit: string | number, opts?: CallOptions): Promise<PersonaA13>;
|
|
23
|
+
/**
|
|
24
|
+
* CUITs/CUILs asociados a un número de documento. Devuelve `[]` si ARCA
|
|
25
|
+
* responde sin claves.
|
|
26
|
+
* @param documento - Número de documento (se aceptan puntos y espacios: "11.709.676")
|
|
27
|
+
*/
|
|
28
|
+
getIdPersonaListByDocumento(auth: WsAuth, documento: string | number, opts?: CallOptions): Promise<string[]>;
|
|
29
|
+
}
|
|
30
|
+
/** Normaliza un número de documento: sin puntos, espacios ni guiones; solo dígitos (1 a 11). */
|
|
31
|
+
export declare function normalizarDocumento(documento: string | number): string;
|
|
32
|
+
/** `persona` de A13 (`getPersona` y `getPersonaV2`). */
|
|
33
|
+
export declare const PersonaA13Schema: Schema;
|
|
34
|
+
/** @internal Exportado para los tests de contrato. */
|
|
35
|
+
export declare const IdPersonaListReturnSchema: Schema;
|
|
36
|
+
//# sourceMappingURL=padron-a13.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"padron-a13.d.ts","sourceRoot":"","sources":["../src/padron-a13.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAwD,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AACjG,OAAO,EAAE,gBAAgB,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAErD,MAAM,MAAM,qBAAqB,GAAG,kBAAkB,CAAC;AAEvD;;GAEG;AACH,qBAAa,eAAgB,SAAQ,gBAAgB;IACnD;;;;;;OAMG;IACG,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IAM9F;;;OAGG;IACG,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IAMhG;;;;OAIG;IACG,2BAA2B,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAcnH;AAED,gGAAgG;AAChG,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAUtE;AA0BD,wDAAwD;AACxD,eAAO,MAAM,gBAAgB,EAAE,MAoB9B,CAAC;AAEF,sDAAsD;AACtD,eAAO,MAAM,yBAAyB,EAAE,MAEvC,CAAC"}
|