# Boletas electrónicas (/docs/emision/boletas)

La boleta electrónica es el documento de la venta a consumidor final: sin RUT del comprador, con el
precio que la persona paga (IVA incluido) y con una página pública donde después puede consultarla.
En Facturia se emite por el mismo endpoint que una factura, con los mismos campos y los mismos
estados — lo que cambia está descrito acá.

> **En modo prueba puedes emitir boletas ahora mismo**
>
> Una empresa de prueba nace emitiendo y no necesita ninguna habilitación. Todo lo de esta página que
> habla del SII aplica sólo a producción.

## Los dos tipos [#los-dos-tipos]

| `tipo_dte` | Documento                 | Cuándo                        |
| ---------- | ------------------------- | ----------------------------- |
| 39         | Boleta electrónica afecta | Tu giro está afecto a IVA     |
| 41         | Boleta electrónica exenta | Tu giro es exento o no afecto |

Cuál te corresponde **no lo eliges tú**: lo decide el SII a partir de las actividades vigentes de tu
empresa. Si tienes al menos una actividad afecta, tu boleta es la 39; si no tienes ninguna, es la 41.
Nosotros leemos ese dato del SII al empezar la habilitación.

## Lo que cambia respecto de una factura [#lo-que-cambia-respecto-de-una-factura]

### Los precios son brutos [#los-precios-son-brutos]

En una factura escribes precios netos y el motor calcula el IVA. En una boleta escribes **el precio
que la persona paga**, con IVA incluido, y el motor deriva el neto hacia atrás. Es lo que exige el
esquema del SII para boletas (`EnvioBOLETA_v11`).

```json
{
  "empresa": "emp_01J8Z2X0000000000000000000",
  "tipo_dte": 39,
  "items": [
    { "description": "Corte de pelo", "quantity": 1, "unit_price": 11900 }
  ]
}
```

Eso emite una boleta de $11.900: neto $10.000, IVA $1.900, total $11.900.

### El receptor es opcional [#el-receptor-es-opcional]

Una boleta a consumidor final no lleva RUT del comprador. Puedes omitir `receptor` por completo:

```json
{
  "empresa": "emp_01J8Z2X0000000000000000000",
  "tipo_dte": 41,
  "items": [
    { "description": "Asesoría profesional", "quantity": 1, "unit_price": 150000 }
  ]
}
```

Si quieres identificar al comprador (te lo pidió, o lo necesitas para tu propio registro), manda
`receptor` como en cualquier otro documento. Nunca inventes `66666666-6`: si no tienes el RUT, no
mandes el campo.

### En la 41 todo va exento [#en-la-41-todo-va-exento]

En una boleta exenta cada línea se marca exenta y el total va completo a `MntExe`; no hay IVA. No
tienes que declarar nada extra: el motor lo hace por el `tipo_dte`.

## La habilitación en el SII [#la-habilitación-en-el-sii]

Para emitir boletas en producción el SII pide una **habilitación aparte** de la de facturas: es otra
aplicación, otro set de pruebas y otra declaración. Aparece como el paso `habilitacion` en tu lista
de puesta en marcha, y **sólo si declaraste 39 o 41** en `doc_types`.

```bash
curl -sS -X PATCH https://api.facturia.cl/v1/empresas/emp_01J8Z2X0000000000000000000 \
  -H "Authorization: Bearer $FACTURIA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"doc_types": [33, 34, 39, 61]}'
```

### Quién hace qué [#quién-hace-qué]

**La hacemos nosotros, con el certificado que nos entregaste.** Generamos el set de pruebas en el
sitio del SII, pedimos los folios de boleta, emitimos y enviamos el set y su reporte de consumo,
pedimos la revisión y presentamos la declaración final. No tienes que entrar al sitio del SII ni
avisarnos de nada.

Lo que sí necesitamos de ti son **dos decisiones**, cada una en su propia página:

1. **Cuándo empezar.** Al aprobar, el SII entrega los folios de boleta y empieza un plazo de **24
   horas** dentro del cual tiene que llegar todo. Ese plazo no se puede pausar ni reiniciar, así que
   el momento lo eliges tú.
2. **La Declaración de Cumplimiento.** Cuando el SII dé el visto bueno al set, le dejamos el
   formulario prellenado al representante legal — con la página pública de consulta y los datos del
   proveedor de software — para que la revise y la presente en un clic.

Entre medio no hay nada que hacer. La revisión del set la hace el SII de forma automática: en la
certificación de CONNECT SPA del 4 de septiembre de 2026 tardó 26 segundos, y el trámite completo
—set, folios, envío, revisión y declaración— tomó 31 minutos.

### Los datos que te pedimos antes de empezar [#los-datos-que-te-pedimos-antes-de-empezar]

Para armar el set de pruebas necesitamos dos cosas tuyas, y te las pedimos **antes** de que empiece el
plazo de 24 horas, porque después ya no se puede pausar:

* **Diez boletas de muestra de tu giro.** El SII pide diez documentos «que simulan operaciones reales»
  — los servicios o productos que efectivamente vendes, con sus precios reales (brutos).
* **El folio de notificación del libro de boletas.**

Se cargan con `POST /v1/empresas/{id}/onboarding/certification/inputs`.

### Cómo saber en qué va [#cómo-saber-en-qué-va]

`GET /v1/empresas/{id}/onboarding` muestra el paso `habilitacion` con su estado y, cuando toca una de
las dos decisiones, con el enlace a la página donde se toma. No hay que preguntar por correo ni
adivinar: el paso siempre dice qué falta y quién lo tiene que hacer.

## La página pública de consulta [#la-página-pública-de-consulta]

El SII exige que cada boleta impresa señale un sitio web donde el comprador pueda consultarla. La
publicamos nosotros y la declaramos al SII por ti:

```
https://ver.facturia.cl/b/{rut-de-tu-empresa}
```

Sale impresa en la representación de cada boleta que emitas y no requiere ninguna credencial para
abrirse. Es la misma dirección que va en la Declaración de Cumplimiento, así que cambia sólo si nos
lo pides antes de presentarla.

## Los estados [#los-estados]

Las boletas viajan al SII por un transporte distinto al de las facturas — REST en vez de SOAP, con su
propio token — pero eso es invisible: el mismo `GET /v1/documents/{id}` y los mismos estados. La única
diferencia que importa es que en boletas **no existe una consulta por documento**: el SII contesta por
lote, y de esa respuesta leemos cuántos documentos aceptó, cuántos reparó y cuántos rechazó. Eso es lo
que decide el estado de tu boleta, nunca la palabra del sobre.

## El resumen diario de ventas (RVD) [#el-resumen-diario-de-ventas-rvd]

Es voluntario y no lo mandamos. La Resolución Exenta SII N° 53 del 09.06.2022 eliminó la obligación de
enviar el Resumen de Ventas Diarias; el propio SII lo dice cuando uno llega igual («Envío de RVD no es
obligatorio desde agosto 2022»). El código está listo por si tu Dirección Regional te lo pide a ti en
particular.

## Boletas en una empresa del canal `sfg` [#boletas-en-una-empresa-del-canal-sfg]

**Sí se puede, y salen por nuestro motor.** El formulario de emisión del Sistema de Facturación
Gratuito del SII nunca tuvo boletas — y eso es un hecho sobre el portal, no sobre tu empresa. Una
boleta no pasa por ahí: la construye, la firma y la envía el motor propio de Facturia por el mismo
camino REST que describe esta página, exactamente igual que la de una empresa del canal `mercado`.

Dicho de otro modo, **el canal se decide por tipo, no por empresa**: los tipos 33/34/52/56/61 de una
empresa `sfg` viajan por el Portal MIPYME, y sus 39/41 viajan por nuestro motor. No hay nada que
cambiar en la empresa, y cambiarle el `emission_channel` a `mercado` para emitir boletas sería
justamente lo que no hay que hacer: le quitaría a sus facturas el carril gratuito.

Lo que sí hace falta es la **habilitación de boletas del SII** y el primer CAF de la 39/41. Los dos
son pasos del onboarding (`habilitacion` y `folios`, que sólo aparecen si declaraste boletas), la
cadena la corremos nosotros de principio a fin con el certificado en custodia, y de tu lado son dos
aprobaciones: cuándo empezar y la declaración final. Mientras no estén:

* `GET /v1/empresas/{id}` no lista la 39 ni la 41 en `capabilities.tipos`;
* `POST /v1/documents` con `tipo_dte: 39` responde `422 empresa_not_emitting` nombrando el paso
  `habilitacion` — no `tipo_not_available_for_channel`, porque no es que el carril no pueda, es que
  el SII todavía no autoriza;
* y tus facturas siguen saliendo con total normalidad: la habilitación de boletas no las detiene.

El único tipo que el canal `sfg` sigue rechazando con `tipo_not_available_for_channel` es la factura
de compra (46): ahí el SII se niega a abrir su propio formulario a una empresa sin autorización de
agente retenedor.
