Integración con la API

Sigue los pasos para conectar tu propio software a la API de LibreDTE y empezar a facturar.

Emisión en 3 pasos

En esta lección aprenderás cómo emitir un Documento Tributario Electrónico (DTE) paso a paso utilizando la API de LibreDTE. El flujo general consta de 3 pasos obligatorios para crear el DTE:

  1. Emitir un DTE temporal.
  2. Generar el DTE real desde el temporal.
  3. Obtener el PDF del documento.
  4. (Opcional) Enviar el DTE por correo electrónico o verificar su estado.

Paso 1: Emitir un DTE temporal

Este paso permite crear un DTE en estado de borrador o cotización, sin enviarlo aún al SII.

Endpoint

POST https://libredte.cl/api/dte/documentos/emitir?normalizar=1&formato=json&links=0&email=0

Parámetros disponibles

Parámetro Tipo Descripción
normalizar int 1 para activar la normalización automática de montos (recomendado).
formato string Formato de los datos: json (por defecto), xml o yaml.
links int 1 si quieres que se retornen enlaces asociados al documento.
email int 1 si quieres que se envíe el DTE automáticamente por correo electrónico.

Ejemplo de JSON para boleta electrónica

{
  "Encabezado": {
    "IdDoc": {
      "TipoDTE": 39
    },
    "Emisor": {
      "RUTEmisor": "76123456-9"
    },
    "Receptor": {
      "RUTRecep": "11222333-4",
      "RznSocRecep": "Juan Pérez",
      "GiroRecep": "Informática",
      "DirRecep": "Domicilio de Juan 123",
      "CmnaRecep": "Santa Cruz"
    }
  },
  "Detalle": [
    {
      "NmbItem": "Conectores RJ45",
      "QtyItem": 450,
      "PrcItem": 70
    }
  ]
}
Totales e IVA

En este ejemplo no se incluyen totales ni IVA. Si tienes activada la opción normalizar=1, estos se calcularán automáticamente.


Paso 2: Generar DTE real desde el temporal

Este paso toma el documento temporal creado en el paso anterior y lo convierte en un DTE real y válido ante el SII.

Endpoint

POST https://libredte.cl/api/dte/documentos/generar?getXML=0&links=0&email=0&retry=10&gzip=0

Parámetros disponibles

Parámetro Tipo Descripción
getXML int 1 si deseas recibir el XML en la respuesta.
links int 1 para incluir enlaces al DTE.
email int 1 para enviar el documento por correo.

Body esperado

{
  "emisor": 76123456,
  "receptor": 66666666,
  "dte": 39,
  "codigo": "557ccc1706a77a212354d0f1734fd0adc"
}
Body esperado

Este body corresponde a la respuesta del endpoint de emisión temporal.


Paso 3: Obtener el PDF del DTE

Una vez generado el documento real, puedes obtener su representación visual en PDF.

Endpoint

GET https://libredte.cl/api/dte/dte_emitidos/pdf/:dte/:folio/:emisor?formato=general&papelContinuo=0

Parámetros importantes

  • formato: puede ser estandar, general o servicios_basicos.

  • papelContinuo: define el tipo de hoja:

    • 0: hoja carta
    • 80: rollo 80mm
    • 57: rollo 57mm

La respuesta será el binario del PDF.


Agregar datos personalizados

LibreDTE te permite agregar información adicional al DTE que no se envía al SII, pero sí aparece en el PDF. Ejemplos:

  • Condiciones de pago.
  • Gráficos.
  • Información interna o personalizada.

Ejemplo de datos extra

{
  "LibreDTE": {
    "extra": {
      "dte": {
        "Encabezado": {
          "IdDoc": {
            "TermPagoGlosa": "OBSERVACIONES"
          }
        }
      },
      "historial": {
        "titulo": "Consumo de Agua Potable",
        "datos": {
          "Feb": 12,
          "Mar": 11,
          "Abr": 12,
          "May": 10.5,
          "Jun": 4,
          "Jul": 5
        }
      },
      "servicios_basicos": {
        "consumos": {
          "unidad": "M3",
          "lectura_actual": 9,
          "lectura_anterior": 5.9,
          "consumo_calculado": 3.1,
          "consumo_facturado": 3,
          "limite_sobreconsumo": 40
        }
      }
    }
  }
}
On this page

Last updated on 01/08/2025 by Anonymous