Notta Docs

Referencia del CLI

Comandos, flags y formatos de salida para operar Notta desde la terminal

El binario notta expone los mismos recursos que la API REST desde tu terminal. Es uno de los 3 canales programáticos (API, CLI, MCP) + el dashboard: misma API key, mismos shapes de respuesta.

Disponibilidad

@notta/cli está en proceso de publicación en npm — el install global todavía no funciona. Mientras tanto, el dashboard y la API cubren el flujo completo: todos los ejemplos curl de estas docs funcionan hoy con una API key.

Sin API key configurada, el CLI corre en modo demo: avisa por stderr y los resultados no son DTEs reales. Ejecuta notta auth login para operar contra tu org.

Grupos de comandos

GrupoPara qué
notta authlogin / whoami / logout — manejo local del API key
notta orgslistar tus organizaciones y fijar la org activa
notta initwizard interactivo de onboarding SII (~10 min a sandbox)
notta certsubir y administrar certificados digitales .p12
notta cafsubir CAFs y monitorear folios disponibles
notta dteemitir, listar y descargar DTEs
notta bheBoletas de Honorarios Electrónicas
notta rcvRegistro de Compras y Ventas desde el portal SII
notta f29F29 propuesto del período (read-only por ahora)
notta auditconsultar y verificar el audit log (hash chain, 6 años)
notta doctordiagnóstico del entorno y de la conectividad

Formato de salida

Los comandos de lectura aceptan --format table|json|csv. Sin el flag, el CLI detecta el contexto: tabla si la salida es una terminal interactiva, JSON si está piped (ideal para scripts). Los errores de la API se imprimen a stderr con code, hint y next_action — el catálogo completo está en Errores.

notta auth

SubcomandoQué hace
notta auth loginpide el API key (ntt_cert_..., ntt_prod_... o legacy rk_test_...) y lo guarda en ~/.config/notta/credentials
notta auth whoamimuestra el prefijo del key activo y su entorno (production / sandbox)
notta auth logoutborra el archivo de credenciales
notta auth login
# Paste your Notta API key (ntt_cert_..., ntt_prod_..., or legacy rk_test_.../rk_live_...):
# ✔ API key saved to ~/.config/notta/credentials

El CLI apunta a https://app.notta.cl por defecto. Puedes cambiar el destino con la variable de entorno NOTTA_API_URL.

notta dte

dte emit

Emisión simple de facturas tipo 33 y 34. El comando no tiene flag de referencias: las NC (61) y ND (56), que requieren references con cod_ref, se emiten vía la API de DTEs.

FlagRequeridoDescripción
--tipo33 (Factura afecta) o 34 (Factura exenta)
--toRUT del receptor en formato BODY-DV (p. ej. 11111111-1)
--namerazón social del receptor
--girogiro del receptor (no vacío) — obligatorio para 33/34
--direcciondirección del receptor (no vacío) — obligatorio para 33/34
--comunacomuna del receptor (no vacío) — obligatorio para 33/34
--forma-pagoforma de pago: 1 (Contado), 2 (Crédito) o 3 (Sin costo) — obligatorio para 33/34
--itemspec "nombre:cantidad:precio_unitario" — repetible para múltiples ítems
--envnocert (default, maullin.sii.cl) o prod (palena.sii.cl)
--formatnotable | json | csv
notta dte emit \
  --tipo 33 \
  --to 11111111-1 \
  --name "Cliente Ejemplo SpA" \
  --giro "Comercio" \
  --direccion "Av Siempre Viva 123" \
  --comuna "Santiago" \
  --forma-pago 2 \
  --item "Consultoría mayo 2026:5:50000" \
  --item "Soporte mensual:1:120000" \
  --env cert

En el spec de --item, cantidad y precio_unitario deben ser enteros (pesos chilenos, sin decimales). Para tipo 34 el CLI marca todos los ítems como exentos automáticamente, y el RUT emisor sale de tu org activa. El detalle del flujo completo está en Emitir Factura 33.

dte list

FlagDescripción
--tipofiltrar por tipo de DTE (p. ej. 33)
--fromfecha de inicio YYYY-MM-DD
--tofecha de fin YYYY-MM-DD
--formattable | json | csv

Pagina con cursor: si hay más resultados, imprime More results available. next=<cursor> — ver Paginación.

dte show / pdf / xml

SubcomandoQué hace
notta dte show <id>detalle completo del DTE, siempre en JSON
notta dte pdf <id> [--output|-o <archivo>]descarga el PDF (default <id>.pdf)
notta dte xml <id> [--output|-o <archivo>]descarga el XML firmado (default <id>.xml)

notta cert

SubcomandoFlagsQué hace
notta cert upload <archivo>--password (requerido), --labelcarga tu .p12 en el Vault de Notta
notta cert list--formatlista los certificados de la org activa
notta cert info <id>metadatos del certificado — nunca expone la clave privada
notta cert rm <id>elimina un certificado
notta cert upload ./mi-cert.p12 --password ******** --label "Producción"

Es el mismo flujo que en el dashboard — ver Subir certificado.

notta caf

SubcomandoFlagsQué hace
notta caf upload <archivo>carga el XML del CAF que descargaste del portal SII
notta caf list--rut, --tipo, --formatCAFs activos y rangos de folios disponibles
notta caf statusresumen por tipo de DTE, con alerta cuando queda menos del 10% de folios
notta caf list --tipo 33 --format json

notta bhe

SubcomandoFlagsQué hace
notta bhe emit--to (req), --description (req), --amount (req, bruto CLP), --envemite una BHE
notta bhe list--from, --to, --formatlista BHEs
notta bhe show <id>detalle de una BHE
notta bhe anular <id>--reason (req)anula una BHE
notta bhe emit \
  --to 11111111-1 \
  --description "Asesoría tributaria junio" \
  --amount 1000000

Sobre el bruto se aplica la retención vigente — 17% en 2026 (Ley 21.420): para un bruto de 1.000.000 el líquido es 830.000. Las tasas por año y el plazo de anulación (3 meses) están en BHE.

Grupos menores

ComandoQué hace
notta initwizard interactivo: certificado → CAF → primer DTE en sandbox (~10 min)
notta orgs list / notta orgs use <slug>ver tus orgs y fijar la activa para la sesión
notta rcv list --rut <rut> --period <YYYY-MM> [--type received|issued]entradas del RCV del período (compras o ventas)
notta rcv refresh --rut <rut>dispara la sincronización del RCV desde el portal SII
notta f29 show --rut <rut> --period <YYYY-MM>F29 propuesto del período (read-only por ahora)
notta f29 recompute --rut <rut> --period <YYYY-MM>recalcula el F29 desde el RCV
notta audit list [--action] [--from] [--to]entradas del audit log, filtrables por acción
notta audit verify [--from] [--to]verifica la integridad del hash chain del audit log
notta doctorchequea API key, Node ≥ 20 y permisos 600 del archivo de credenciales
notta f29 show --rut 76123456-0 --period 2026-04

Próximos pasos

  • Emitir Factura 33 — la guía completa de emisión, con el shape entero del request y los estados SII.
  • Servidor MCP — las mismas operaciones como herramientas tipadas para tu agente LLM.
  • Errores — el catálogo de códigos con next_action que el CLI imprime en cada fallo.
  • RCV y F29 — qué calcula Notta a partir del registro del SII.

Última actualización

En esta página