Volver a projects
Aug 10, 2025
3 min read

GastoBot

GastoBot es un bot de Telegram que, con ayuda de la IA de Google, permite registrar y organizar gastos personales desde texto, voz o fotos de tickets en Google Sheets, ofreciendo validación, resúmenes mensuales y seguridad al usuario.

📌 GastoBot 🤖💰

GastoBot es un bot de Telegram pensado para simplificar el registro de gastos personales. Su objetivo es permitir que el usuario anote gastos de forma rápida y flexible, usando texto, voz o incluso fotos de tickets. Para ello, integra la IA Generativa de Google (Gemini) y guarda la información en Google Sheets, organizada automáticamente por meses.

🔑 Propósito

El bot ofrece una manera inteligente y centralizada de registrar gastos sin necesidad de introducirlos manualmente en una hoja de cálculo. Además, permite validar, corregir y organizar cada entrada antes de guardarla, garantizando precisión y control.

✨ Funcionalidades principales

  • Registro inteligente:

    • Mensajes de texto como “he pagado 15€ en el super”.
    • Notas de voz.
    • Fotos de tickets o recibos.
      • El bot extrae automáticamente establecimiento, importe, descripción y categoría.
  • Validación antes de guardar: El usuario revisa los datos y puede:

    • Aceptar el gasto.
    • Editar cualquier campo.
    • Cancelar la operación.
  • Organización automática: Los gastos se almacenan en Google Sheets, con cada mes en una pestaña independiente (ejemplo: “Agosto 2025”).

  • Resúmenes mensuales: Con el comando /summary, el bot genera un desglose de los gastos del mes actual por categorías.

  • Seguridad: Solo responde al usuario autorizado en Telegram, ignorando mensajes de otras personas.

⚙️ Flujo de uso

  1. Entrada: El usuario envía un mensaje de texto, voz o imagen al bot.

  2. Procesamiento con IA: El bot envía el contenido a Gemini, que extrae los detalles (establecimiento, importe, descripción, categoría) en formato JSON.

  3. Revisión: El bot muestra los datos al usuario en un menú interactivo.

  4. Confirmación o edición: El usuario puede aprobar, modificar o cancelar el gasto.

  5. Almacenamiento: Una vez confirmado, el gasto se añade como nueva fila en la pestaña del mes correspondiente en Google Sheets.

🛠️ Tecnologías utilizadas

  • Python – lenguaje principal.

  • python-telegram-bot – integración con la API de Telegram.

  • Google Generative AI (Gemini) – procesamiento de texto e imágenes.

  • gspread – conexión con Google Sheets.

  • python-dotenv – gestión de variables de entorno.

💬 Uso

  • Registrar un gasto: Enviar un texto (ejemplo: “25,50€ cena con amigos”), una nota de voz o una foto de un ticket.

  • /start: Muestra el mensaje de bienvenida.

  • /help: Muestra instrucciones de ayuda.

  • /summary: Proporciona un resumen de gastos del mes en curso, organizado por categorías.

  • /myid: Muestra tu ID de usuario de Telegram (solo útil en la configuración inicial).