Notta Docs

Próximos pasos

Producción, notas de crédito, webhooks y agentes. Las rutas típicas después del quickstart.

Ya emitiste tu primera Factura 33 en sandbox. Estas son las rutas comunes desde aquí, ordenadas por valor entregado.

Producción

Tu cuenta arranca en sandbox (maullin.sii.cl) sin tarjeta de crédito. Para emitir contra producción (palena.sii.cl) necesitas:

  1. Postular tu RUT al SII como emisor electrónico (5 min).
  2. Certificar el set de pruebas que define el SII: Notta lo automatiza desde el dashboard.
  3. Esperar la respuesta del SII (2-10 días hábiles). Una vez aprobado, cambia el toggle a "Producción" en el dashboard y los siguientes DTEs van a palena.

El paso a paso completo está en Producción.

Plan Starter

Tu plan Starter es gratis e indefinido: incluye 25 documentos/mes en producción. El upgrade a Pro habilita BHE y más documentos al mes.

Nota de Crédito (NC 61)

Cuando necesitas anular o corregir una factura ya emitida, emites una NC tipo 61 que referencia el documento original:

curl -X POST https://app.notta.cl/api/v1/dtes \
  -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": 61,
    "rut_emisor": "76123456-0",
    "receptor": { "rut": "11111111-1", "razon_social": "Cliente Ejemplo SpA" },
    "fecha_emision": "2026-06-09",
    "items": [
      {
        "nombre": "Devolución consultoría",
        "cantidad": 2,
        "precio_unitario": 50000,
        "exento": false,
        "monto_item": 100000
      }
    ],
    "references": [
      {
        "line_num": 1,
        "tipo_doc_ref": 33,
        "folio_ref": 1234,
        "fecha_ref": "2026-05-15",
        "cod_ref": 3,
        "razon_ref": "Devolución parcial 2 unidades"
      }
    ],
    "sii_env": "cert"
  }'

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

Salida esperada (202 Accepted):

{
  "id": "01957a91-0b50-7000-8000-000000000061",
  "status": "queued",
  "folio": 410,
  "tipo_dte": 61,
  "rut_emisor": "76123456-0",
  "rut_receptor": "11111111-1",
  "monto_neto": 100000,
  "monto_exento": 0,
  "iva": 19000,
  "monto_total": 119000,
  "sii_env": "cert",
  "sii_status": "queued",
  "fecha_emision": "2026-06-09",
  "links": {
    "self": "/api/v1/dtes/01957a91-0b50-7000-8000-000000000061",
    "pdf": "/api/v1/dtes/01957a91-0b50-7000-8000-000000000061/pdf",
    "xml": "/api/v1/dtes/01957a91-0b50-7000-8000-000000000061/xml",
    "events": "/api/v1/dtes/01957a91-0b50-7000-8000-000000000061/events"
  }
}
  • cod_ref=1 → anula la factura completa.
  • cod_ref=2 → corrige texto (dirección, razón social, etc).
  • cod_ref=3 → corrige montos (devolución parcial/total).

La NC solo referencia facturas tipo 33/34 y tiene plazo legal de 6 meses (Ley 21.398). La guía completa está en Nota de Crédito 61.

Factura cedida (Corte Suprema 2025)

Una NC sobre factura cedida a factoring (RPETC con más de 8 días desde la aceptación irrevocable) es inoponible al cesionario. Notta bloquea la emisión; si igual corresponde, manda override_cedida: true y el override queda registrado en audit_log.

Seguir el estado de un documento

El feed de transiciones es GET /api/v1/dtes/{id}/events: el mismo links.events que devuelve el 202 de la emisión. Con scope dte:read te da toda la historia de estados en orden cronológico ascendente ({status, at, source, glosa}), incluidos los transitorios que GET /api/v1/dtes/{id} ya no muestra porque devuelve solo el último. Es el camino canónico: POST /api/v1/dtes/{id}/refresh-status es la escotilla para un poll que se murió, no el mecanismo de seguimiento. Ver Referencia API de DTEs.

Si prefieres no preguntar, registra un webhook con POST /api/v1/webhooks (scope webhook:write) y Notta le hace POST a tu URL con cada cambio de estado, firmado con Notta-Signature y con reintentos. El feed de arriba sigue siendo el camino de recuperación: si una entrega no llega, te pones al día con GET /api/v1/dtes?polled_since=. Ver Webhooks.

MCP para tu agente

El servidor MCP de Notta es remoto y se conecta por HTTP con OAuth: no hay paquete que instalar ni API key que pegar en un archivo. Con Claude Code:

claude mcp add --transport http notta https://app.notta.cl/api/mcp

En claude.ai o ChatGPT, pega esa misma URL como conector personalizado. La primera conexión te pide autorizar la empresa desde el dashboard.

Son dos herramientas, discover y execute, sobre un catálogo de 24 operaciones. Pregúntale a tu agente "¿cuánto facturé este mes?" o "muéstrame el último DTE rechazado" y las resuelve solo. La escritura también está en el catálogo, pero apagada de fábrica: la habilita tu empresa en /app/mcp y quien conecta la app marca su casilla al autorizar. Emitir sale directo bajo el umbral que fijes; acusar recibo o reclamar una factura de proveedor ante el SII lo aprueba una persona siempre, porque no se deshace. La casilla de emisión concede además refreshDteStatus, la escotilla para un documento cuyo seguimiento ante el SII se detuvo: no crea ni cambia nada, solo vuelve a preguntar. Si prefieres no encenderla, emite con POST /api/v1/dtes y tu API key, que no pasa por ese techo.

El catálogo completo y el flujo de autorización están en MCP; más patrones de integración en Agentes.

Dónde seguir

  • Producción, el siguiente paso natural: postulación, certificación SII y cutover a palena.
  • Referencia de la API: todos los endpoints con sus shapes.
  • Agentes: llms.txt, manifiesto MCP y patrones de integración.
  • Errores: catálogo completo con next_action por código.

Última actualización

En esta página