Skip to content

About

AI-powered Telegram bot for personal finance management with budgeting, expense tracking, analytics, and PostgreSQL integration.

Topics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Latest commit

Β 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ’Ž Smart Finance Bot

πŸ’° Intelligent Personal Finance Management Telegram Bot

Professional Java Telegram Bot Powered by Spring Boot & PostgreSQL

Manage your income, expenses, financial reports, and personal budget directly inside Telegram with a modern, secure, and intelligent finance management system.


Java Spring Boot PostgreSQL Hibernate Telegram Maven


πŸ“– Overview

Smart Finance Bot is a professional Telegram-based personal finance management system built with Java and Spring Boot.

The bot helps users efficiently manage daily income and expenses, generate financial reports, analyze spending habits, and improve budgeting through an intuitive Telegram interface.

Unlike traditional expense trackers, Smart Finance Bot offers real-time analytics, categorized financial reports, intelligent session management, and a seamless user experience directly inside Telegram.


🎯 Project Goals

βœ… Simplify personal finance management

βœ… Track daily income and expenses

βœ… Provide detailed financial analytics

βœ… Improve budgeting habits

βœ… Generate professional financial reports

βœ… Deliver a fast and secure Telegram experience


✨ Main Features


πŸ’° Income Management

Easily record all sources of income.

Features include:

  • Salary tracking
  • Freelance income
  • Bonuses
  • Investments
  • Custom income categories
  • Automatic balance updates

πŸ’Έ Expense Tracking

Track every expense with category support.

Supported categories:

  • Food
  • Transport
  • Shopping
  • Bills
  • Education
  • Entertainment
  • Healthcare
  • Other

πŸ“Š Financial Reports

Generate powerful reports instantly.

Available reports:

  • πŸ“… Daily Report
  • πŸ“† Weekly Report
  • πŸ—“ Monthly Report
  • πŸ“ˆ Income Analysis
  • πŸ“‰ Expense Analysis
  • πŸ’΅ Current Balance
  • πŸ’Ή Net Profit
  • πŸ“Š Category Statistics

πŸ“ˆ Spending Analytics

Visual financial insights include:

  • Largest expense category
  • Largest income source
  • Spending percentage
  • Budget distribution
  • Financial trends
  • Income vs Expense comparison

🧠 Intelligent Financial Engine

Designed with scalable backend architecture.

Includes:

  • Session Management
  • User State Management
  • Category Grouping
  • Automatic Calculations
  • Financial Summary Generation
  • Smart Navigation

πŸ€– Professional Telegram Experience

Built using Telegram Bot API.

Features:

  • Interactive Inline Keyboards
  • Multi-step conversations
  • Fast response time
  • Clean user interface
  • Easy navigation

πŸ—„ Database Management

All data is securely stored inside PostgreSQL.

Tables:

Users

  • User ID
  • Chat ID
  • First Name
  • Last Name
  • Registration Date

Transactions

  • Transaction ID
  • Amount
  • Type
  • Category
  • Date
  • User ID

πŸ” Security

Security features include:

  • Telegram Token via Environment Variables
  • Secure PostgreSQL Storage
  • Hidden Configuration Files
  • .gitignore Protection
  • Safe Session Handling

πŸ— Architecture

Telegram User

↓

Telegram Bot API

↓

Controller Layer

↓

Service Layer

↓

Repository Layer

↓

Spring Data JPA

↓

Hibernate

↓

PostgreSQL Database

βš™ Technology Stack

Backend

  • Java 25
  • Spring Boot
  • Spring Data JPA
  • Hibernate
  • Maven

Database

  • PostgreSQL

Telegram

  • Telegram Bots API

πŸš€ Installation

1 Clone Repository

git clone https://github.com/your-username/Smart-Finance-Bot.git

2 Configure PostgreSQL

CREATE DATABASE financebot;

3 Configure application.properties

spring.datasource.url=jdbc:postgresql://localhost:5432/financebot
spring.datasource.username=postgres
spring.datasource.password=your_password

spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=false

4 Configure Telegram Token

Never upload your bot token to GitHub.

Windows

set TELEGRAM_TOKEN=your_token

Linux / macOS

export TELEGRAM_TOKEN=your_token

application.properties

telegram.bot.token=${TELEGRAM_TOKEN}

5 Run

mvn spring-boot:run

or

mvn clean package

java -jar target/financebot.jar

πŸ“· Screenshots

Add screenshots here.

Example:

  • Main Menu
  • Add Income
  • Add Expense
  • Monthly Report
  • Weekly Statistics
  • Current Balance
  • Category Analysis

πŸ“Š Project Statistics

Feature Status
Income Tracking βœ…
Expense Tracking βœ…
Category Management βœ…
Weekly Reports βœ…
Monthly Reports βœ…
Balance Calculation βœ…
Session Management βœ…
PostgreSQL Storage βœ…
Telegram Bot βœ…
Inline Keyboard UI βœ…

πŸ“¦ Deployment

Supported platforms:

  • Railway
  • Render
  • Docker
  • VPS
  • AWS EC2
  • DigitalOcean

πŸš€ Future Improvements

  • πŸ“± Web Dashboard
  • πŸ“Š Interactive Charts
  • πŸ’± Multi-Currency Support
  • πŸ“ˆ AI Spending Prediction
  • πŸ”” Automatic Monthly Reports
  • πŸ“€ Excel Export
  • πŸ“₯ PDF Reports
  • ☁ Cloud Backup
  • πŸ‘₯ Multi-user Analytics
  • πŸ€– AI Financial Advisor

πŸ‘©β€πŸ’» Developer

Dinora Sharipova

Software Engineering Student

Java Backend Developer

Spring Boot β€’ PostgreSQL β€’ REST APIs β€’ Telegram Bots

Passionate about building scalable backend systems and intelligent software solutions.


⭐ Support

If you found this project useful,

⭐ Star this repository

🍴 Fork it

🀝 Contribute

πŸ’¬ Share your feedback

Let's build smarter software together.

About

AI-powered Telegram bot for personal finance management with budgeting, expense tracking, analytics, and PostgreSQL integration.

Topics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages