Analizador de Tickets con IA
Un bot de Telegram que convierte la foto de un ticket de supermercado en un desglose de gasto por categorías, de forma automática y con revisión humana antes de guardar.
Vídeo de demostración
Cómo funciona
Del ticket en papel a tus gastos clasificados, en cinco pasos
- Envías la foto. Mandas la imagen del ticket al bot de Telegram, sin instalar nada nuevo.
- n8n orquesta. Recibe la imagen y coordina cada paso del proceso de forma automática.
- La IA lee y clasifica. GPT-4o-mini Vision interpreta el ticket y reparte cada producto en 8 categorías de gasto.
-
Tú revisas. Con
/editarcorriges lo que la IA no acierte; con/confirmardas el visto bueno. - Se guarda. Al confirmar, el gasto por categoría queda registrado en Google Sheets, listo para analizar.
Decisión de arquitectura: separar IA y cálculo
Cuando el bot cuadraba el total pero repartía mal el gasto
Al principio le pedía al modelo dos cosas en el mismo paso: que clasificara cada producto y que sumara cada categoría. Casi siempre salía bien, así que no le di más vueltas. Hasta que un día sumé un ticket a mano para comprobarlo y los números no me cuadraban con los del bot.
Qué vi
En un ticket, una crema de cacahuete de 2,65 € no aparecía en su categoría. Lo raro era que el total seguía bien; lo que fallaba era el reparto entre categorías.
Por qué pasaba
Los modelos de lenguaje no se llevan bien con las cuentas. Como le había pedido que la suma de las categorías diera igual que el total del ticket, el modelo movía importes de una categoría a otra para que la cifra final encajara. Al compensarse unos errores con otros, el total daba bien y el fallo no se veía a simple vista.
Cómo lo arreglé
Separé el trabajo. Ahora el modelo solo decide la categoría de cada producto, y las sumas las hace un trozo de código aparte que siempre da el mismo resultado. Desde entonces el desglose por categorías es exacto y lo puedo comprobar cuando quiera.
La IA se encarga de leer el ticket y el código de hacer las cuentas. Un modelo de lenguaje interpreta bien, pero no es una calculadora.
Decisiones de diseño
Por qué está montado así y no de otra forma
Visión con IA, no OCR clásico
Un OCR devuelve texto en bruto; el modelo de visión entiende el ticket (nombres abreviados, formatos raros de cada súper) y además clasifica en un solo paso.
Revisión humana antes de guardar
La IA puede dudar al clasificar un producto. El paso
/editar garantiza que en la hoja solo entran datos
correctos: calidad de datos sobre automatización ciega.
Telegram como interfaz
Cero fricción: el usuario ya lo tiene instalado y sabe usarlo. No hay que aprender ninguna herramienta nueva.
El código fuente, los prompts y la configuración del flujo no se publican: son la parte que da valor al proyecto y me reservo su uso. Aquí muestro qué hace y por qué, no la receta para replicarlo.
Preparado para lo que salga mal
Cada acción pasa por una comprobación: si algo no encaja, el bot responde en vez de fallar
Para qué sirve, en la práctica
El resultado, más allá de la parte técnica
Uso este sistema para registrar mis compras de supermercado. En unos segundos, una foto del ticket se convierte en un desglose fiable de cuánto gasto en proteínas, fruta y verdura, procesados, etc. — la información que el extracto del banco nunca te da.
Con los datos acumulados en Google Sheets puedo ver tendencias por meses y ajustar mis hábitos de consumo con información real, no con estimaciones. El desglose por categorías es exacto, así que no hay que revisar las sumas a mano: la revisión humana queda solo para afinar alguna clasificación puntual.