
¿Te quieres formar en IA aplicada a finanzas y no sabes por dónde empezar?
➡️ Echa un vistazo a la formación de Próximo: su intensivo en finanzas y programas para montar tu negocio como fractional.
Hola, una semana más.
Cuando un equipo de finanzas se entera de un problema de liquidez, el problema lleva semanas en los datos.
Nadie lo vio porque nadie miró.
Más del 60% de los profesionales de tesorería dice que el forecast de caja es su tarea más difícil.
Lo dice el AFP Treasury Benchmarking Survey 2025.
Y en muchas empresas se sigue haciendo en Excel, una vez por semana. En un entorno donde los pagos, los cobros y los compromisos cambian cada día.
Esto no es un problema de herramientas. Es un problema de arquitectura.
Y tiene solución.
En esta edición:
Por qué el Excel de tesorería siempre llega tarde (y no es culpa del Excel).
Los 3 cuellos de botella que convierten el forecasting en arqueología.
Cómo montar un agente de tesorería que te avisa antes de que el problema exista.
Un caso real: de 2,5 horas cada lunes a una alerta automática cada mañana.
El Excel no es el problema. El proceso lo es.
Cuando el CFO de una empresa de distribución me preguntó por qué su forecast de caja siempre fallaba, pasé 20 minutos con él mirando el proceso.
No el modelo. El proceso.
Esto es lo que encontramos:
Lunes por la mañana, el equipo de tesorería abre el ERP y exporta los saldos bancarios del viernes.
Luego busca en el correo los confirmados de cobro de la semana pasada.
Luego llama a tres comerciales para saber si los pedidos grandes que vencen esta semana van a cobrar en fecha.
Luego mete todo en el Excel y actualiza el modelo.
Luego lo envía al CFO.
Son las 11 de la mañana del lunes.
El forecast que acaba de leer describe lo que pasó la semana pasada.
Punto.

No hay ningún modelo de Excel que te salve de eso.
El input llega tarde, fragmentado y sin contexto.
Los 3 cuellos de botella del forecasting manual

1. El dato llega tarde.
El ERP registra lo que ya ocurrió. El banco muestra el saldo de ayer.
Las cuentas a cobrar son una foto fija de la semana pasada.
Cuando consolidas todo eso en un modelo, estás mirando el retrovisor y llamándolo forecast.
2. El dato llega fragmentado.
La liquidez real de una empresa mediana está en 4 o 5 sitios a la vez: banco principal, banco secundario, cuentas de cobro de clientes, línea de crédito, factoring.
Nadie los consolida en tiempo real porque hacerlo a mano son 2 horas de trabajo diarias que nadie tiene.
3. No hay capa de alerta.
El Excel no te llama por teléfono cuando una posición de caja empieza a deteriorarse.
No te avisa cuando un cliente que representa el 18% de tu cobro pendiente lleva 5 días sin mover nada.
No detecta patrones. Solo muestra lo que le dices que muestre, cuando tú decides mirar.
El resultado. Te enteras del problema cuando ya es un problema.
La pregunta no es si esto te ha pasado.
La pregunta es cuántas veces.
El agente de forecasting de tesorería: qué hace y cómo funciona
Un agente de tesorería no es un dashboard más sofisticado.
Es un proceso autónomo que consolida datos, construye el modelo y lanza alertas sin que nadie lo active.
Funciona en 4 capas:

Capa 1: Ingesta de datos
Conecta con las fuentes en tiempo real o near-real-time: banco vía API (Salt Edge, Belvo, Plaid), ERP vía webhook o exportación programada, CRM para estado de cobros pendientes, Excel o CSV si el resto no tiene API.
Capa 2: Modelo de forecast
Construye un rolling forecast a 7, 14 y 30 días combinando saldos actuales, cobros esperados (por fecha de vencimiento y probabilidad histórica de pago en fecha), pagos comprometidos y compromisos de crédito.
Capa 3: Motor de alertas
Compara el forecast contra umbrales que tú defines (mínimo de caja operativa, días hasta breach de covenants, concentración de cobro en un solo cliente). Cuando se cruza un umbral, genera una alerta con contexto.
Capa 4: Narrativa y recomendación
Claude analiza la alerta y genera un párrafo de contexto: qué está pasando, por qué, qué opciones tienes. No es un número. Es un briefing.
Cómo montarlo: paso a paso
Paso 1: Define tus fuentes de datos
Antes de escribir una sola línea de código, haz el inventario:
- ¿Qué bancos tienes y tienen API agregada (Salt Edge cubre más de 2.000 bancos europeos)?
- ¿Tu ERP exporta posiciones de cobro por fecha de vencimiento?
- ¿Tu CRM tiene el estado de pedidos pendientes de facturar?
Si alguna fuente no tiene API, la alternativa es una exportación programada vía SFTP o un Google Sheet que el equipo actualiza diariamente.
No es ideal, pero es funcional.
Paso 2: Monta el flujo de ingesta en n8n
Este workflow se ejecuta cada mañana a las 7:00. Recoge los datos, los consolida en un JSON y los envía al agente.

{
"workflow_name": "Ingesta diaria tesorería",
"schedule": "0 7 * * 1-5",
"nodes": [
{
"name": "Salt Edge - Saldos bancarios",
"type": "HTTP Request",
"endpoint": "https://www.saltedge.com/api/v5/accounts",
"output": ["account_id", "balance", "currency", "updated_at"]
},
{
"name": "ERP - Cobros vencidos próximos 30 días",
"type": "HTTP Request",
"endpoint": "{{ERP_API}}/receivables?due_date_from=today&due_date_to=+30d",
"output": ["invoice_id", "client_id", "amount", "due_date", "days_overdue"]
},
{
"name": "ERP - Pagos comprometidos próximos 14 días",
"type": "HTTP Request",
"endpoint": "{{ERP_API}}/payables?due_date_from=today&due_date_to=+14d",
"output": ["payment_id", "vendor_id", "amount", "due_date"]
},
{
"name": "Consolidar JSON",
"type": "Code",
"description": "Merge all data into single treasury snapshot"
},
{
"name": "Enviar a agente Claude",
"type": "HTTP Request",
"endpoint": "https://api.anthropic.com/v1/messages"
}
]
}Paso 3: El prompt del agente de tesorería
Este es el prompt que le pasas a Claude junto con el JSON de datos consolidados.
Cópialo, ajusta los umbrales a tu empresa y úsalo mañana mismo.
Eres el agente de tesorería de [EMPRESA]. Analiza el snapshot de tesorería adjunto y produce un briefing diario.
DATOS:
- Saldos bancarios actuales: {{saldos_json}}
- Cobros esperados próximos 30 días: {{cobros_json}}
- Pagos comprometidos próximos 14 días: {{pagos_json}}
- Histórico de pagos por cliente (últimos 90 días): {{historico_json}}
UMBRALES DE ALERTA:
- Mínimo caja operativa: [IMPORTE_MINIMO] EUR
- Días de runway mínimo: [DIAS_RUNWAY]
- Concentración máxima en un cliente: 25% del cobro pendiente
INSTRUCCIONES:
1. Calcula la posición de caja proyectada para 7, 14 y 30 días.
2. Identifica si algún umbral se rompe en ese horizonte.
3. Para cada cliente con más de [IMPORTE_UMBRAL] EUR pendiente de cobro,
calcula la probabilidad de pago en fecha basándote en el histórico.
4. Si detectas alguna anomalía (cliente que habitualmente paga en 30 días
y lleva 5 días sin movimiento en un vencimiento próximo), márcala.
5. Produce un briefing en este formato:
## Posición de caja hoy: [X] EUR
## Forecast 7 días: [X] EUR | Forecast 14 días: [X] EUR | Forecast 30 días: [X] EUR
### Alertas activas
[Lista de alertas con contexto: qué está pasando, por qué importa, qué opciones hay]
### Cobros en riesgo
[Clientes con baja probabilidad de pago en fecha + importe en riesgo]
### Recomendación
[1 párrafo de acción concreta si hay alerta. Si no hay alertas, confirmar posición sana.]
REGLAS:
- Si no tienes datos suficientes para calcular algo, di "DATO FALTANTE: [qué falta]".
- No inventes cifras. No hagas suposiciones no fundadas en los datos.
- Si la posición es sana y no hay alertas, dilo en una línea. No rellenes.Paso 4: Cierra el loop con la alerta
El agente envía el briefing por email o Slack cada mañana.
Si hay una alerta activa (algún umbral roto), el mensaje lleva asunto "ALERTA TESORERÍA" y copia al CEO.
Si no hay alertas, llega como un resumen de 4 líneas que el CFO puede leer en 30 segundos.
La diferencia con el Excel del lunes. Esto llega a las 7:15 de la mañana, todos los días laborables, con los datos del día anterior.
// n8n Code Node: Clasificar alerta y enviar notificación
const briefing = $input.item.json.briefing;
const hasAlert = briefing.includes('### Alertas activas') &&
!briefing.includes('Sin alertas activas');
const emailSubject = hasAlert
? 'ALERTA TESORERÍA: Requiere atención'
: 'Briefing diario tesorería: Posición sana';
const emailRecipients = hasAlert
? ['[email protected]', '[email protected]']
: ['[email protected]'];
return {
subject: emailSubject,
recipients: emailRecipients,
body: briefing,
priority: hasAlert ? 'high' : 'normal'
};El caso real: de 2,5 horas cada lunes a una alerta cada mañana (lo he calculado en euros pero aplícalo a tu moneda local)
Una empresa de distribución de alimentación, 180 empleados, facturación de 22 millones de euros.
El equipo de finanzas tenía 3 personas. Cada lunes, una de ellas pasaba 2,5 horas consolidando la posición de tesorería para la reunión de dirección de los martes.
El proceso era el que describí arriba: ERP, banco, Excel, llamadas a comerciales.
Implantaron el agente en 6 semanas.
Las primeras 4 semanas: mapear fuentes, conectar Salt Edge a los 2 bancos principales, configurar la exportación del ERP.
La parte técnica no fue el cuello de botella.
Lo fue decidir los umbrales: cuánto es el mínimo de caja operativa para esta empresa, qué porcentaje de concentración en un cliente es tolerable.
Semana 5: primer briefing automático en la bandeja de entrada del CFO a las 7:20 del lunes.
Semana 6: el agente detectó que un cliente que representaba el 21% del cobro pendiente llevaba 4 días sin movimiento en una factura de 180.000 euros con vencimiento en 3 días.
El equipo llamó ese mismo lunes por la mañana.
El cliente había tenido un problema interno con su proceso de pagos y no lo había comunicado. Resuelto el jueves.
Sin el agente, se habrían enterado el viernes, cuando el cobro ya era fallido.

Resultado a los 3 meses: el tiempo dedicado a consolidación bajó de 2,5 horas semanales a 20 minutos de revisión del briefing.
El equipo orientó ese tiempo liberado a analizar márgenes por cliente y categoría, algo que llevaban 2 años queriendo hacer.
Esto no es tecnología para "explorar después".
Es infraestructura.
La arquitectura en una tabla
Capa | Herramienta | Coste aproximado | Tiempo de setup |
|---|---|---|---|
Agregación bancaria | Salt Edge / Belvo / Plaid | 150-400 EUR/mes | 1-2 días |
Orquestación del flujo | n8n (self-hosted) | 50 EUR/mes | 3-5 días |
Motor de análisis | Claude API (Anthropic) | 20-80 EUR/mes según volumen | 1 día |
Notificaciones | Email / Slack | 0 EUR (herramientas existentes) | Medio día |
Total | 220-530 EUR/mes | 6-9 días de trabajo técnico |
Ojo: son días de trabajo técnico.
En calendario, cuenta unas 6 semanas, como en el caso: lo que más tarda es decidir los umbrales.

Para una empresa que paga 2,5 horas semanales de un perfil de tesorería, el ahorro de horas casi paga la herramienta.
El ROI de verdad. Detectar a tiempo un cobro como el de 180.000 €.
Lo que el agente no hace (y es importante saberlo)
El agente no sustituye al criterio del CFO.
Si el modelo dice que la caja a 30 días es holgada pero tú sabes que hay una renegociación de contrato que puede cambiar el panorama, eso no está en los datos.
El agente no lo sabe.
El agente es tan bueno como los datos que recibe.
Si el ERP tiene posiciones de cobro mal registradas, el forecast será incorrecto.
Y los umbrales los tienes que definir tú.
El agente no sabe cuál es el mínimo de caja tolerable para tu empresa. Nadie lo sabe mejor que tú.
Lo que el agente sí hace: elimina el trabajo manual de consolidación, te avisa antes de que tengas que preguntar y te da contexto en vez de solo números.
El CFO moderno no compite con más horas.
Compite con mejor información, antes.

Nos vemos la semana que viene.
