SDKs, MCP y documentación
- SDKs oficiales de código abierto en GitHub: tupana-ai/tupana-node (Node.js y TypeScript) y tupana-ai/tupana-python. Ver SDKs.
- El servidor MCP de Tupana ahora tiene repositorio público: tupana-ai/tupana-mcp. Además está publicado en el registro oficial de servidores MCP como
io.github.tupana-ai/tupana. Ver Servidor MCP. - Repositorio de ejemplos listos para usar: tupana-ai/tupana-examples (Next.js, emisión masiva desde Excel, receptores de webhooks, link de pago y un agente de IA que factura pidiendo tu confirmación).
- Nueva guía Tu primera llamada en 2 minutos con sandbox.
- Guías por tarea: emitir en lote, webhooks, link de pago, cesiones y varias empresas.
- Nueva sección Agentes de IA (MCP y tool calling), Precios y Cómo elegir una API de facturación.
llms-full.txtahora incluye la referencia completa de la API v2 en Markdown.
MCP y documentos programados
- Servidor MCP:
create_sale_invoicedeja la factura como borrador y la emisión pasa por revisar su vista previa (get_document_previewy luegoemit_document). La herramienta acepta referencias (orden de compra 801, HES), forma de pago y vencimiento (payment_method,due_date,due_days).get_document_linkentrega el PDF oficial del SII. Ver Servidor MCP. - Documentos programados: cada línea puede llevar su propia
currency; si no la envías, se usa la moneda del documento.
Guía de despacho y libros del SII
- Guía de despacho (DTE 52): campos de la Resolución Exenta N°154 del SII, con avisos en la respuesta de la API hasta la fecha de entrada en vigencia. Ver Documentos.
- Anulación de guías con motivo:
POST /v2/documents/{id}/states/conevent_codeANNULLEDyreason. - Con el facturador gratuito del SII, el destino y el tipo de despacho de la guía se aceptan y se imprimen como texto en el detalle, en vez de rechazar el documento.
- Nuevo endpoint de detalle del libro de compras y ventas (
/v1/book-documents/y/v2/book-documents/): una fila por documento del Registro de Compras y Ventas con sus montos e impuestos.
Webhooks
- Si no eliges
api_versional crear un webhook, se usa la de la ruta: los creados por/v1/webhooks/nacen en versión 1 (ids enteros) y los creados por/v2/webhooks/en versión 2 (ids públicosdocu_…,ment_…). - Nuevos
GET,PATCHyDELETEsobre/v2/webhooks/{id}/. ConPATCHsubes un webhook existente aapi_version: 2.
Exportación
- País y nacionalidad del receptor en facturas de exportación, separados del país de destino. Ver Países de exportación.
Idempotencia
- Al reenviar un lote con el mismo
Idempotency-Key, la respuesta incluye elbatch_iddel lote original. - El header
Idempotency-Keyse puede enviar desde el navegador (permitido en CORS).
Webhooks
- Nuevo campo
environmenten los webhooks:production,sandboxoboth(por defecto). Así un mismo endpoint recibe sólo los eventos del ambiente que elijas. Ver Webhooks.
Conexiones y consola de developers
- Nuevos endpoints de conexiones: listar y desactivar las empresas conectadas.
/v2/connections/acepta API key y sesión de usuario. - La conexión de un banco por Tupana Link se da por activa cuando el banco entrega las cuentas, y en ese momento se envía el webhook
connection.active(oconnection.requires_action). - Consola de developers en developers.tupana.ai/console: crea tu cuenta y tus API keys.
Bases de datos gratuitas y MCP
- Bases de datos gratuitas: nómina de empresas del SII consultable con cualquier API key, con búsqueda, historia por RUT, resumen y metadatos.
- El servidor MCP enseña a construir facturación dentro de otro SaaS: flujo de emisión, especificación de la interfaz, búsqueda de clientes por RUT y reglas de validación. Ver Agentes de IA.
Tupana Link y emisión v2
- Tupana Link: el widget hospedado con el que tus usuarios conectan su empresa (SII y bancos). En v2 reemplaza la creación de credenciales por API. Nuevos eventos de webhook
connection.activeyconnection.requires_action. additional_infoen documentos (creación, detalle, listado y webhooks). Se imprime en el PDF y queda fija cuando el documento tiene folio.- Emisión v2: ya no es necesario enviar
master_entity_id; el emisor se toma dedocument_issuer. En sandbox no se exige credencial del SII y la vista previa del borrador funciona igual que en producción.
Sandbox y documentos
- Con una API key de sandbox, el listado de documentos devuelve los documentos de producción y los de sandbox de la empresa.
- Las respuestas v2 de documentos vuelven a incluir el
json_paramque enviaste al crear.
Cesiones
- Un lote de cesión lo puede pedir quien tiene hoy la factura, no sólo su emisor original.
API v2
- La API v2 responde en
https://api.tupana.ai/v2/…, con el mismo estilo de URL que la v1. Ver Introducción a la API v2.
Guía de despacho y validación
- Emisión de guías de despacho (DTE 52) con transporte, destino, despacho, datos de Aduana y líneas exentas. Las guías de exportación aceptan el código de traslado excepcional (
transfer_issuer_code) y su resolución. Ver Códigos de transporte y Aduana. - El lote de emisión avisa los campos desconocidos en
warnings. Las API keys nuevas validan en modo estricto y responden422antes de crear el lote; las existentes quedan en modo aviso. - El detalle de un lote acepta el id público o el UUID.
- La API v1 mantiene sus ids enteros: las integraciones existentes no cambian.
API v2
- Lanzamiento de la API v2: ids públicos con prefijo (
docu_…,ment_…), listas paginadas uniformes, selección de campos y taxonomía de errores con códigos estables (parameter_*,resource_missingy códigos propios de cesiones y recaudación). - Las respuestas v2 no exponen estado interno del servidor (trazas crudas del SII, registros de actualización).
- Reenviar un lote con un
Idempotency-Keyya procesado devuelve el lote original (200) sin volver a emitir al SII.
Exportación
- Forma de pago de exportación por API.
Exportación
- Cláusula de venta (Incoterm) en facturas de exportación por API. Ver Modalidades de venta de exportación.
Boletas
- Boleta de espectáculo por cuenta de terceros: la línea de detalle acepta
show_item_type,principal_ruty un bloqueticket, enPOST /v1/documents/batch/y en v2.
Exportación y folios
- Facturas de exportación: el tipo de cambio se alinea con la fecha de emisión del DTE y los puertos de embarque y desembarque se completan desde el país de destino.
- Los errores de folios traen
error_code(vocabulario cerrado para decidir si reintentar) ysii_code. Ver Códigos de error de folios.
Límites
- La búsqueda por
folioen el listado de documentos tiene un límite de 30 consultas por hora por API key. Al superarlo, la API responde429.
Documentos y folios
- Las referencias de notas de crédito y débito aceptan
reference_code(CodRef del SII: 1 anula, 2 corrige texto, 3 corrige montos). - Documentos programados: reajuste del precio por IPC cada cierta cantidad de meses.
- Las consultas de folios al SII pasan a ser un recurso propio:
/v2/folio-queries/.
Folios, referencias y límites
- API de folios: disponibilidad, timbraje de folios y retiro del CAF, con los webhooks
folio_request.completed,folio_request.failedyfolio_request.authorized_without_caf. - Las referencias aceptan un tipo de documento definido por tu empresa (hasta 3 caracteres, por ejemplo
HES). - El detalle de un documento tiene un límite de 600 consultas por hora por API key y de 60 por hora sobre un mismo documento. Al superarlo, la API responde
429; para enterarte de cambios de estado usa webhooks.
Sandbox
- Los documentos de sandbox se timbran con un XML de la misma estructura que en producción y un PDF real con marca de agua de vista previa.
Webhooks
- Nuevo evento
document.trace_updated: un aviso por cada evento nuevo de la traza del SII (acuses, reclamos, rechazos), tanto de documentos emitidos como recibidos. El payload traerolepara saber de qué lado estás.
Documentos
- Filtro
json_param__<clave>=<valor>en el listado de documentos para buscar por los datos propios que enviaste al emitir.
Webhooks
- Envío de webhooks más estable: se limita la cantidad de conexiones simultáneas a cada endpoint y las conexiones se reutilizan.
- Un webhook se desactiva automáticamente sólo ante una caída sostenida de tu endpoint (100 fallos seguidos), no por un error puntual.
Cesiones
- Nuevo
GET /v1/cessions/batch/{id}/con el seguimiento de cada documento del lote de cesión.
Cesiones
- Parámetro
document_type=issued|receiveden el listado de cesiones: consulta también las facturas de tus proveedores que fueron cedidas a un tercero.
Boletas de honorarios
- Sincronización a demanda de los usuarios autorizados para emitir boletas de honorarios.
Consultas al SII
- Resumen de libros del SII en
/v1/book-summaries/. - Sincronización a demanda con
/v1/sync-requests/, estado de la última sincronización con/v1/sync-status/y frecuencia por empresa con/v1/sync-settings/{id}/. Ver Sincronización.
Credenciales
- Enrolamiento en lote con
POST /v1/credentials/batch/y consulta del lote por id. - Desenrolar una empresa con
DELETE /v1/credentials/{id}/. - Nuevo evento de webhook
credential.validated.
Boletas
- Boletas 39 y 41 aceptan
gross_unit_price(precio con IVA incluido): el total emitido coincide al peso con el monto que cobraste.
Webhooks
document.issue_failedincluyedata.errorconmessage,codeytypedel último intento fallido.
Boletas
- Boletas 39 y 41 aceptan líneas con monto negativo (descuentos por línea).
Boletas de honorarios
- Anulación de boletas de honorarios (DTE 80) por API con
PATCH /v1/documents/batch/ypatch: {"annulled": true}.
Webhooks
document.paidy el nuevodocument.unpaidse envían en cada cambio del estado de pago, también en los cambios masivos.
Recaudación
- Cobro directo de documentos ya emitidos con
document_idsenPOST /v1/payment-requests/. - Listado de tarjetas inscritas y liquidaciones por empresa.
Cesiones
- El detalle de una cesión trae
certificate_pdf_urlcon el certificado de cesión.
Webhooks
- Nuevo evento
credential.invalid: te avisa cuando la clave de una empresa deja de funcionar en el SII.
Documentos y recaudación
?include_trace_events=trueen el listado de documentos devuelve la traza completa del SII de cada documento.- Las solicitudes de cobro suman el estado
issuedcuando se emite su documento.
MCP
- Servidor MCP de Tupana con inicio de sesión OAuth 2.1: consulta documentos, clientes y libros, y emite facturas desde agentes de IA compatibles con MCP. Ver Servidor MCP.
Recaudación
- API de Recaudación bajo
/v1/con API key: solicitudes de cobro con link de pago, datos bancarios de la empresa y emisión del documento al pagar. - Webhooks
payment_request.paid,payment_request.document_issuedypayment_request.expired. Ver Webhooks de recaudación.
Documentos
- En el detalle de un borrador fuera de sandbox,
pdf_urlviene siempre presente y ennullhasta que el documento se emite.
Emisión en lote
- Los documentos de un lote que quedaron en error permanente se pueden reintentar con el mismo
Idempotency-Key.
Documentos
- Nuevos tipos de referencia: contrato y nota de pedido.
Documentos
- Estado de pago por API:
PATCH /v1/documents/batch/conpatch: {"payment_status": "paid" | "unpaid" | "partially_paid"}ypaid_amountpara pagos parciales. El estado se refleja en el detalle y el listado.
Webhooks y boletas de honorarios
- Nuevos eventos
document.issue_failed,document.updatedy de documentos programados (scheduled_document.created,scheduled_document.updated,scheduled_document.run_started,scheduled_document.run_succeeded,scheduled_document.run_failed), máswebhook.testpara probar tu endpoint. - Usuarios autorizados para emitir boletas de honorarios por empresa. Ver Boletas de honorarios.
Documentos
- Detalle de un documento en
/v1/documents/{id}/y sus estados en/v1/documents/{id}/states/. - Vista previa de un documento programado antes de su próxima emisión.
Cesiones
- Cesión de facturas en lote por API con
POST /v1/cessions/batch/. Ver Cesiones.
Exportación
- Nota de débito de exportación (DTE 111).
Documentos programados y honorarios
- API de documentos programados (
/v1/scheduled-documents/): facturación recurrente con ajuste a días hábiles y tipo de cambio del día para exportación. - Boletas de honorarios (DTE 80 y 90) y nota de crédito de exportación (DTE 112).
Documentos
- Guía de despacho (DTE 52) y nota de débito (DTE 56) en la emisión por API.
Sandbox
- API keys de sandbox: emiten documentos simulados sin enviar nada al SII. Ver Autenticación.
Exportación y credenciales
- Factura de exportación (DTE 110). Ver Monedas de exportación.
- API de credenciales (
/v1/credentials/) para enrolar las empresas que emiten a través de tu integración.
Lanzamiento de la API v1
- Emisión en lote con
POST /v1/documents/batch/: asíncrona, conIdempotency-Keyy consulta del lote por id. Incluye boletas 39 y 41. - Autenticación con el header
Authorization: Api-Key <tu_key>. Ver Autenticación. - Webhooks de documentos:
document.issued,document.delivered,document.rejected,document.paidydocument.cancelled, con historial de entregas.
Primeros endpoints
- Primer endpoint público con API key: búsqueda de empresas por RUT.
