El 23% de las facturas B2B se pagan tarde.

No es un dato de consultora. Es la realidad de cualquier CFO que haya tenido que llamar a un cliente para preguntar "¿viste la factura que te envié hace 47 días?"

Y lo peor no es el retraso. Es el tiempo que consume: revisar qué facturas vencieron, redactar el email (educado pero firme), hacer seguimiento, volver a escribir cuando no contestan, y repetir.

El CFO no debería ser el cobrador de la empresa. Pero en muchas, lo es.

Hasta que decides automatizarlo.

"Pasamos de perseguir 40 facturas al mes a que el sistema las gestione solo. Yo solo reviso el dashboard." — Controller de un saas de 100 empleados

Hoy te enseño cómo construir un flujo de IA que:
• Detecta facturas vencidas automáticamente
• Genera recordatorios personalizados según días de retraso
• Escala el tono progresivamente
• Trackea respuestas y pagos
• Te reporta métricas de cobro cada semana

Y lo mejor: lo puedes montar en una tarde.

El flujo completo (de principio a fin)

📅 Trigger diario (9:00 AM) → 📊 Lista facturas del sistema → 🔍 Filtrar vencidas por días de retraso → 🤖 Claude genera email personalizado (tono según urgencia) → 📧 Enviar al cliente → 📝 Loguear acción → 📊 Reporte semanal al CFO

Niveles de escalada:

  • 1-7 días: Recordatorio amable

  • 8-15 días: Seguimiento directo

  • 16-30 días: Tono firme

  • >30 días: Escalada crítica + alerta

Implementación con Claude Code (el camino rápido)

Si prefieres código a cajitas, Claude Code te monta esto en 30 minutos.

Qué es Claude Code

Un agente de programación que vive en tu terminal. Le describes qué quieres, él escribe el código, lo ejecuta, lo depura. Tú supervisas y ajustas.

El prompt para Claude Code

Abre tu terminal, lanza Claude Code, y pégale esto:

Necesito un script en Python para automatizar el cobro de facturas pendientes.

CONTEXTO:
- Tengo las facturas en un Google Sheet con columnas: 
  invoice_id, client_name, client_email, amount, due_date, status, days_overdue
- Quiero enviar recordatorios automáticos según los días de retraso
- El tono del email debe escalar según la urgencia

LO QUE NECESITO:

1. CONFIGURACIÓN
   - Archivo .env para API keys (Google Sheets, Anthropic, SMTP)
   - requirements.txt con dependencias
   - README con instrucciones

2. SCRIPT PRINCIPAL (invoice_collector.py)
   
   Lógica de escalada:
   - 1-7 días: Recordatorio amable
   - 8-15 días: Seguimiento directo
   - 16-30 días: Tono firme
   - >30 días: Escalada urgente

   Para cada factura vencida:
   - Leer datos del Sheet
   - Calcular días de retraso
   - Generar email con Claude API (personalizado al cliente)
   - Enviar via SMTP
   - Actualizar columna last_reminder en Sheet
   - Loguear acción

3. REPORTE SEMANAL (weekly_report.py)
   - Total facturas pendientes
   - Monto total por cobrar
   - Distribución por días de retraso
   - Enviar resumen por email al CFO

4. ESTRUCTURA
   /invoice-collector
   ├── .env.example
   ├── requirements.txt
   ├── README.md
   ├── invoice_collector.py
   ├── weekly_report.py
   └── templates/
       └── email_templates.py

Empieza creando la estructura y el script principal.

Lo que Claude Code va a hacer

  1. Crear la estructura — carpetas, archivos de config, dependencias

  2. Escribir el código — conexión a Sheets, lógica de escalada, integración Claude

  3. Pedirte las keys — cuando necesite probar conexiones reales

  4. Iterar contigo — si algo falla, lo arregla; si quieres cambios, los hace

En 30-40 minutos tienes un MVP funcionando.

Ejemplo de output: Email día 5 (tono amable)

Asunto: Recordatorio factura #2024-156 - Próximo

Hola María,

Espero que todo vaya bien por Acme Corp.

Te escribo porque la factura #2024-156 por €4.500 venció el 27 de enero 
y aún no hemos registrado el pago.

Puede que se haya pasado o que haya algún tema pendiente de tu lado. 
Si es así, dime y lo resolvemos.

Si ya hiciste la transferencia, ignora este mensaje 
(a veces los bancos tardan en reflejarlo).

¿Me confirmas?

Un saludo,
Aarón
Próximo | Finanzas

Ejemplo de output: Email día 22 (tono firme)

Asunto: Urgente: Factura #2024-156 vencida hace 22 días

Hola María,

Te escribo respecto a la factura #2024-156 por €4.500, 
que venció el 27 de enero — hace ya 22 días.

Es importante que regularicemos esta situación lo antes posible.

Por favor, confírmame:
1. ¿Hay algún problema con la factura?
2. ¿Cuándo podemos esperar el pago?

Si necesitas que te reenvíe la factura o los datos bancarios, dímelo.

Quedo a la espera de tu respuesta.

Un saludo,
Aarón
Próximo | Finanzas

Alternativa: n8n si prefieres visual

Mismo resultado, pero arrastrando nodos:

  • Schedule Trigger → Cron diario 9am

  • Google Sheets → Lee facturas pendientes

  • Filter → Solo vencidas (due_date < today)

  • Function → Calcula días de retraso y asigna nivel

  • Switch → Ramas por nivel (soft/medium/firm/critical)

  • Anthropic Claude → Genera email según tono + datos

  • Send Email → Al cliente (CC comercial si >15 días)

  • Google Sheets Update → Actualiza last_reminder

  • Slack (opcional) → Notifica "X recordatorios enviados hoy"

Antes vs Después

Sin el flujo:

  • 3-4 horas/semana persiguiendo facturas

  • Recordatorios inconsistentes

  • El CFO haciendo de cobrador

Con el flujo:

  • 0 horas (automático)

  • Escalada sistemática, nunca se olvida

  • El CFO revisando métricas, no persiguiendo

La reflexión final

El tiempo de un CFO vale demasiado para gastarlo en perseguir pagos.

No es solo eficiencia. Es dignidad profesional.

Cuando automatizas el cobro, recuperas algo más importante que horas: recuperas el foco para hacer lo que realmente mueve el negocio.

Y en un entorno donde el cash flow es oxígeno, un sistema que cobra por ti no es un lujo. Es infraestructura crítica.

El CFO moderno no persigue facturas. Diseña sistemas que las cobran solas.