Facturiadocs
Referencia API

Impuestos

RCV, caracterización, propuesta y declaración de F29, gastos y sugerencias de tipo 46.

Base: https://api.facturia.cl/v1. Todos los endpoints de este capítulo se autentican con Authorization: Bearer salvo que se diga lo contrario, y el sobre de error es el de Errores.

MétodoRutaQué hace
GET/tax/purchasesRCV — registro de compras
GET/tax/salesRCV — registro de ventas
GET/tax/summaryTotales agregados del RCV para un período (las entradas del F29)
POST/tax/syncFuerza una resincronización del RCV (asíncrona)
POST/tax/purchases/characterizeCaracteriza hasta 500 entradas de compra en una sola llamada
POST/tax/purchases/{entry_id}/characterizeCaracteriza una entrada de compra (escribe en el registro del SII)
POST/tax/purchases/{entry_id}/estado_contableMueve una entrada entre REGISTRO / PENDIENTE / NO_INCLUIR
GET/tax/f29/proposals/{period}Propuesta de F29 calculada para un período
GET/tax/f29/proposals/{period}/upload_fileDescarga el .txt en formato SII de esta propuesta
POST/tax/f29/proposals/{period}/public_linksCrea un enlace sin autenticación al .txt de carga de la propuesta
DELETE/tax/f29/proposals/{period}/public_linksRevoca todos los enlaces públicos de esta propuesta
POST/tax/f29/proposals/{period}/recomputeRecalcula la propuesta, con la opción de sobrescribir códigos
GET/tax/f29/filingsLista las declaraciones de F29
POST/tax/f29/filingsDeclara el F29 de un período (job asíncrono)
GET/tax/f29/filings/{filing_id}Devuelve una declaración
GET/tax/expensesLista los cargos en moneda extranjera ingresados
POST/tax/expensesIngresa un cargo que podría requerir una factura de compra tipo 46
GET/tax/suggestionsLista las sugerencias tributarias
GET/tax/suggestions/{suggestion_id}Devuelve una sugerencia
POST/tax/suggestions/{suggestion_id}/confirmConfirma una sugerencia (en emit_46, emite el documento)
POST/tax/suggestions/{suggestion_id}/dismissDescarta una sugerencia

GET /tax/purchases

RCV — registro de compras

curl -sS https://api.facturia.cl/v1/tax/purchases \
  -H "Authorization: Bearer $FACTURIA_KEY" \
  -H "Facturia-Empresa: $EMPRESA"

Parámetros

ParámetroEnRequeridoTipoNotas
Facturia-EmpresaheaderstringLa empresa destino: RUT canónico (77928532-4) o id de empresa (emp_…). Obligatorio en toda llamada con alcance de empresa, salvo que la llave sea un token de empresa. Este header es el ÚNICO mecanismo: no hay parámetro ?empresa= ni campo empresa en el cuerpo. Omitido donde se requiere → 400 empresa_required; fuera de la lista blanca → 403 empresa_not_allowed.
limitqueryinteger
cursorquerystringCursor opaco tomado del next_cursor de una respuesta anterior.
periodqueryPeriodPeríodo tributario, YYYY-MM, America/Santiago.
estado_contablequeryREGISTRO · PENDIENTE · NO_INCLUIR · RECLAMADO
tipo_dtequery33 · 34 · 39 · 41 · 46 · 52 · 56 · 61
counterparty_rutqueryRut

Respuestas

CódigoSignificadoCuerpo
200Entradas de compra del RCV, con metadatos de frescura de la sincronización.RcvEntryList

GET /tax/sales

RCV — registro de ventas

curl -sS https://api.facturia.cl/v1/tax/sales \
  -H "Authorization: Bearer $FACTURIA_KEY" \
  -H "Facturia-Empresa: $EMPRESA"

Parámetros

ParámetroEnRequeridoTipoNotas
Facturia-EmpresaheaderstringLa empresa destino: RUT canónico (77928532-4) o id de empresa (emp_…). Obligatorio en toda llamada con alcance de empresa, salvo que la llave sea un token de empresa. Este header es el ÚNICO mecanismo: no hay parámetro ?empresa= ni campo empresa en el cuerpo. Omitido donde se requiere → 400 empresa_required; fuera de la lista blanca → 403 empresa_not_allowed.
limitqueryinteger
cursorquerystringCursor opaco tomado del next_cursor de una respuesta anterior.
periodqueryPeriodPeríodo tributario, YYYY-MM, America/Santiago.
tipo_dtequery33 · 34 · 39 · 41 · 46 · 52 · 56 · 61
counterparty_rutqueryRut

Respuestas

CódigoSignificadoCuerpo
200Entradas de venta del RCV.RcvEntryList

GET /tax/summary

Totales agregados del RCV para un período (las entradas del F29)

curl -sS https://api.facturia.cl/v1/tax/summary \
  -H "Authorization: Bearer $FACTURIA_KEY" \
  -H "Facturia-Empresa: $EMPRESA"

Parámetros

ParámetroEnRequeridoTipoNotas
Facturia-EmpresaheaderstringLa empresa destino: RUT canónico (77928532-4) o id de empresa (emp_…). Obligatorio en toda llamada con alcance de empresa, salvo que la llave sea un token de empresa. Este header es el ÚNICO mecanismo: no hay parámetro ?empresa= ni campo empresa en el cuerpo. Omitido donde se requiere → 400 empresa_required; fuera de la lista blanca → 403 empresa_not_allowed.
periodqueryPeriod

Respuestas

CódigoSignificadoCuerpo
200Agregación por dirección y tipo de documento.TaxSummary

POST /tax/sync

Fuerza una resincronización del RCV (asíncrona)

curl -sS -X POST https://api.facturia.cl/v1/tax/sync \
  -H "Authorization: Bearer $FACTURIA_KEY" \
  -H "Facturia-Empresa: $EMPRESA" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"period":"2026-07"}'

Parámetros

ParámetroEnRequeridoTipoNotas
Facturia-EmpresaheaderstringLa empresa destino: RUT canónico (77928532-4) o id de empresa (emp_…). Obligatorio en toda llamada con alcance de empresa, salvo que la llave sea un token de empresa. Este header es el ÚNICO mecanismo: no hay parámetro ?empresa= ni campo empresa en el cuerpo. Omitido donde se requiere → 400 empresa_required; fuera de la lista blanca → 403 empresa_not_allowed.
Idempotency-KeyheaderstringLlave que genera el cliente, única por operación lógica, retenida 24 h y con alcance (cuenta, empresa, endpoint). Un replay devuelve la respuesta original con Facturia-Idempotent-Replay: true. Misma llave y cuerpo distinto → 409.

Cuerpo

CampoTipoRequeridoNotas
periodPeriodPeríodo tributario YYYY-MM (America/Santiago). Ej.: "2026-07".
Respuestas
CódigoSignificadoCuerpo
202Job de sincronización aceptado.Job

POST /tax/purchases/characterize

Caracteriza hasta 500 entradas de compra en una sola llamada

curl -sS -X POST https://api.facturia.cl/v1/tax/purchases/characterize \
  -H "Authorization: Bearer $FACTURIA_KEY" \
  -H "Facturia-Empresa: $EMPRESA" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"entries":[{"id":"rcv_01K2RB7Q2M4X","tipo_compra":"del_giro"}]}'

Parámetros

ParámetroEnRequeridoTipoNotas
Facturia-EmpresaheaderstringLa empresa destino: RUT canónico (77928532-4) o id de empresa (emp_…). Obligatorio en toda llamada con alcance de empresa, salvo que la llave sea un token de empresa. Este header es el ÚNICO mecanismo: no hay parámetro ?empresa= ni campo empresa en el cuerpo. Omitido donde se requiere → 400 empresa_required; fuera de la lista blanca → 403 empresa_not_allowed.
Idempotency-KeyheaderstringLlave que genera el cliente, única por operación lógica, retenida 24 h y con alcance (cuenta, empresa, endpoint). Un replay devuelve la respuesta original con Facturia-Idempotent-Replay: true. Misma llave y cuerpo distinto → 409.

Cuerpo

CampoTipoRequeridoNotas
entriesobject + Characterization[]
Respuestas
CódigoSignificadoCuerpo
200Resultados entrada por entrada.object

POST /tax/purchases/{entry_id}/characterize

Caracteriza una entrada de compra (escribe en el registro del SII)

curl -sS -X POST https://api.facturia.cl/v1/tax/purchases/rcv_01K2RB7Q2M4X/characterize \
  -H "Authorization: Bearer $FACTURIA_KEY" \
  -H "Facturia-Empresa: $EMPRESA" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"tipo_compra":"del_giro","iva_uso_comun":true}'

Parámetros

ParámetroEnRequeridoTipoNotas
entry_idpathstring
Facturia-EmpresaheaderstringLa empresa destino: RUT canónico (77928532-4) o id de empresa (emp_…). Obligatorio en toda llamada con alcance de empresa, salvo que la llave sea un token de empresa. Este header es el ÚNICO mecanismo: no hay parámetro ?empresa= ni campo empresa en el cuerpo. Omitido donde se requiere → 400 empresa_required; fuera de la lista blanca → 403 empresa_not_allowed.
Idempotency-KeyheaderstringLlave que genera el cliente, única por operación lógica, retenida 24 h y con alcance (cuenta, empresa, endpoint). Un replay devuelve la respuesta original con Facturia-Idempotent-Replay: true. Misma llave y cuerpo distinto → 409.

Cuerpo

CampoTipoRequeridoNotas
tipo_compradel_giro · supermercado · activo_fijo · iva_uso_comun · no_recuperable
iva_uso_comunboolean
iva_no_recuperable_codeinteger,nullCódigo de motivo del SII, obligatorio cuando tipo_compra es no_recuperable.
Respuestas
CódigoSignificadoCuerpo
200La entrada actualizada.RcvEntry
422Bien formado pero viola una regla del dominio: folios agotados, ventana de acuse cerrada.ErrorResponse

POST /tax/purchases/{entry_id}/estado_contable

Mueve una entrada entre REGISTRO / PENDIENTE / NO_INCLUIR

curl -sS -X POST https://api.facturia.cl/v1/tax/purchases/rcv_01K2RB7Q2M4X/estado_contable \
  -H "Authorization: Bearer $FACTURIA_KEY" \
  -H "Facturia-Empresa: $EMPRESA" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"estado_contable":"REGISTRO"}'

Parámetros

ParámetroEnRequeridoTipoNotas
entry_idpathstring
Facturia-EmpresaheaderstringLa empresa destino: RUT canónico (77928532-4) o id de empresa (emp_…). Obligatorio en toda llamada con alcance de empresa, salvo que la llave sea un token de empresa. Este header es el ÚNICO mecanismo: no hay parámetro ?empresa= ni campo empresa en el cuerpo. Omitido donde se requiere → 400 empresa_required; fuera de la lista blanca → 403 empresa_not_allowed.
Idempotency-KeyheaderstringLlave que genera el cliente, única por operación lógica, retenida 24 h y con alcance (cuenta, empresa, endpoint). Un replay devuelve la respuesta original con Facturia-Idempotent-Replay: true. Misma llave y cuerpo distinto → 409.

Cuerpo

CampoTipoRequeridoNotas
estado_contableREGISTRO · PENDIENTE · NO_INCLUIR · RECLAMADO
Respuestas
CódigoSignificadoCuerpo
200La entrada actualizada.RcvEntry

GET /tax/f29/proposals/{period}

Propuesta de F29 calculada para un período

La calcula Facturia desde el RCV sincronizado más los parámetros de PPM y remanente de la empresa. El SII prellena su propio F29 en su portal, pero no publica una API para eso.

curl -sS https://api.facturia.cl/v1/tax/f29/proposals/2026-07 \
  -H "Authorization: Bearer $FACTURIA_KEY" \
  -H "Facturia-Empresa: $EMPRESA"

Parámetros

ParámetroEnRequeridoTipoNotas
periodpathPeriod
Facturia-EmpresaheaderstringLa empresa destino: RUT canónico (77928532-4) o id de empresa (emp_…). Obligatorio en toda llamada con alcance de empresa, salvo que la llave sea un token de empresa. Este header es el ÚNICO mecanismo: no hay parámetro ?empresa= ni campo empresa en el cuerpo. Omitido donde se requiere → 400 empresa_required; fuera de la lista blanca → 403 empresa_not_allowed.

Respuestas

CódigoSignificadoCuerpo
200La propuesta.F29Proposal
404No existe ese objeto bajo esta llave.ErrorResponse

GET /tax/f29/proposals/{period}/upload_file

Descarga el .txt en formato SII de esta propuesta

curl -sS https://api.facturia.cl/v1/tax/f29/proposals/2026-07/upload_file \
  -H "Authorization: Bearer $FACTURIA_KEY" \
  -H "Facturia-Empresa: $EMPRESA"

Parámetros

ParámetroEnRequeridoTipoNotas
periodpathPeriod
Facturia-EmpresaheaderstringLa empresa destino: RUT canónico (77928532-4) o id de empresa (emp_…). Obligatorio en toda llamada con alcance de empresa, salvo que la llave sea un token de empresa. Este header es el ÚNICO mecanismo: no hay parámetro ?empresa= ni campo empresa en el cuerpo. Omitido donde se requiere → 400 empresa_required; fuera de la lista blanca → 403 empresa_not_allowed.

Respuestas

CódigoSignificadoCuerpo
200Archivo de carga de formato fijo, listo para subir a mano si lo prefieres.text/plain

POST /tax/f29/proposals/{period}/public_links

Crea un enlace sin autenticación al .txt de carga de la propuesta

upload_file_url necesita una llave, lo que lo vuelve inservible como resource_link de MCP: la mayoría de los hosts MCP no pueden adjuntar el token OAuth de quien llama al resolverlo. Esto crea el mismo tipo de enlace firmado, inadivinable y con expiración que reciben los artefactos de un documento (§9.6), sirviendo exactamente los mismos bytes ISO-8859-1.

tax:read, no tax:write: crear un enlace no publica nada ni cambia ninguna posición tributaria.

curl -sS -X POST https://api.facturia.cl/v1/tax/f29/proposals/2026-07/public_links \
  -H "Authorization: Bearer $FACTURIA_KEY" \
  -H "Facturia-Empresa: $EMPRESA" \
  -H "Content-Type: application/json" \
  -d '{"artifacts":["upload_file"],"expires_in_days":90}'

Parámetros

ParámetroEnRequeridoTipoNotas
periodpathPeriod
Facturia-EmpresaheaderstringLa empresa destino: RUT canónico (77928532-4) o id de empresa (emp_…). Obligatorio en toda llamada con alcance de empresa, salvo que la llave sea un token de empresa. Este header es el ÚNICO mecanismo: no hay parámetro ?empresa= ni campo empresa en el cuerpo. Omitido donde se requiere → 400 empresa_required; fuera de la lista blanca → 403 empresa_not_allowed.

Cuerpo

CampoTipoRequeridoNotas
artifactsupload_file[]Por defecto: ["upload_file"].
expires_in_daysinteger,nullPor defecto: 90.
expires_in_secondsinteger,nullAcotado entre 30 s y 365 días. Gana cuando se mandan las dos unidades.
Respuestas
CódigoSignificadoCuerpo
200El enlace recién creado. Guárdalo: la mitad secreta se almacena hasheada.PublicLinks
404No existe ese objeto bajo esta llave.ErrorResponse
409Conflicto de estado: reutilización de idempotencia, external_id duplicado o artefacto no listo.ErrorResponse

Revoca todos los enlaces públicos de esta propuesta

curl -sS -X DELETE https://api.facturia.cl/v1/tax/f29/proposals/2026-07/public_links \
  -H "Authorization: Bearer $FACTURIA_KEY" \
  -H "Facturia-Empresa: $EMPRESA"

Parámetros

ParámetroEnRequeridoTipoNotas
periodpathPeriod
Facturia-EmpresaheaderstringLa empresa destino: RUT canónico (77928532-4) o id de empresa (emp_…). Obligatorio en toda llamada con alcance de empresa, salvo que la llave sea un token de empresa. Este header es el ÚNICO mecanismo: no hay parámetro ?empresa= ni campo empresa en el cuerpo. Omitido donde se requiere → 400 empresa_required; fuera de la lista blanca → 403 empresa_not_allowed.

Respuestas

CódigoSignificadoCuerpo
204Revocados. Las URL existentes dejan de resolver de inmediato.

POST /tax/f29/proposals/{period}/recompute

Recalcula la propuesta, con la opción de sobrescribir códigos

curl -sS -X POST https://api.facturia.cl/v1/tax/f29/proposals/2026-07/recompute \
  -H "Authorization: Bearer $FACTURIA_KEY" \
  -H "Facturia-Empresa: $EMPRESA" \
  -H "Content-Type: application/json" \
  -d '{"overrides":[]}'

Parámetros

ParámetroEnRequeridoTipoNotas
periodpathPeriod
Facturia-EmpresaheaderstringLa empresa destino: RUT canónico (77928532-4) o id de empresa (emp_…). Obligatorio en toda llamada con alcance de empresa, salvo que la llave sea un token de empresa. Este header es el ÚNICO mecanismo: no hay parámetro ?empresa= ni campo empresa en el cuerpo. Omitido donde se requiere → 400 empresa_required; fuera de la lista blanca → 403 empresa_not_allowed.

Cuerpo

CampoTipoRequeridoNotas
overridesobject[]
Respuestas
CódigoSignificadoCuerpo
200La propuesta recalculada.F29Proposal

GET /tax/f29/filings

Lista las declaraciones de F29

curl -sS https://api.facturia.cl/v1/tax/f29/filings \
  -H "Authorization: Bearer $FACTURIA_KEY" \
  -H "Facturia-Empresa: $EMPRESA"

Parámetros

ParámetroEnRequeridoTipoNotas
Facturia-EmpresaheaderstringLa empresa destino: RUT canónico (77928532-4) o id de empresa (emp_…). Obligatorio en toda llamada con alcance de empresa, salvo que la llave sea un token de empresa. Este header es el ÚNICO mecanismo: no hay parámetro ?empresa= ni campo empresa en el cuerpo. Omitido donde se requiere → 400 empresa_required; fuera de la lista blanca → 403 empresa_not_allowed.
limitqueryinteger
cursorquerystringCursor opaco tomado del next_cursor de una respuesta anterior.
period[gte]querystring

Respuestas

CódigoSignificadoCuerpo
200Una lista de declaraciones.lista de F29Filing

POST /tax/f29/filings

Declara el F29 de un período (job asíncrono)

No existe webservice del SII para declarar un F29. Facturia automatiza el flujo «Upload» del SII — una sesión autenticada con certificado que sube un .txt de formato fijo — y lo modela como un job. confirm_total_payable debe ser igual a la cifra de la propuesta.

curl -sS -X POST https://api.facturia.cl/v1/tax/f29/filings \
  -H "Authorization: Bearer $FACTURIA_KEY" \
  -H "Facturia-Empresa: $EMPRESA" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"period":"2026-07","confirm_total_payable":1373000}'

Parámetros

ParámetroEnRequeridoTipoNotas
Facturia-EmpresaheaderstringLa empresa destino: RUT canónico (77928532-4) o id de empresa (emp_…). Obligatorio en toda llamada con alcance de empresa, salvo que la llave sea un token de empresa. Este header es el ÚNICO mecanismo: no hay parámetro ?empresa= ni campo empresa en el cuerpo. Omitido donde se requiere → 400 empresa_required; fuera de la lista blanca → 403 empresa_not_allowed.
Idempotency-KeyheaderstringLlave que genera el cliente, única por operación lógica, retenida 24 h y con alcance (cuenta, empresa, endpoint). Un replay devuelve la respuesta original con Facturia-Idempotent-Replay: true. Misma llave y cuerpo distinto → 409.

Cuerpo

CampoTipoRequeridoNotas
periodPeriodPeríodo tributario YYYY-MM (America/Santiago). Ej.: "2026-07".
proposal_idstring
confirm_total_payableintegerBarrera contra declarar la cifra equivocada. Debe coincidir con la propuesta.
Respuestas
CódigoSignificadoCuerpo
202Declaración aceptada y encolada.F29Filing
422Bien formado pero viola una regla del dominio: folios agotados, ventana de acuse cerrada.ErrorResponse

GET /tax/f29/filings/{filing_id}

Devuelve una declaración

curl -sS https://api.facturia.cl/v1/tax/f29/filings/f29fil_01K2RD9K3M8T \
  -H "Authorization: Bearer $FACTURIA_KEY" \
  -H "Facturia-Empresa: $EMPRESA"

Parámetros

ParámetroEnRequeridoTipoNotas
filing_idpathstring
Facturia-EmpresaheaderstringLa empresa destino: RUT canónico (77928532-4) o id de empresa (emp_…). Obligatorio en toda llamada con alcance de empresa, salvo que la llave sea un token de empresa. Este header es el ÚNICO mecanismo: no hay parámetro ?empresa= ni campo empresa en el cuerpo. Omitido donde se requiere → 400 empresa_required; fuera de la lista blanca → 403 empresa_not_allowed.

Respuestas

CódigoSignificadoCuerpo
200La declaración.F29Filing
404No existe ese objeto bajo esta llave.ErrorResponse

GET /tax/expenses

Lista los cargos en moneda extranjera ingresados

curl -sS https://api.facturia.cl/v1/tax/expenses \
  -H "Authorization: Bearer $FACTURIA_KEY" \
  -H "Facturia-Empresa: $EMPRESA"

Parámetros

ParámetroEnRequeridoTipoNotas
Facturia-EmpresaheaderstringLa empresa destino: RUT canónico (77928532-4) o id de empresa (emp_…). Obligatorio en toda llamada con alcance de empresa, salvo que la llave sea un token de empresa. Este header es el ÚNICO mecanismo: no hay parámetro ?empresa= ni campo empresa en el cuerpo. Omitido donde se requiere → 400 empresa_required; fuera de la lista blanca → 403 empresa_not_allowed.
limitqueryinteger
cursorquerystringCursor opaco tomado del next_cursor de una respuesta anterior.
periodqueryPeriodPeríodo tributario, YYYY-MM, America/Santiago.

Respuestas

CódigoSignificadoCuerpo
200Una lista de gastos.lista de ExpenseCreateRequest + object

POST /tax/expenses

Ingresa un cargo que podría requerir una factura de compra tipo 46

curl -sS -X POST https://api.facturia.cl/v1/tax/expenses \
  -H "Authorization: Bearer $FACTURIA_KEY" \
  -H "Facturia-Empresa: $EMPRESA" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"provider":"fintoc","amount_original":1050,"currency":"USD","date":"2026-07-31"}'

Parámetros

ParámetroEnRequeridoTipoNotas
Facturia-EmpresaheaderstringLa empresa destino: RUT canónico (77928532-4) o id de empresa (emp_…). Obligatorio en toda llamada con alcance de empresa, salvo que la llave sea un token de empresa. Este header es el ÚNICO mecanismo: no hay parámetro ?empresa= ni campo empresa en el cuerpo. Omitido donde se requiere → 400 empresa_required; fuera de la lista blanca → 403 empresa_not_allowed.
Idempotency-KeyheaderstringLlave que genera el cliente, única por operación lógica, retenida 24 h y con alcance (cuenta, empresa, endpoint). Un replay devuelve la respuesta original con Facturia-Idempotent-Replay: true. Misma llave y cuerpo distinto → 409.

Cuerpo

CampoTipoRequeridoNotas
providerobject
descriptionstring
amount_originalnumber
currencystringEj.: "USD".
datestring
fx_ratenumberOBLIGATORIO cada vez que currency no es CLP; omitirlo devuelve 400 fx_rate_required. Facturia nunca inventa un tipo de cambio: esa cifra fija la base en pesos de un documento tributario.
fx_sourcecard_rate · sii_observado · customcard_rate (el tipo de cambio de liquidación que aplicó tu emisor de tarjeta) es la recomendación documentada. SALVEDAD: cuál tipo de cambio es definitivamente correcto para el tipo 46 sobre servicios digitales extranjeros está en revisión con un contador y no lo zanja ningún pronunciamiento citable; el valor que envíes se guarda textual y queda visible en el documento.
external_idstring
Respuestas
CódigoSignificadoCuerpo
201El gasto guardado; puede aparecer una sugerencia después, de forma asíncrona.Expense

GET /tax/suggestions

Lista las sugerencias tributarias

curl -sS https://api.facturia.cl/v1/tax/suggestions \
  -H "Authorization: Bearer $FACTURIA_KEY" \
  -H "Facturia-Empresa: $EMPRESA"

Parámetros

ParámetroEnRequeridoTipoNotas
Facturia-EmpresaheaderstringLa empresa destino: RUT canónico (77928532-4) o id de empresa (emp_…). Obligatorio en toda llamada con alcance de empresa, salvo que la llave sea un token de empresa. Este header es el ÚNICO mecanismo: no hay parámetro ?empresa= ni campo empresa en el cuerpo. Omitido donde se requiere → 400 empresa_required; fuera de la lista blanca → 403 empresa_not_allowed.
limitqueryinteger
cursorquerystringCursor opaco tomado del next_cursor de una respuesta anterior.
typequeryemit_46 · missing_characterization · folios_low · unclaimed_credit
statusqueryopen · confirmed · auto_confirmed · dismissed · expired
periodqueryPeriodPeríodo tributario, YYYY-MM, America/Santiago.

Respuestas

CódigoSignificadoCuerpo
200Una lista de sugerencias.lista de Suggestion

GET /tax/suggestions/{suggestion_id}

Devuelve una sugerencia

curl -sS https://api.facturia.cl/v1/tax/suggestions/sug_01K2RE2X7Q9V \
  -H "Authorization: Bearer $FACTURIA_KEY" \
  -H "Facturia-Empresa: $EMPRESA"

Parámetros

ParámetroEnRequeridoTipoNotas
suggestion_idpathstring
Facturia-EmpresaheaderstringLa empresa destino: RUT canónico (77928532-4) o id de empresa (emp_…). Obligatorio en toda llamada con alcance de empresa, salvo que la llave sea un token de empresa. Este header es el ÚNICO mecanismo: no hay parámetro ?empresa= ni campo empresa en el cuerpo. Omitido donde se requiere → 400 empresa_required; fuera de la lista blanca → 403 empresa_not_allowed.

Respuestas

CódigoSignificadoCuerpo
200La sugerencia.Suggestion

POST /tax/suggestions/{suggestion_id}/confirm

Confirma una sugerencia (en emit_46, emite el documento)

curl -sS -X POST https://api.facturia.cl/v1/tax/suggestions/sug_01K2RE2X7Q9V/confirm \
  -H "Authorization: Bearer $FACTURIA_KEY" \
  -H "Facturia-Empresa: $EMPRESA" \
  -H "Idempotency-Key: $(uuidgen)"

Parámetros

ParámetroEnRequeridoTipoNotas
suggestion_idpathstring
Facturia-EmpresaheaderstringLa empresa destino: RUT canónico (77928532-4) o id de empresa (emp_…). Obligatorio en toda llamada con alcance de empresa, salvo que la llave sea un token de empresa. Este header es el ÚNICO mecanismo: no hay parámetro ?empresa= ni campo empresa en el cuerpo. Omitido donde se requiere → 400 empresa_required; fuera de la lista blanca → 403 empresa_not_allowed.
Idempotency-KeyheaderstringLlave que genera el cliente, única por operación lógica, retenida 24 h y con alcance (cuenta, empresa, endpoint). Un replay devuelve la respuesta original con Facturia-Idempotent-Replay: true. Misma llave y cuerpo distinto → 409.

Respuestas

CódigoSignificadoCuerpo
201La sugerencia, con el documento resultante cuando se emitió uno.object
422Bien formado pero viola una regla del dominio: folios agotados, ventana de acuse cerrada.ErrorResponse

POST /tax/suggestions/{suggestion_id}/dismiss

Descarta una sugerencia

curl -sS -X POST https://api.facturia.cl/v1/tax/suggestions/sug_01K2RE2X7Q9V/dismiss \
  -H "Authorization: Bearer $FACTURIA_KEY" \
  -H "Facturia-Empresa: $EMPRESA" \
  -H "Content-Type: application/json" \
  -d '{"reason":"not_digital_service","note":"…"}'

Parámetros

ParámetroEnRequeridoTipoNotas
suggestion_idpathstring
Facturia-EmpresaheaderstringLa empresa destino: RUT canónico (77928532-4) o id de empresa (emp_…). Obligatorio en toda llamada con alcance de empresa, salvo que la llave sea un token de empresa. Este header es el ÚNICO mecanismo: no hay parámetro ?empresa= ni campo empresa en el cuerpo. Omitido donde se requiere → 400 empresa_required; fuera de la lista blanca → 403 empresa_not_allowed.

Cuerpo

CampoTipoRequeridoNotas
reasonnot_digital_service · already_declared · not_applicable · other
notestring
Respuestas
CódigoSignificadoCuerpo
200La sugerencia descartada.Suggestion

En esta página