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