Skip to content

Releases: BotirBakhtiyarov/SmartExpenseBot

SmartExpenseBot v1.2.1

18 Nov 16:55

Choose a tag to compare

Release Date: 2025-11-18

This release improves the timezone selection flow, enhances currency handling during income entry, and fixes several issues related to country input and reminder rescheduling.


Added

🔤 Country Input Enhancements

  • Timezone Change via Text — Users can now type a country name in any supported language when changing their timezone in Settings.
  • Unified Translations — Added enter_country_prompt (Uz/En/Ru) reused across both Onboarding and Settings.

🛠️ Changed

🌍 Timezone Flow Improvements

  • Settings keyboard now displays:

    • Share Location
    • Enter Country
  • Users stay in timezone selection mode until either:

    • A valid country is detected
    • Or they tap Back

💱 Currency Selection Logic

  • When selecting a currency, the bot now accurately returns to the correct workflow:

    • Expense flow → returns to expense input
    • Income flow → returns to income input

🐞 Fixed

💰 Income Currency Handling

  • Fixed issue where users entering income before selecting a currency were stuck or misrouted.
  • After currency selection, users are now correctly redirected back to income entry.

🌐 Country Input Bugs

  • Country names entered during timezone change now properly trigger:

    • Correct timezone validation
    • Reminder rescheduling
    • Multi-language error messages
    • Proper fallbacks when detection fails

SmartExpenseBot v1.2.0 — Massive Feature Release

17 Nov 20:04
c3f6bf8

Choose a tag to compare

🚀 SmartExpenseBot v1.2.0 — Massive Feature Release

This release introduces the biggest update ever to SmartExpenseBot — including full income tracking, unified currency system, account deletion, AI-powered country detection, daily reminders, and a completely upgraded reporting engine.

All features are fully compatible with the previous version.
No data loss. No manual migrations required. ✔️


What’s New in v1.2.0

💰 1. Income Tracking (Brand New System)

You can now track daily and monthly income:

  • Natural language income entry
    “I earned 5000 yuan this month”
  • Voice-based income extraction
  • AI-powered amount, type, description detection
  • Income included in all financial reports
  • Balance calculation = income − expenses

This turns SmartExpenseBot into a full financial manager.


💳 2. Unified Currency System (Major Improvement)

  • All expenses & incomes now use one default currency (from User table)
  • Currency is selected once, can be changed any time
  • Reports now show consistent currency
  • No more mixed-currency issues

🔐 3. Account Deletion (Privacy Upgrade)

  • New Delete Account menu option

  • All user data is safely removed:

    • expenses
    • incomes
    • reminders
  • Bot stops responding until the user restarts

  • All scheduled reminders automatically canceled


4. Donation System (New!)

Multiple donation platforms:

  • Telegram Stars (native payment)
  • Patreon
  • GitHub Sponsors
  • Tirikchilik.uz for Uzbekistan users

Includes:

  • Preset payment options
  • Custom donation amount
  • Thank-you messages in user’s language

🌍 5. Improved Localization & Country Detection

  • AI recognizes country names in Uzbek, Russian, English

  • Accurate timezone detection from:

    • country text
    • location GPS
  • Reports fully localized in user’s language

  • Improved translations


🔔 6. Daily Expense Reminders

Every day at 20:00 (local timezone), the bot sends an automatic reminder:

  • Localized message
  • Automatically rescheduled if timezone changes
  • Works even after bot restart

📊 7. Reporting Engine Upgrade

A completely redesigned reporting system:

  • Report generation now in user’s preferred language
  • Income + expense balance
  • Category summaries
  • Cleaner plain-text (no markdown noise)
  • Improved DeepSeek prompts for richer insights

🎤 8. Voice Transcription Optimization (Performance Boost)

  • Vosk models use a Singleton pattern (load once, reuse always)
  • Significantly faster processing
  • Lower memory usage
  • Thread-safe model handling

🛠 Technical Improvements

  • Database schema adjusted for unified currency
  • Better consistency across income/expense models
  • Safer thread-local sessions
  • Improved error handling
  • Stronger scheduler stability

🐛 Bug Fixes

  • Fixed Income-related report crash
  • Fixed wrong currency issues in reports
  • Fixed donation thank-you messages always showing in English
  • Fixed timezone parsing issues
  • Fixed account deletion not stopping bot replies

🔒 Security

  • Safe cascade deletion
  • Thread-safe database operations

🚀 Performance

  • Shared Vosk cache
  • Faster startup
  • Optimized DB queries
  • Better scheduler management

📚 Upgrade Notes

From v1.1.0 → v1.2.0

  • No manual database migrations required
  • Existing data remains safe
  • New “incomes” table automatically created
  • No config changes required

Just redeploy — the bot will upgrade itself.


🧑‍💻 Contributors

  • Botir Bakhtiyarov — Creator & Maintainer

🔗 Useful Links

  • GitHub Repo
  • Patreon
  • GitHub Sponsors
  • Tirikchilik.uz

SmartExpenseBot — Initial Public Release(v1.1.0)

17 Nov 19:22

Choose a tag to compare

🎉 SmartExpenseBot — Initial Public Release (v1.1.0)

We are excited to publish the first public release of SmartExpenseBot, an AI-powered personal finance assistant for Telegram.

This version includes complete expense tracking, voice transcription, scheduling, timezone detection, and multi-language support.


What’s Included in This Release

💸 Expense Management

  • Add expenses using natural language

  • AI automatically extracts:

    • Amount
    • Currency
    • Category
    • Description
  • Multi-currency support (USD, EUR, CNY, RUB, UZS, and more)

  • Confirmation workflow for accuracy

  • Support for multiple expenses in a single message

  • Voice message support with Vosk STT models


📊 Reports & Insights

  • Ask natural language questions:

    • “Show my expenses this month”
    • “Food expenses last week”
    • “Total for December”
  • Category breakdown

  • Date range filtering

  • Spending summaries


Reminder System

  • AI-based natural language time parsing
  • Timezone-aware scheduling
  • “Remind me in 2 hours”
  • Warning notification + exact-time notification
  • Daily 20:00 expense reminders

🌍 Localization & Languages

  • Full support for:

    • English
    • Russian
    • Uzbek
  • Country → timezone detection

  • Location-based timezone setup


🎤 Voice Transcription

  • Uzbek / Russian / English
  • Automatic model loading
  • Efficient caching
  • FFmpeg-based audio conversion

🛠 Architecture & Tech Stack

  • Python 3.8+
  • pyTelegramBotAPI
  • SQLAlchemy (thread-safe)
  • APScheduler
  • DeepSeek AI
  • Vosk speech models

📦 Deployment Notes

  • Works with SQLite (development)
  • Works with PostgreSQL (production)
  • Safe to deploy on Railway / Render / VPS

🔒 Stability Notes

  • Automatic table creation (no manual migrations needed)
  • Existing data preserved
  • Thread-safe session handling

📣 Feedback

Found a bug? Have a feature request?
Open an issue on GitHub or message via Telegram Feedback in the bot.

New Contributors

Full Changelog: https://github.com/BotirBakhtiyarov/SmartExpenseBot/commits/1.1.0