Emisso Connect

Verificar conexión BCI

Prueba las credenciales de la conexión contra BCI haciendo un login real (y su logout, a cargo del pipeline). No sincroniza ni devuelve datos: solo confirma si las credenciales sirven.

POST
/v1/tools/bci_pyme.conexion.verificar/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.conexion.verificar/execute" \  -H "X-Connect-Connection: conn_9tKfR2mQx4Vb" \  -H "Content-Type: application/json" \  -d '{    "input": {}  }'
{  "data": {    "verificadoEn": "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  }}

Sincronizar conexión BCI POST

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

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.