Emisso Connect

Consultar un DTE

Consulta el estado actual de un DTE en Notta por su id.

Tool IDnotta.dte.consultar
Nombre MCPnotta__dte__consultar
Conectornotta
Planoaction
Scope (permiso)notta:read
Authconnection_credentials
Versión1
Sensible
Deprecadono
ComportamientoreadOnly=true, destructive=false, idempotent=true, openWorld=true

Requiere conexión. Indica cuál en cada llamada: header X-Connect-Connection en REST, campo connectionId en el execute de MCP y en las opciones del SDK. No hay resolución implícita, ni siquiera con una sola conexión activa: la conexión es la empresa. El id sale de conexiones.estado.consultar.

Qué hace

Es el seguimiento del flujo asíncrono que abre notta.dte.emitir: el estado avanza de 'queued' a 'EPR' (aceptado por el SII) o a un rechazo terminal (RFR/RCT/RSC), y en ese caso sii_glosa trae el motivo que dio el SII. Devuelve también folio, montos calculados y ambiente SII.

Entrada

CampoTipoRequeridoDescripción
idstringEl id del documento en Notta: el que devolvió notta.dte.emitir, o el de una fila de notta.dte.listar.
JSON Schema de entrada
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "El id del documento en Notta: el que devolvió notta.dte.emitir, o el de una fila de notta.dte.listar."
    }
  },
  "required": [
    "id"
  ]
}

Salida

CampoTipoRequeridoDescripción
idstringEl identificador del documento en Notta. Es lo que reciben notta.dte.consultar, notta.dte.descargar y notta.dte.reenviar.
tipo_dteenteroEl código de tipo de documento del catálogo del SII. Los que esta conexión emite son 33 (factura afecta), 34 (factura exenta), 56 (nota de débito) y 61 (nota de crédito).
folioenteronull
estadostringEl estado del documento. 'queued' es recién encolado con el folio ya asignado; 'EPR' es aceptado por el SII; 'RPR' y 'aceptado_con_reparos' son aceptado con reparos; 'RFR', 'RCT' y 'RSC' son rechazos terminales que ya no cambian. Decide por este campo, nunca por 'estado_legible'.
rut_receptorstringnoEl RUT de quien recibe el documento, sin puntos y con guion. Ausente cuando Notta no lo informó.
montosobjetoLos totales del documento, calculados por Notta a partir de las líneas. Quien emite no los manda.
montos.netoenteroSuma de las líneas afectas, antes de IVA.
montos.exentoenteroSuma de las líneas marcadas con exento en true, que no pagan IVA.
montos.ivaenteroEl IVA que corresponde al neto.
montos.totalenteroLo que el receptor debe pagar: neto más exento más IVA.
sii_envstringEl ambiente del SII en el que vive el documento: 'cert' es certificación (pruebas) y 'prod' es producción. Lo decide la credencial de la conexión, nunca la llamada.
fecha_emisionstringLa fecha de emisión declarada en el documento, en formato AAAA-MM-DD.
sii_glosastringnoEl texto con que el SII explicó un rechazo. Solo lo trae notta.dte.consultar, y solo cuando el SII dijo algo: la respuesta de la emisión nunca lo lleva.
estado_legiblestringEl 'estado' traducido a una frase en español para mostrarle a una persona. Es texto de presentación, no contrato: para decidir usa 'estado'.
JSON Schema de salida
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "El identificador del documento en Notta. Es lo que reciben notta.dte.consultar, notta.dte.descargar y notta.dte.reenviar."
    },
    "tipo_dte": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991,
      "description": "El código de tipo de documento del catálogo del SII. Los que esta conexión emite son 33 (factura afecta), 34 (factura exenta), 56 (nota de débito) y 61 (nota de crédito)."
    },
    "folio": {
      "anyOf": [
        {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991
        },
        {
          "type": "null"
        }
      ],
      "description": "El folio del documento: el correlativo que sale de los folios autorizados (CAF) y con el que el SII lo identifica. Se consume una sola vez y no se reutiliza, así que emitir dos veces por error gasta dos. Viene en null cuando Notta todavía no lo informó."
    },
    "estado": {
      "type": "string",
      "description": "El estado del documento. 'queued' es recién encolado con el folio ya asignado; 'EPR' es aceptado por el SII; 'RPR' y 'aceptado_con_reparos' son aceptado con reparos; 'RFR', 'RCT' y 'RSC' son rechazos terminales que ya no cambian. Decide por este campo, nunca por 'estado_legible'."
    },
    "rut_receptor": {
      "description": "El RUT de quien recibe el documento, sin puntos y con guion. Ausente cuando Notta no lo informó.",
      "type": "string"
    },
    "montos": {
      "type": "object",
      "properties": {
        "neto": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991,
          "description": "Suma de las líneas afectas, antes de IVA."
        },
        "exento": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991,
          "description": "Suma de las líneas marcadas con exento en true, que no pagan IVA."
        },
        "iva": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991,
          "description": "El IVA que corresponde al neto."
        },
        "total": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991,
          "description": "Lo que el receptor debe pagar: neto más exento más IVA."
        }
      },
      "required": [
        "neto",
        "exento",
        "iva",
        "total"
      ],
      "additionalProperties": false,
      "description": "Los totales del documento, calculados por Notta a partir de las líneas. Quien emite no los manda."
    },
    "sii_env": {
      "type": "string",
      "description": "El ambiente del SII en el que vive el documento: 'cert' es certificación (pruebas) y 'prod' es producción. Lo decide la credencial de la conexión, nunca la llamada."
    },
    "fecha_emision": {
      "type": "string",
      "description": "La fecha de emisión declarada en el documento, en formato AAAA-MM-DD."
    },
    "sii_glosa": {
      "description": "El texto con que el SII explicó un rechazo. Solo lo trae notta.dte.consultar, y solo cuando el SII dijo algo: la respuesta de la emisión nunca lo lleva.",
      "type": "string"
    },
    "estado_legible": {
      "type": "string",
      "description": "El 'estado' traducido a una frase en español para mostrarle a una persona. Es texto de presentación, no contrato: para decidir usa 'estado'."
    }
  },
  "required": [
    "id",
    "tipo_dte",
    "folio",
    "estado",
    "montos",
    "sii_env",
    "fecha_emision",
    "estado_legible"
  ],
  "additionalProperties": false
}

Errores de esta tool

CódigoHTTPReintentableQué hacer
connection_disabled403noReactívala en /connections o usa otra conexión del mismo sistema.
connection_credential_required428noCrea un enlace con conexiones.enlace.crear (modo reconectar si la conexión ya existe) y pide a la persona que entregue la credencial de nuevo. No reintentes con la credencial anterior.
connection_busy409Espera unos segundos y reintenta. El candado es por conexión y se suelta solo.
upstream_error502Reintenta más tarde. Si persiste, el problema está en el sistema externo, no en tu integración.
timeout504Reintenta. Para sincronizaciones largas usa la vía asíncrona y consulta el estado del trabajo.

Toda llamada puede devolver además los códigos transversales (validation_error, unauthorized, scope_not_granted, rate_limited, entre otros): el detalle vive en el catálogo de errores.

On this page