Saltar al contenido

SDK para Node.js y TypeScript

El SDK de facturación electrónica del SII para Node.js y TypeScript

Una librería, no un servicio: la instalas como dependencia y corre dentro de tu backend. Emites boletas, facturas, notas y guías sin depender de una API de terceros en cada documento, y tus certificados y datos nunca salen de tu servidor. Tipos estrictos, resultados en vez de excepciones y el texto del SII siempre literal.

emitir.ts
import { mensajeParaUsuario } from '@devlas-cl/comun'import { emitir } from '@devlas-cl/sii'
const r = await emitir(configToken, { documento, certificado, caratula, almacenCaf })
if (!r.ok) {  // r.error.codigo:     'VALIDACION' | 'TRANSPORTE' | 'LIMITE_SESIONES' | ...  // r.error.accion:     'reintentar' | 'esperar' | 'corregir' | 'tramitar' | 'escalar'  // r.error.mensajeSii: el texto literal del SII (null si nace en la librería)  const { titulo, queHacer } = mensajeParaUsuario(r.error)  return avisar(titulo, queHacer)}guardar(r.valor.dte.xml, r.valor.trackId)

Para desarrolladores

Diseñado para integrarse, no para encerrarte

Todo lo que varía entre instalaciones entra por cuatro puertos que implementas con tu infraestructura. Sin estado global: puedes correr varias instancias en un proceso y varias réplicas sin que se pisen.

Resultado tipado

Cada operación devuelve Resultado<T, ErrorSii>. Nada lanza por datos tuyos ni del SII; el error dice qué hacer con un código cerrado.

Cuatro puertos

Http, AlmacenSesion con Bloqueos, AlmacenCaf y Registro. Los implementas con Redis, Postgres o lo que uses.

Importa solo lo que usas

Piezas puras, llamadas al SII y recetas en paquetes separados, con dependencias en un solo sentido.

Partes que corren en el navegador

Validación, montos, errores e impresión sin APIs de Node, para tu POS en Electron o Capacitor.

Validado contra el XSD

Cada documento se valida contra el esquema oficial antes de enviarse, y los largos del XSD nunca se recortan en silencio.

Rápido

Medido en un equipo local (no es una promesa para tu infraestructura): una boleta se genera en alrededor de 1 ms y un lote de 1.000 en medio segundo.

Paquetes

Qué instalas según tu nivel

Paquetes @devlas-cl por nivel
CaracterísticaLibreFacturasAutoCAFCertificador
Paquetes @devlas-cl
comunResultado, ErrorSii, los puertos (Http, AlmacenSesion, Bloqueos, AlmacenCaf, Registro) y mensajeParaUsuario.IncluidoIncluidoIncluidoIncluido
dominioModelo canónico del documento, RUT, fecha tributaria en hora de Chile y cálculo de montos.IncluidoIncluidoIncluidoIncluido
xmlArmar, timbrar, firmar y validar contra el XSD: prepararDte, prepararSobre, prevalidarEmision, leerCaf.IncluidoIncluidoIncluidoIncluido
protocoloLectores puros de las respuestas del SII, catálogo de errores, veredictos y políticas de consulta y envío.IncluidoIncluidoIncluidoIncluido
siiLas llamadas al SII: emitir, enviarBoletas, enviarDte, consultarEstadoEnvio, consultarEstadoDte, RCV y reclamos.IncluidoIncluidoIncluidoIncluido
solucionesRecetas que juntan lo anterior: habilitar, diagnosticarEmisor, resumirFoliosCaf.IncluidoIncluidoIncluidoIncluido
impresionTicket térmico, PDF en rollo u hoja y timbre PDF417.IncluidoIncluidoIncluidoIncluido
foliosautoCaf, pedirCaf, reobtenerCaf, anularFolios, consultarTopeFolios y llamadasFoliosDeSii.No incluidoNo incluidoIncluidoIncluido
certificacionMotor de certificación (avanzarCorrida, crearPasosSii), sets, libros, muestras y habilitación.No incluidoNo incluidoNo incluidoIncluido
Sin persistencia propia
La librería no guarda XML, folios, sesiones ni estados. Tú decides dónde: así cumples la obligación de conservar los documentos 6 años en tu propia base.
El reloj es un parámetro
Las funciones puras reciben la hora y las llamadas un Reloj. Las pruebas son deterministas y la fecha tributaria sale en hora de Chile.
Sin reintentos ocultos
Las lecturas repiten con una política visible; los envíos nunca se repiten solos salvo que nada haya llegado al SII.
Mensajes en español
mensajeParaUsuario entrega título, qué hacer y el detalle literal del SII para cada código, listo para tu interfaz.

Cuánto cuesta

Con el nivel Facturas emites boletas, facturas afectas y exentas, notas de crédito y débito y guías de despacho por 16 UF al año más IVA. Las boletas solas son gratis en el nivel Libre.

Los niveles son acumulativos (Libre, Facturas, AutoCAF y Certificador): cada precio es el total, anual y más IVA, y no cambia según cuántos clientes finales atiendas. Ver qué trae cada nivel.

Facturas

16 UFal año, más IVA

Todo Libre, más el resto de los documentos tributarios.

Crear cuenta
  • Factura afecta (33) y exenta (34).
  • Notas de crédito (61) y de débito (56).
  • Guía de despacho (52).
  • Libros electrónicos de ventas y compras.
  • Intercambio entre contribuyentes y Registro de Compras y Ventas (RCV).

Preguntas

Preguntas frecuentes

¿Qué versión de Node.js necesito?

Node.js 24 o superior. Los paquetes son solo ESM y se publican compilados a JavaScript con sus tipos de TypeScript.

¿Puedo usarlo desde un proyecto CommonJS?

Sí, con import dinámico dentro de una función async, por ejemplo await import('@devlas-cl/xml'). En TypeScript con CommonJS necesitas moduleResolution node16 o nodenext.

¿Funciona en el navegador, Electron o Capacitor?

Una parte sí: validar datos, calcular montos, el catálogo de errores y la impresión corren sin APIs de Node. La firma, los certificados y la comunicación con el SII son solo de servidor.

¿Qué relación tiene con @devlas/dte-sii?

@devlas/dte-sii fue la librería pública anterior de Devlas. SII SDK es un motor nuevo que reemplazó a esa librería como motor de emisión de Devlas POS y mantiene paridad de salida byte a byte con ella en los documentos de referencia.

¿Está en npmjs.com?

No. Es software de licencia comercial (con un nivel gratuito para boletas) que se distribuye por GitHub Packages bajo el scope @devlas-cl, con un token personal ligado a tu registro. Para emitir no depende de la licencia; AutoCAF y el Certificador traen una llave de licencia firmada que se verifica sin conexión.

SII SDK es un producto de Devlas SpA. No es un producto del Servicio de Impuestos Internos, no está afiliado a él ni cuenta con su aval. Las cifras y comportamientos del SII que se citan fueron medidos por Devlas en el ambiente de certificación salvo que se indique otra cosa.