Notta Docs

Boleta afecta (39)

Emisión B2C por el pipeline REST de boletas — receptor opcional, IVA incluido en el precio y batch de hasta 1.000 documentos.

El tipo_dte 39 es la Boleta Electrónica afecta a IVA, el documento B2C para consumidor final. Esta es la página canónica de campos para boletas: la Boleta exenta (41) documenta solo su delta. Las boletas comparten conceptos con las facturas, pero corren por un pipeline propio — REST del SII en vez de SOAP — con endpoint y recurso propios.

Endpoint propio

Las boletas se emiten con POST /api/v1/boletas, no con POST /api/v1/dtes. El recurso vive bajo /api/v1/boletas/{id} y el response de emisión trae links solo a self y xml.

Campos del request

CampoTipoRequeridoDescripción / constraint
tipo_dtenumber39
rut_emisorstringRUT canónico BODY-DV sin puntos (76123456-0)
rut_receptorstringnoConsumidor anónimo por defecto — si no lo mandas, Notta registra el RUT genérico 66666666-6
razon_social_receptorstringnoMínimo 1 carácter si lo mandas
fecha_emisionstringFormato YYYY-MM-DD
itemsarrayEntre 1 y 60 items, mismo shape que facturas (nombre, cantidad, precio_unitario, exento, monto_item)
monto_netointnoDerivado del total si no lo mandas
ivaintnoDerivado: monto_total − monto_neto
monto_totalintnoDefault: suma de monto_item
certificate_idstring (UUID)noCertificado digital específico; por defecto el activo de la organización
sii_env"cert" | "prod"noDefault "cert"

Dos diferencias clave contra las facturas: no hay objeto receptor (los campos del receptor van planos y opcionales) y no hay references. El IVA va incluido en el precio — monto_total es la suma de los items, y Notta deriva monto_neto = round(total / 1.19) e iva = total − neto.

Request

curl -X POST https://app.notta.cl/api/v1/boletas \
  -H "Authorization: Bearer ntt_cert_..." \
  -H "X-Cert-Id: 01957a91-0b50-7000-8000-cccc00000001" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
    "tipo_dte": 39,
    "rut_emisor": "76123456-0",
    "fecha_emision": "2026-05-13",
    "items": [{
      "nombre": "Producto mostrador",
      "cantidad": 2,
      "precio_unitario": 5950,
      "exento": false,
      "monto_item": 11900
    }]
  }'

El X-Cert-Id es el id de tu certificado (paso 1 del quickstart o dashboard).

Response

202 Accepted — el pipeline REST firma y sube la boleta en background:

{
  "id": "01957a91-0b50-7000-8000-000000000039",
  "tipo_dte": 39,
  "folio": 8801,
  "status": "queued",
  "sii_status": "queued",
  "rut_emisor": "76123456-0",
  "rut_receptor": "66666666-6",
  "monto_neto": 10000,
  "monto_exento": 0,
  "iva": 1900,
  "monto_total": 11900,
  "fecha_emision": "2026-05-13",
  "sii_env": "cert",
  "links": {
    "self": "/api/v1/boletas/01957a91-0b50-7000-8000-000000000039",
    "xml": "/api/v1/boletas/01957a91-0b50-7000-8000-000000000039/xml"
  }
}

Para seguir el estado, consulta links.self con GET — los estados son los mismos de la familia DTE: ver Estados SII. El XML firmado queda disponible en links.xml apenas el pipeline firma el documento.

Emisión masiva (batch)

Para volúmenes de punto de venta existe POST /api/v1/boletas/batch, que acepta hasta 1.000 boletas por llamada. El avance se consulta con GET /api/v1/boletas/batch/{id}; el detalle completo está en la referencia API de boletas.

Próximos pasos

Última actualización

En esta página