WSCDC
ARCA CDC
@ramiidv/arca-cdc@0.8.2
SDK para verificar si un comprobante, propio o de un tercero, fue autorizado por ARCA mediante CAE, CAI o CAEA. Todas las operaciones son consultas: no modifican nada y se pueden reintentar.
npm install @ramiidv/arca-cdc@0.8.2import { readFileSync } from "node:fs";
import { ArcaCdc } from "@ramiidv/arca-cdc";
const cdc = new ArcaCdc({
cuit: 20123456786, // CUIT representada (quien consulta)
// certs/ en el .gitignore: nunca subas la clave
cert: readFileSync("./certs/certificado.crt", "utf-8"),
key: readFileSync("./certs/clave.key", "utf-8"),
});
const r = await cdc.constatar({
cbteModo: "CAE", // CAE | CAI | CAEA
cuitEmisor: 30712345671, // quien emitió el comprobante
ptoVta: 1,
cbteTipo: 1, // Factura A
cbteNro: 150,
cbteFch: "20260315",
impTotal: 12100,
codAutorizacion: "73429843294823",
docTipoReceptor: 80,
docNroReceptor: 20123456786,
});
console.log(r.resultado, r.observaciones); // "A" constatadoCaracterísticas
Qué incluye CDC
Constatación
constatar con cbteModo (CAE, CAI o CAEA), cuitEmisor, punto de venta, tipo, número, fecha, importe y código de autorización.
Rechazo o error
resultado A/R con observaciones. Los errores de formato, autenticación o infraestructura se lanzan como ArcaServiceError: no parecen un rechazo.
Validación local
CUIT con dígito verificador, rangos, fecha existente desde 2013, receptor con CUIT en comprobantes A y MiPyME, y código de autorización de 14 dígitos antes de llamar a ARCA.
Tablas de referencia
Modalidades, tipos de comprobante, tipos de documento y tipos de opcionales. status() sin autenticación.
Producción con TLS legacy
El host de producción negocia DH de 1024 bits y funciona con el fallback TLS legacy de arca-common.
Instalá @ramiidv/arca-cdc
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.