API de boleta electrónica
Boleta electrónica para integradores: un SDK en tu backend, no una API de terceros
SII SDK no es un servicio alojado: es una librería TypeScript que integras en tu propio servidor. Cada boleta va directo de tu backend al SII, sin un tercero en medio que pueda caerse, y tus certificados, folios y datos no salen de tu infraestructura. La librería valida, calcula montos, timbra con tu CAF, firma, envía y te dice si el SII la aceptó. Boletas 39 y 41 gratis en el nivel Libre.
import { emitir, consultarEstadoEnvio } from '@devlas-cl/sii'
const r = await emitir(configToken, { documento: boleta, // tipo 39, sin folio certificado, caratula: { fchResol, nroResol }, almacenCaf, // el folio sale de tu almacén})if (!r.ok) return r // nunca lanza: el error trae // el texto literal del SIIconst estado = await consultarEstadoEnvio(configToken, { canal: 'rest', trackId: r.valor.trackId, rutEmisor,})// estado.valor.veredicto: 'aceptado' | 'rechazado' | ...Qué resuelve
Todo el camino de una boleta, en una llamada
emitir reserva el folio, prepara el documento y lo sube. Cada paso también existe suelto, por si necesitas intervenir entre ellos.
Valida antes de gastar un folio
prevalidarEmision reúne lo que el SII ya demostró que rechaza o repara y lo devuelve como una lista, para avisar antes de cobrar.
Timbre y firma
Arma el XML en el orden del esquema, lo timbra con la llave del CAF, lo firma y lo valida contra el XSD oficial.
Envío por el canal correcto
La boleta va por la API REST de boletas del SII; facturas y notas por DTEUpload. Una boleta enviada por el canal equivocado se rechaza.
Veredicto real, no solo el track id
El track id solo dice que el sobre subió. consultarEstadoEnvio y veredictoFinalDeEnvio te dicen si la boleta quedó aceptada, con reparos o rechazada.
Fecha en hora de Chile
La fecha de emisión y los sellos de tiempo salen en hora de Chile. Con la fecha UTC, entre las 20:00 y las 24:00 el SII responde que la fecha no corresponde.
Sobres de hasta 500 boletas
siguienteAccionDeEnvio te dice cuándo cerrar un grupo para cumplir el plazo de una hora, y la librería arma el sobre.
Reglas del SII
Reglas de la boleta que ya vienen resueltas
No tienes que repetirlas en tu sistema. Cada una tiene su fuente en la normativa del SII o en una medición.
- Consumidor final sin RUT
- Sin receptor, la boleta se declara al consumidor final. Sobre 135 UF el RUT real del receptor es obligatorio, y también el medio de pago.
- Detalle en bruto
- La boleta lleva los precios con IVA incluido y no declara la tasa ni el monto bruto. Un descuento global se reparte en las líneas.
- Nada se recorta en silencio
- Un nombre de producto de más de 80 caracteres es un error de validación con el campo y el límite, no un texto cortado. El excedente va en la descripción.
- Una hora para llegar al SII
- Cada boleta debe llegar al SII en un plazo máximo de una hora desde que se genera (Res. Ex. SII 74/2020).
- Timbre impreso opcional
- Desde el 1 de enero de 2026 el timbre PDF417 impreso en la boleta es opcional (Res. Ex. SII 207/2025). El XML sigue llevando el timbre.
- Un folio se usa una sola vez
- Si algo falla antes de enviar, el folio vuelve al almacén. Si el envío pudo llegar, queda consumido y se consulta el estado antes de decidir.
Cuánto cuesta
Emitir boletas es gratis en el nivel Libre. Si además emites facturas, notas o guías, el nivel Facturas cuesta 16 UF al año más IVA.
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.
Libre
Gratiscon registro y contrato
Emitir boletas electrónicas afectas (39) y exentas (41).
- Boleta electrónica afecta (39) y exenta (41).
- Validación, cálculo de montos, timbre, firma, envío y consulta de estado.
- Mensajes de error en español con el texto literal del SII aparte.
- Ticket térmico y PDF con el timbre PDF417.
Preguntas
Preguntas frecuentes
¿Es una API REST alojada por Devlas?
No. SII SDK es una librería que instalas en tu proyecto y corre en tus servidores. Tu código llama a funciones tipadas y la librería habla con el SII. Tus certificados, folios y datos no pasan por Devlas, y la librería no consulta servidores de Devlas al ejecutarse.
¿Cuánto cuesta emitir boletas?
El nivel Libre, que cubre la boleta afecta (39) y la exenta (41), es gratis. Requiere registro y aceptar el contrato, igual que los demás niveles. No hay cobro por documento emitido.
¿Necesito certificarme ante el SII para emitir boletas?
Sí. Para emitir en producción con software propio, la empresa debe estar certificada ante el SII. La librería trae el ambiente de certificación para probar, y el nivel Certificador automatiza el trámite.
¿Tengo que enviar el RCOF o Resumen de Ventas Diarias?
No en producción. La Resolución Exenta SII 53 de 2022 eliminó esa obligación desde el 1 de agosto de 2022. La librería solo lo arma para el set de certificación de boleta.
¿Qué pasa si el SII no responde al enviar?
Un envío nunca se repite solo, salvo que nada haya llegado al SII (por ejemplo, un error de DNS). Ante un tiempo agotado o un corte, la librería devuelve el error tal cual y te indica consultar el estado antes de reenviar, para no duplicar ni perder el folio.
En la documentació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.