Skip to content

assachandev/telegram-finance-tracker

Repository files navigation

telegram-finance-tracker

Self-hosted Telegram bot for tracking personal income and expenses, with cash vs. transfer balance and automatic reports.

Python python-telegram-bot License


Setup

git clone https://github.com/your-username/telegram-finance-tracker.git
cd telegram-finance-tracker
cp .env.example .env   # fill in your values
./setup.sh

Required in .env:

Variable Description
TELEGRAM_BOT_TOKEN From @BotFather
TELEGRAM_CHAT_ID From @userinfobot
HOST_DATA_DIR Host path where finance.db will be stored
CURRENCY_SYMBOL e.g. ฿ $ (default: ฿)

Features

  • Expense & Income tracking with category selection
  • Cash / Transfer split — separate running balance per method
  • Auto-cancel — pressing any menu button mid-flow cancels the current action and processes the new one
  • Edit Transaction — edit amount, category, method, or note on any of the 10 most recent transactions
  • Delete Last — remove the most recent transaction with confirmation
  • Custom categories — add/remove per type from within the bot
  • Automatic reports — daily at 23:30, monthly on last day, yearly on Dec 31 (Bangkok time)
  • On-demand reports — Today, This Month, This Year, All-Time Summary
  • Single-user — restricted to one Telegram Chat ID

Docker

docker compose logs -f     # logs
docker compose down        # stop
docker compose up -d --build  # rebuild

License

MIT

About

Self-hosted Telegram bot for tracking personal income and expenses

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors