---
title: "Paso 3: Armar el sobre (obligatorio)"
description: "Qué es el sobre (EnvioBOLETA para las boletas y EnvioDTE para los demás documentos), cómo crearlo con dispatcher/create y cómo dirigirlo al SII."
type: "academy"
category: "lesson"
tags: []
authors: [Anonymous]
date: "2026-11-05"
last_update: "2026-11-05"
time_minutes: 6
draft: false
unlisted: false
url: "https://www.apigateway.cl/academy/emision-de-dte/emision/paso-3-armar-el-sobre"
---

# Paso 3: Armar el sobre (obligatorio)

El SII no recibe documentos sueltos: recibe un **sobre** que contiene uno o más documentos. Las facturas, notas y guías van en un sobre `EnvioDTE` y las boletas en un sobre `EnvioBOLETA`. Los dos se crean con la misma operación, `dispatcher/create`, que elige el tipo según el documento (ver [Un sobre por tipo de documento](#un-sobre-por-tipo-de-documento)).

El sobre tiene una **carátula** con:

| Dato de la carátula | Qué es | De dónde sale |
|---------------------|--------|---------------|
| `RutEmisor` | RUT de la empresa emisora | `emisor.rut` |
| `RutEnvia` | RUT de la persona que envía | El certificado digital |
| `RutReceptor` | A quién va dirigido el sobre | `receptor.rut` (ver abajo) |
| `FchResol` y `NroResol` | Resolución de autorización del emisor | `emisor.autorizacion_dte` |
| `SubTotDTE` | Cuántos documentos de cada tipo lleva | Se calcula solo |

El sobre también se **firma** con el certificado digital.

## Crear el sobre para el SII

```
POST https://app.apigateway.cl/api/v2/libredte/billing/document/dispatcher/create
```

```json
{
    "parameters": {
        "bag": {
            "xmlDocument": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iSVNPLTg4NTktMSI/Pgo8RFRF...",
            "certificate": {
                "certificate": "-----BEGIN CERTIFICATE-----\nMIIG...\n-----END CERTIFICATE-----",
                "privateKey": "-----BEGIN PRIVATE KEY-----\nMIIE...\n-----END PRIVATE KEY-----"
            },
            "emisor": {
                "rut": "88888888-8",
                "razon_social": "Mi Empresa SpA",
                "autorizacion_dte": {
                    "fecha_resolucion": "2025-11-20",
                    "numero_resolucion": 0
                }
            },
            "receptor": {
                "rut": "60803000-K"
            }
        }
    }
}
```

| Campo | Qué es |
|-------|--------|
| `xmlDocument` | El `document_xml` del [paso 1](https://www.apigateway.cl/academy/emision-de-dte/emision/paso-1-construir-el-dte), en base64. |
| `certificate` | El certificado con que se firma el sobre. |
| `emisor.autorizacion_dte` | La resolución del emisor: en **certificación**, número `0` y la fecha que muestra el SII en ese ambiente; en **producción**, el número y la fecha de la resolución real. |
| `receptor.rut` | A quién va dirigido el sobre. Para el SII usa `60803000-K`, el RUT del SII. |

## ¿Dónde obtengo la fecha y el número de resolución?

Son datos del emisor que entrega el SII, y cada ambiente tiene los suyos. Puedes obtenerlos de dos formas:

**Con la API**, consultando el estado de autorización del emisor:

```bash
# Producción
curl https://app.apigateway.cl/api/v2/sii/dte/contribuyentes/autorizado/88888888-8 \
  -H "Authorization: Token $API_TOKEN"

# Certificación
curl "https://app.apigateway.cl/api/v2/sii/dte/contribuyentes/autorizado/88888888-8?certificacion=1" \
  -H "Authorization: Token $API_TOKEN"
```

La resolución viene en `data.resolucion`. Esta es la respuesta en certificación:

```json
{
    "data": {
        "rut": "88888888-8",
        "autorizado": true,
        "resolucion": {
            "numero": 0,
            "fecha": "2025-11-20"
        }
    }
}
```

Usa `resolucion.fecha` como `fecha_resolucion` y `resolucion.numero` como `numero_resolucion`. En certificación el número siempre es `0`.

**En el sitio del SII**, buscando al emisor por su RUT en el listado de empresas autorizadas: [certificación](https://maullin.sii.cl/cvc/dte/ee_empresas_dte.html) o [producción](https://palena.sii.cl/cvc/dte/ee_empresas_dte.html).

> [!TIP] Consúltala una vez y guárdala
>
> La resolución no cambia de un envío a otro. Consúltala una vez por emisor y ambiente, y guárdala en la configuración de la empresa. Más detalles en [Resolución de autorización](https://www.apigateway.cl/academy/emision-de-dte/fundamentos/resolucion-de-autorizacion).

## La respuesta

Esta es la respuesta para el sobre del ejemplo. Los valores largos están acortados con `...`, y de `documents` se muestran solo los campos propios del sobre: el resto es igual a la [respuesta de `builder/build`](https://www.apigateway.cl/academy/emision-de-dte/emision/paso-1-construir-el-dte#la-respuesta).

```json
{
    "data": {
        "tag": "EnvioDTE",
        "xml": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0i...",
        "documents": [
            {
                "document_id": "88888888-8_T033F000000001",
                "document_xml": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iSVNPLTg4NTktMSI/Pgo8RFRF...",
                "document_auth": {
                    "FchResol": "2025-11-20",
                    "NroResol": 0
                },
                "...": "los demás campos de builder/build (ver el paso 1)"
            }
        ],
        "caratula": {
            "@attributes": {
                "version": "1.0"
            },
            "RutEmisor": "88888888-8",
            "RutEnvia": "11222333-9",
            "RutReceptor": "60803000-K",
            "FchResol": "2025-11-20",
            "NroResol": 0,
            "TmstFirmaEnv": "2026-10-30T09:23:51",
            "SubTotDTE": [
                {
                    "TpoDTE": 33,
                    "NroDTE": 1
                }
            ]
        }
    }
}
```

| Campo | Qué es | ¿Guardarlo? |
|-------|--------|-------------|
| `xml` | **El sobre firmado, en base64.** Es lo que enviarás al SII en el [paso 4](https://www.apigateway.cl/academy/emision-de-dte/emision/paso-4-enviar-al-sii). | Sí, siempre |
| `tag` | El tipo de sobre: `EnvioDTE`, o `EnvioBOLETA` si son boletas. | No |
| `caratula` | La carátula del sobre: emisor, quién envía (`RutEnvia`, el RUT del certificado), a quién va dirigido, la resolución, la fecha de firma y cuántos documentos de cada tipo lleva (`SubTotDTE`). | Opcional |
| `documents` | Los documentos que van dentro del sobre, con los mismos campos que entrega [`builder/build`](https://www.apigateway.cl/academy/emision-de-dte/emision/paso-1-construir-el-dte#la-respuesta). `document_auth` trae la resolución que indicaste. | No |

> [!WARNING] Guarda solo lo necesario
>
> Cada documento de `documents` incluye los datos del certificado, con su llave privada (`certificate.pkey`). No guardes la respuesta completa en tu base de datos ni en tus logs: guarda el `xml` del sobre.

## Varios documentos en un sobre

Si emites muchos documentos a la vez, puedes enviarlos en un solo sobre con `dispatcher/createMany`. Recibe una lista de bolsas en el parámetro `bags`, todas del **mismo emisor**:

```json
{
    "parameters": {
        "bags": [
            {
                "xmlDocument": "...DTE 1 en base64...",
                "certificate": { "certificate": "...", "privateKey": "..." },
                "emisor": { "rut": "88888888-8", "razon_social": "Mi Empresa SpA", "autorizacion_dte": { "fecha_resolucion": "2025-11-20", "numero_resolucion": 0 } },
                "receptor": { "rut": "60803000-K" }
            },
            {
                "xmlDocument": "...DTE 2 en base64..."
            }
        ]
    }
}
```

El certificado, el emisor y el receptor del sobre se toman de la primera bolsa.

> [!TIP] ¿Uno por sobre o varios?
>
> Para empezar, usa **un documento por sobre**: es más simple saber qué documento tiene cada Track ID, y si el SII rechaza uno no afecta a los demás. Agrupa documentos en un sobre solo cuando el volumen lo justifique.

## Un sobre por tipo de documento

La llamada es la misma para todos los documentos: envía en `xmlDocument` el `document_xml` del documento, sea una factura o una boleta. La API elige el tipo de sobre y lo informa en `tag`:

| Documento en `xmlDocument` | `tag` de la respuesta | `caratula.SubTotDTE` | Se envía con (paso 4) |
|----------------------------|-----------------------|----------------------|-----------------------|
| Factura, nota o guía | `EnvioDTE` | `[{ "TpoDTE": 33, "NroDTE": 1 }]` | `sii_dte/sendXmlDocument` |
| Boleta | `EnvioBOLETA` | `[{ "TpoDTE": 39, "NroDTE": 1 }]` | `sii_boleta/sendXmlDocument` |

El resto de la respuesta tiene los mismos campos en los dos casos.

Un sobre lleva solo boletas o solo los demás DTE, nunca ambos. Si intentas juntarlos (por ejemplo, con `createMany`, ver [Varios documentos en un sobre](#varios-documentos-en-un-sobre)), la API responde:

```
El tipo de documento Factura electrónica no se puede agregar a un sobre de tipo ENVIO_BOLETA.
```


---
Última actualización el 05/11/2026

