Docs · API DTE
Referencia de la API

Errores, anulación y preguntas frecuentes

Códigos HTTP y mensajes que puede devolver la API DTE, cómo dejar sin efecto un DTE emitido usando una nota de crédito y respuestas a las preguntas más frecuentes de integración.

Debug Anulación DTE FAQ

Errores #

Los errores devuelven { "ok": false, "error": "mensaje" } con el código HTTP correspondiente.

CódigoSignificadoCausas típicas
400Bad Requesttype inválido, falta items, receiver.rut mal formado, refs ausente en NC/ND.
401No autenticadoAPI key ausente, inválida o revocada.
403Sin permisoRol viewer intentando emitir, o key sin acceso a ese emisor.
404No encontradoEmisor inexistente/inactivo o endpoint desconocido.
405Método no permitidoVerbo HTTP incorrecto para el endpoint.
422No procesableSin certificado vigente, certificado vencido o sin folios CAF disponibles.
422 · JSON
{ "ok": false, "error": "Sin folios disponibles para Factura electrónica. Solicita folios CAF al SII." }

Anular un DTE #

No existe un endpoint de anulación. Para dejar sin efecto un documento, emite una nota de crédito (type: 61) que lo referencie en refs.

Body · JSON
{
  "type": 61,
  "receiver": { "rut": "12345678-9", "name": "Comercial Ejemplo Ltda" },
  "items": [ { "name": "Anulación factura 137", "qty": 1, "price": 292740 } ],
  "refs": [
    { "type": 33, "folio": 137, "date": "2026-07-25", "reason": "Anula documento" }
  ]
}

Preguntas frecuentes #

Dudas habituales al integrar la API de facturación electrónica.

¿Qué documentos tributarios puedo emitir con la API?

Facturas (33), facturas exentas (34), boletas (39), boletas exentas (41), facturas de compra (46), guías de despacho (52), notas de débito (56) y notas de crédito (61). El tipo se indica en el campo type del mismo endpoint POST /api/{rut}/emitir.

¿Necesito instalar mi certificado digital en mi servidor?

No. Tu certificado .p12 queda custodiado en YAMT y la firma electrónica ocurre en nuestros servidores. El certificado nunca viaja en las peticiones de la API.

¿Cómo me autentico en la API?

Con una API key con formato yamt_… enviada en el header Authorization: Bearer. Generas y revocas tus keys desde el dashboard; cada key se asocia a un emisor y a un rol (owner, editor o viewer).

¿La API calcula el IVA automáticamente?

Sí. Envías los ítems con su precio unitario en pesos y YAMT calcula neto, IVA, monto exento y total según el tipo de documento y la tasa de IVA del emisor.

¿Hay un ambiente de pruebas o sandbox?

Sí. Si el emisor está en ambiente de prueba, la emisión valida y guarda el documento localmente sin enviarlo al SII (la respuesta incluye env: "sandbox" y sii: null). El mismo código funciona luego en producción sin cambios.

¿Cómo anulo una factura electrónica emitida?

No existe un endpoint de anulación. Para dejar sin efecto un documento se emite una nota de crédito (type: 61) que lo referencia en el arreglo refs con su tipo y folio original.

¿Qué pasa si falla el envío al SII?

El DTE se guarda igualmente y la respuesta incluye un campo warning con track_id vacío. Puedes reintentar el envío con POST /api/emision_reenviar.

¿En qué lenguaje de programación puedo integrar la API?

En cualquiera que pueda hacer peticiones HTTP con cuerpo JSON: PHP, Python, Node.js, Java, .NET, Go, etc. La API es REST estándar, sin SOAP ni manejo de XML de tu lado.

← Volver al índice de la documentación