📌 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
- 
Entrada: El usuario envía un mensaje de texto, voz o imagen al bot.
 - 
Procesamiento con IA: El bot envía el contenido a Gemini, que extrae los detalles (establecimiento, importe, descripción, categoría) en formato JSON.
 - 
Revisión: El bot muestra los datos al usuario en un menú interactivo.
 - 
Confirmación o edición: El usuario puede aprobar, modificar o cancelar el gasto.
 - 
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).