Emisso Connect
Sistemas

BICE Empresas

Saldos y movimientos de BICE Empresas, sincronizados a la caché de Connect. El desafío de navegador del portal lo resuelve la sincronización, no tú.

Con la clave de la empresa, bice_empresas sincroniza saldos y movimientos de BICE Empresas hacia el plano persistido de Connect, y dos tools de consulta los leen de esa caché sin esperar al banco. El conn_… de la conexión dice qué empresa lees y viaja en toda llamada (en REST, el header X-Connect-Connection).

BICE tiene una particularidad que ningún otro conector comparte: su portal protege el login con un desafío de navegador. Connect lo resuelve por ti, con las reglas que se explican abajo.

Qué necesitas para conectar

En el enlace de conexión la persona entrega la Clave de banca en línea del portal, en tres campos:

CampoQué es
RUT de accesoEl RUT de la persona que inicia sesión en el portal.
ClaveSu clave de banca en línea de BICE.
RUT de la empresaLa empresa que esta conexión va a leer.

El acceso solo lee, y desde el dashboard se revoca en el acto. La clave no pasa por tu código: la entrega quien la tiene, en un enlace que sirve una sola vez.

Los alcances

AlcanceQué traeTool que lo lee
saldosEl saldo contable y el disponible de cada cuenta, como una foto por díabice_empresas.saldos.consultar
movimientosLos movimientos de la cartola del período, con descripción, documento y saldo arrastradobice_empresas.movimientos.consultar

Qué alcances quedan habilitados se decide por conexión, desde el dashboard.

Sincronizar

curl -X POST https://connect.emisso.ai/api/v1/tools/bice_empresas.conexion.sincronizar/execute \
  -H "Authorization: Bearer connect_sk_..." \
  -H "X-Connect-Connection: conn_9tKfR2mQx4Vb" \
  -H "Content-Type: application/json" \
  -d '{"input":{"periodo":"2026-08","alcances":["saldos","movimientos"]}}'

Respuesta (recortada):

{
  "data": {
    "periodo": "2026-08",
    "results": [
      { "alcance": "saldos", "status": "ok", "recordsSynced": 1 },
      { "alcance": "movimientos", "status": "ok", "recordsSynced": 18, "cuentasConsultadas": 1 }
    ]
  },
  "meta": { "request_id": "req_...", "tool_id": "bice_empresas.conexion.sincronizar", "plane": "read" }
}

El primer login abre el desafío de navegador y puede tardar cerca de un minuto; las sincronizaciones siguientes reutilizan la sesión de portal vigente y son más rápidas. cuentasConsultadas acompaña a movimientos para que un cero sea interpretable: cero registros con una cuenta consultada es un dato del banco; cero registros con cero cuentas significa que ni siquiera se llegó a preguntar, y el campo detalle lo dice en palabras.

Como en los demás bancos, saldos es una foto del momento: en un período que no es el corriente devuelve cero con su explicación en detalle. Y el login no exige esperarlo en línea: el trabajo se encola por la API de control.

Verdades operativas

El portal exige un desafío de navegador

El login de BICE corre detrás de un desafío anti-bot que no se puede resolver con HTTP puro. Cuando conexion.sincronizar necesita entrar, abre un navegador remoto solo para ese login y acuña una sesión de portal; desde ahí, todos los datos viajan por HTTP normal, igual que en los demás bancos. La sesión acuñada se reutiliza entre sincronizaciones mientras siga vigente (25 minutos por defecto), y se invalida sola cuando rotas la credencial.

connection_session_pending: qué es y qué hacer

Solo la sincronización puede abrir ese navegador. Cualquier otra tool que necesite sesión de portal responde 409 connection_session_pending cuando no hay una vigente, en vez de dejarte esperando un login largo. El código es reintentable: ejecuta bice_empresas.conexion.sincronizar (ella acuña la sesión) o espera la sincronización programada, y reintenta la llamada original.

conexion.verificar no abre navegador

La verificación de credenciales es deliberadamente barata: con una sesión de portal vigente verifica de inmediato, y sin sesión devuelve connection_session_pending sin tocar al banco. Un verificar nunca dispara el login de navegador; si lo que quieres es acuñar la sesión, el camino es sincronizar.

La cartola corre de fin de mes a fin de mes

BICE no arma sus cartolas por mes calendario: la del período 2026-07 va del 30 de junio al 31 de julio. Por eso movimientos.consultar de un período puede incluir movimientos fechados en los últimos días del mes anterior; no es un duplicado, y la identidad por movimiento garantiza que el día compartido entre dos cartolas entre una sola vez. Y no todos los meses están disponibles: cuando pides un período que el banco no ofrece, el sync lo marca con fueraDeVentana: true y un detalle que pide no confundirlo con «no hubo movimientos».

Errores que vas a ver

CódigoQué significaQué hacer
409 connection_session_pendingNo hay una sesión de portal acuñada y esta llamada no puede acuñarla.Ejecuta la sincronización de la conexión (ella acuña la sesión) o espera la programada, y reintenta.
428 connection_credential_requiredLa conexión no tiene una credencial viva: nunca se vinculó, venció o fue revocada.Emite un enlace de reconexión y pide la clave de nuevo. No reintentes con la credencial anterior.
409 connection_busyOtra operación tiene tomado el candado de esta conexión.Espera unos segundos y reintenta: el candado se suelta solo.
502 upstream_errorEl banco (o el camino hasta él) falló de forma transitoria.Reintenta más tarde. Si persiste, el problema está del lado del banco.

El envelope de cada código está en el catálogo de errores.

Próximos pasos

On this page