SIRE
ARCA SIRE
@ramiidv/arca-sire@0.7.2
SDK para el web service SIRE de ARCA: emisión y anulación de certificados de retención electrónicos de IVA (formulario C2005, RG 4523/2019). Cubre las tres operaciones del servicio: emitirCertificado, anularCertificado y status.
npm install @ramiidv/arca-sire@0.7.2import { readFileSync } from "node:fs";
import { ArcaSire, Condicion, TipoComprobante } from "@ramiidv/arca-sire";
const sire = new ArcaSire({
cuit: "20123456786", // CUIT del agente de retención
// certs/ en el .gitignore: nunca subas la clave
cert: readFileSync("./certs/certificado.crt", "utf-8"),
key: readFileSync("./certs/clave.key", "utf-8"),
});
const { certificadoNro, codigoSeguridad } = await sire.emitirCertificado({
codigoTrazabilidad: "OP-2026-000123", // tu identificador (opcional)
regimen: 831,
condicion: Condicion.INSCRIPTO,
fechaRetencion: "2026-10-30T11:16:00", // hora de Argentina
imposibilidadRetencion: false,
importeRetencion: 2100,
importeBaseCalculo: 20000,
regimenExclusion: false,
tipoComprobante: TipoComprobante.FACTURA,
fechaComprobante: "2026-10-30",
numeroComprobante: "00003-00008497",
importeComprobante: 24200,
cuitRetenido: "30500010912",
});Características
Qué incluye SIRE
Emitir certificado
emitirCertificado devuelve certificadoNro y codigoSeguridad para imprimir el certificado desde el micrositio SIRE.
Anular certificado
anularCertificado con el motivo de la tabla del manual (MotivoAnulacion).
Estado del servicio
status() consulta appserver, dbserver y authserver sin autenticación, y devuelve el ambiente al que apunta.
Validación local
Obligatorios, condicionales, longitudes, reglas de fechas del manual, número de comprobante y CUIT con dígito verificador, todo junto en un ArcaValidationError.
Emisión segura
emitir y anular nunca se reintentan: un rechazo de SIRE lanza ArcaSireServiceError (un ArcaRechazoError) y los errores de transporte quedan como uncertain (incierto: no se sabe si ARCA procesó la operación).
Tablas del manual
TipoComprobante, Condicion, MotivoAnulacion y REGIMENES_CON_CONDICION. SIRE no tiene operaciones de consulta.
Instalá @ramiidv/arca-sire
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.