Facturiadocs
Issuing

Electronic boletas

Issuing boletas 39 and 41 end to end — the SII habilitación, the optional receptor, gross prices and the public lookup page.

A boleta electrónica is the receipt for a sale to a final consumer: no buyer RUT, the price the person actually pays (VAT included), and a public page where they can look it up afterwards. In Facturia you issue one through the same endpoint as an invoice, with the same fields and the same states — what differs is described here.

In test mode you can issue boletas right now

A test empresa is born emitting and needs no habilitación at all. Everything on this page about the SII applies to production only.

The two types

tipo_dteDocumentWhen
39Boleta afecta (VAT)Your line of business is subject to VAT
41Boleta exentaYour line of business is exempt or not subject to VAT

Which one applies is not your choice: the SII decides it from your empresa's registered activities. With at least one VAT-liable activity your boleta is the 39; with none, it is the 41. We read that from the SII when the habilitación starts.

What differs from an invoice

Prices are gross

On an invoice you write net prices and the engine computes VAT. On a boleta you write the price the person pays, VAT included, and the engine derives the net backwards. That is what the SII's boleta schema (EnvioBOLETA_v11) requires.

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

That issues a boleta of $11,900: net $10,000, VAT $1,900, total $11,900.

The receptor is optional

A boleta to a final consumer carries no buyer RUT. You can omit receptor entirely:

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

If you do want to identify the buyer (they asked, or you need it for your own records), send receptor as on any other document. Never invent 66666666-6: if you do not have the RUT, do not send the field.

On the 41 everything is exempt

On an exempt boleta every line is marked exempt and the whole total goes to MntExe; there is no VAT. You declare nothing extra — the engine does it from the tipo_dte.

The SII habilitación

To issue boletas in production the SII requires a separate habilitación from the invoice one: a different application, a different test set and a different declaration. It shows up as the habilitacion step on your onboarding checklist, and only if you declared 39 or 41 in doc_types.

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]}'

Who does what

We do it, with the certificate you gave us. We generate the test set on the SII's site, request the boleta folios, issue and upload the set and its folio-consumption report, request the review and file the final declaration. You never have to visit the SII's site or tell us anything.

What we do need from you are two decisions, each on its own page:

  1. When to start. On approval the SII hands over the boleta folios and a 24-hour window opens inside which everything has to land. That window cannot be paused or restarted, so the moment is yours to choose.
  2. The Declaración de Cumplimiento. Once the SII approves the set, we hand the legal representative a pre-filled form — with the public lookup page and the software provider already in it — to review and file in one click.

In between there is nothing to do. The SII reviews the set automatically: on CONNECT SPA's certification of 4 September 2026 it took 26 seconds, and the whole procedure — set, folios, upload, review and declaration — took 31 minutes.

What we ask you for before starting

To build the test set we need two things from you, and we ask before the 24-hour window opens, because afterwards it cannot be paused:

  • Ten sample boletas from your line of business. The SII asks for ten documents that «simulate real operations» — the services or products you actually sell, at their real (gross) prices.
  • The notification folio for the boleta ledger.

Both are loaded with POST /v1/empresas/{id}/onboarding/certification/inputs.

How to see where it stands

GET /v1/empresas/{id}/onboarding shows the habilitacion step with its status and, when one of the two decisions is due, the link to the page where it is taken. Nobody has to ask by e-mail or guess: the step always says what is missing and who has to do it.

The public lookup page

The SII requires every printed boleta to name a website where the buyer can look it up. We publish it and declare it to the SII for you:

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

The placeholder is your empresa's RUT. The address is printed on the representation of every boleta you issue and needs no credentials to open. It is the same one that goes into the Declaración de Cumplimiento, so it changes only if you ask us before we file it.

States

Boletas travel to the SII over a different transport from invoices — REST rather than SOAP, with its own token — but that is invisible: the same GET /v1/documents/{id} and the same states. The one difference that matters is that boletas have no per-document query: the SII answers per batch, and from that answer we read how many documents it accepted, flagged and rejected. That is what decides your boleta's state, never the envelope's own word.

The daily sales summary (RVD)

It is voluntary and we do not send it. Resolución Exenta SII N° 53 of 09.06.2022 abolished the obligation to send the Resumen de Ventas Diarias; the SII itself says so when one arrives anyway («Envío de RVD no es obligatorio desde agosto 2022»). The code is there in case your own regional SII office asks you for it specifically.

Boletas for an empresa on the sfg channel

Yes, and they go through our own engine. The SII's free-invoicing portal never carried boletas — and that is a fact about the portal, not about your empresa. A boleta does not go near it: Facturia's own engine builds, signs and sends it down the same REST path this page describes, exactly as it does for a mercado empresa.

Put another way, the channel is decided per type, not per empresa: an sfg empresa's 33/34/52/56/61 travel Portal MIPYME, and its 39/41 travel our engine. Nothing about the empresa has to change, and switching its emission_channel to mercado in order to issue boletas is precisely what not to do: it would take its facturas off the free lane.

What you do need is the SII's boleta habilitación and the first CAF for 39/41. Both are onboarding steps (habilitacion and folios, which only appear if you declared boletas); we run the whole chain with the custodied certificate, and two decisions are yours: when to start, and the final declaración. Until they are in:

  • GET /v1/empresas/{id} lists neither 39 nor 41 in capabilities.tipos;
  • POST /v1/documents with tipo_dte: 39 answers 422 empresa_not_emitting naming the habilitacion step — not tipo_not_available_for_channel, because it is not that the lane cannot, it is that the SII has not authorized it yet;
  • and your facturas keep going out perfectly normally: the boleta habilitación does not hold them.

The only type the sfg channel still refuses with tipo_not_available_for_channel is the factura de compra (46): there the SII declines to open its own form for an empresa without agente-retenedor authorization.

On this page