ws_sr_constancia_inscripcion · ws_sr_padron_a4 · ws_sr_padron_a10 · ws_sr_padron_a13 · ws_sr_padron_a100

ARCA Padrón

@ramiidv/arca-padron@0.9.1

SDK para los web services de Padrón de ARCA. Constancia de inscripción, datos completos y básicos de contribuyentes, tablas de parámetros, y la condición frente al IVA para facturar. CUIT validada localmente y errores de negocio tipados.

npm install @ramiidv/arca-padron@0.9.1
TypeScript
import { readFileSync } from "node:fs";
import { ArcaPadron, FileTicketStorage, condicionIvaDesdePadron } from "@ramiidv/arca-padron";

const padron = new ArcaPadron({
  cuit: "20123456786",
  // certs/ en el .gitignore: nunca subas la clave
  cert: readFileSync("./certs/certificado.crt", "utf-8"),
  key: readFileSync("./certs/clave.key", "utf-8"),
  ticketStorage: new FileTicketStorage("./.arca-tickets"),
});

// Constancia de inscripción + condición frente al IVA
const constancia = await padron.getConstanciaInscripcion("30712345671");
const { condicionIva, motivo } = condicionIvaDesdePadron(constancia);
console.log(constancia.domicilioFiscal);  // Domicilio fiscal

// Datos completos (A4)
const persona = await padron.getPersona("20-11111111-2");
console.log(persona.tipoPersona, persona.nombre);

Características

Qué incluye Padrón

Constancia de inscripción

Domicilio fiscal, impuestos, actividades y monotributo (reemplaza a A5). Hasta 250 CUITs por consulta con getConstanciasInscripcion: una CUIT inválida no hace fallar el lote.

Condición frente al IVA

condicionIvaDesdePadron devuelve el CondicionIVAReceptorId que pide la factura, con un aviso si la constancia tiene observaciones de ARCA.

Datos completos (A4)

Nombre, CUIT, domicilios, impuestos, actividades, regímenes, relaciones.

Datos básicos (A10)

Consulta rápida con nombre, tipo, estado y actividad principal.

Datos básicos (A13)

Datos básicos, claves inactivas (getPersonaA13V2) y búsqueda de CUIT por número de documento.

Tablas de parámetros (A100)

Provincias, tipos de documento, tipos de domicilio, organismos y más.

Errores tipados

ArcaPadronServiceError con reason (inexistente, inactiva, ...). Una CUIT inválida falla antes de llamar a ARCA.

Health check

status() consulta todos los servicios en paralelo y devuelve { ok, status } o { ok, error } por servicio: uno caído no oculta a los demás.

Instalá @ramiidv/arca-padron

TypeScript nativo, Node.js 22.12+, sin librerías SOAP: las únicas dependencias externas son fast-xml-parser y node-forge (vía arca-common). Gratis, open source, MIT.