Síntoma: El gráfico de flujos entre cuentas del usuario asigna transacciones a cuentas de origen incorrectas, y los saldos de las cuentas después de los flujos no están disponibles.
Causa técnica:
1. Transacciones sin identificador de cuenta de origen. Los datos de la API de open banking (AIS) contienen el campo del banco (ASPSP), pero en el contexto proporcionado a la capa analítica las transacciones se agregan por banco, no por cuenta. El campo `account_id` / número IBAN de origen no se propaga al contexto — por lo que con múltiples cuentas en un mismo banco (p. ej. empresarial, personal, de ahorro, en divisas) no es posible determinar de manera determinista de qué cuenta salió una transacción concreta.
2. Falta de desglose de saldos por cuenta. El contexto contiene únicamente el estado agregado de fondos (suma de todas las cuentas vinculadas). Los saldos de cuentas individuales existen en la API del banco (endpoint `GET /accounts/{id}/balances`), pero no llegan al contexto analítico.
Consecuencia: La reconstrucción de flujos internos (transferencias propias, traspaso a cuentas de ahorro) se basa en heurísticas («transferencia propia» en el concepto, lógica de cuentas), lo que genera asignaciones erróneas de direcciones. El gráfico presenta direcciones supuestas, no confirmadas por los datos.
Correción propuesta:
- Propagar el `account_id` (o los últimos dígitos del IBAN) de cada transacción al contexto analítico.
- Incluir los saldos por cuenta (del endpoint balances) en la sección de cuentas del contexto.
- Opcionalmente: mapeo de cuentas a roles (empresarial/personal/ahorro) configurable por el usuario, guardado en el perfil.