Emisso Connect

Consultar saldos de BCI

Lee la caché ya sincronizada; NO contacta al banco. Devuelve los saldos guardados de esta conexión (contable, disponible, 9AM y retención), con el snapshot más reciente primero. Exige el alcance 'saldos' habilitado. Si nunca se sincronizó, devuelve una lista vacía: eso NO significa que la empresa no tenga cuentas. Para traer datos nuevos usa 'bci_pyme.conexion.sincronizar' primero. Los saldos son un snapshot POR DÍA, así que sin filtro de fecha la primera página ya son los más recientes que hay guardados. Los cuatro saldos vienen como NÚMERO ya normalizado y conservan su signo: un sobregiro es negativo. Un saldo no lleva 'type' (no es una operación). 'ultimaLecturaEn' dice cuándo se leyó esa fila del banco: si es vieja, la conexión puede estar pausada. Pagina con 'cursor': cuando la respuesta trae 'cursor' distinto de null hay más filas: reenvía ese valor tal cual; nunca lo construyas a mano.

POST
/v1/tools/bci_pyme.saldos.consultar/execute
AuthorizationBearer <token>

API key de la organización, en 'Authorization: Bearer connect_sk_…'. Es la credencial para tu backend y tus agentes propios; se crea en el dashboard con permisos explícitos y su valor completo se muestra una sola vez. Autentica como agente: la bitácora atribuye la acción a la clave, nunca a la persona que la creó.

In: header

Header Parameters

X-Connect-Connection*string

Cuál conexión (conn_…) ejecuta esta llamada. Obligatoria en todo sistema conectable y sin resolución implícita, ni siquiera cuando la organización tiene una sola conexión activa: la conexión ES la empresa, y elegir por ti una que hoy acierta mañana acierta distinto sin que nadie cambie nada. Los ids salen de la tool 'conexiones.estado.consultar'. Si falta, la respuesta es 'validation_error' y no se contacta al sistema externo.

Match^conn_

Request Body

application/json

La entrada de la tool, envuelta en 'input'. Manda '{"input": {}}' cuando la tool no toma argumentos: el sobre es obligatorio aunque esté vacío.

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/tools/bci_pyme.saldos.consultar/execute" \  -H "X-Connect-Connection: conn_9tKfR2mQx4Vb" \  -H "Content-Type: application/json" \  -d '{    "input": {}  }'
{  "data": {    "saldos": [      {        "numeroCuenta": "string",        "currency": "string",        "observedDay": "string",        "observedAt": "string",        "saldoContable": 0,        "saldoDisponible": 0,        "saldoContable9am": 0,        "retencion": 0,        "ultimaLecturaEn": "string"      }    ],    "cursor": "string"  },  "meta": {    "request_id": "string",    "tool_id": "string",    "plane": "action",    "latency_ms": 0,    "audit_status": "recorded",    "idempotency": "replayed"  }}
{  "error": {    "code": "alcance_not_enabled",    "message": "string",    "suggested_fix": "string",    "request_id": "string",    "details": null  }}
{  "error": {    "code": "alcance_not_enabled",    "message": "string",    "suggested_fix": "string",    "request_id": "string",    "details": null  }}
{  "error": {    "code": "alcance_not_enabled",    "message": "string",    "suggested_fix": "string",    "request_id": "string",    "details": null  }}
{  "error": {    "code": "alcance_not_enabled",    "message": "string",    "suggested_fix": "string",    "request_id": "string",    "details": null  }}
{  "error": {    "code": "alcance_not_enabled",    "message": "string",    "suggested_fix": "string",    "request_id": "string",    "details": null  }}
{  "error": {    "code": "alcance_not_enabled",    "message": "string",    "suggested_fix": "string",    "request_id": "string",    "details": null  }}
{  "error": {    "code": "alcance_not_enabled",    "message": "string",    "suggested_fix": "string",    "request_id": "string",    "details": null  }}

Consultar movimientos de BCI POST

Lee la caché ya sincronizada; NO contacta al banco. Devuelve los movimientos guardados de esta conexión, del más reciente al más antiguo, filtrables por período (AAAA-MM) y por cuenta. Exige el alcance 'movimientos' habilitado. Si el período nunca se sincronizó, devuelve una lista vacía, que NO significa que no haya movimientos; usa 'bci_pyme.conexion.sincronizar' primero. 'completo' dice si el último sync de ESE período trajo todo: BCI corta en 1000 movimientos por cuenta y mes, y 'completo: false' significa que faltan filas. Sin filtro de 'periodo' vale null, o sea «no se sabe». Ojo con las correcciones del banco: un movimiento corregido entra como fila NUEVA en vez de reemplazar a la anterior, así que ante dos filas del mismo movimiento vale la de 'ultimaLecturaEn' mayor. Los montos vienen como NÚMERO: 'monto' es la magnitud sin signo, 'type' dice si entra ('debit') o sale ('credit') plata según el libro del banco (al revés de como se lee una cartola) y 'display' es ese monto ya formateado a la chilena con su signo. 'saldoContable' es un balance: no lleva 'type' y conserva su propio signo. Pagina con 'cursor': cuando la respuesta trae 'cursor' distinto de null hay más filas: reenvía ese valor tal cual; nunca lo construyas a mano.

Sincronizar conexión BICE POST

Sincroniza los alcances solicitados (saldos, movimientos) para un período en una sola sesión de portal. `saldos` es una foto del momento, no del período: solo se sincroniza cuando se pide el período corriente.