๐ผ FinanceAI โ Open Banking Personal Finance Intelligence System
AI-powered personal finance dashboard inspired by UK Open Banking, built using Streamlit, ML, and time-series forecasting to deliver intelligent financial insights.
FinanceAI is a smart money assistant that looks at your bank transactions and helps you understand where your money goes, what bills are coming next, and whether you are likely to run out of money in the future.
Example: If you earn ยฃ2,000 a month and spend too much on food and subscriptions, FinanceAI can warn you that your balance may drop below ยฃ200 next month, future transactions and suggest saving or cutting unused subscriptions
๐ Features
๐ Dashboard
- Current balance
- Income & expense overview
- Upcoming predicted payments
- Spending breakdown by merchant
- Recent transactions
- Cash-flow alerts
๐ค AI Insights
- Savings opportunity detection
- Subscription analysis (active vs unused)
- Spending pattern alerts
- Goal-based balance evaluation
- Financial health score
- Personalized recommendations
๐ Forecast
- ARIMA-based balance forecasting
- Trend fallback forecasting
- Low balance alerts (ยฃ200 threshold)
- Recurring transaction predictions
- Confidence scoring (High / Medium / Low)
๐ง AI & Intelligence Logic
Merchant Normalization
Cleans raw bank descriptions:
- Example:
TESCO STORES 1294โTesco - Example:
APPLE.COM/BILL LONDONโApple Services
Brand Mapping
- Maps merchants to canonical brands
- Enables subscription & recurring detection
Recurring Transaction Detection
Uses:
- Date interval consistency
- Amount stability
- Frequency patterns
Confidence Scoring
- High โ Very likely to recur
- Medium โ Probable recurrence
- Low โ Weak or noisy pattern
Balance Forecasting
- ARIMA time-series model
- Logistic Regression
- Fallback average-trend logic
- Date-rangeโdependent accuracy
๐งฑ Project Structure
open-banking-ml/
โ
โโโ pages/
โ โโโ 1_Dashboard.py
โ โโโ 2_AI_Insights.py
โ โโโ 3_Forecast.py
โ
โโโ utils/
โ โโโ merchant_utils.py
โ โโโ ml_models.py
โ โโโ styles.py
โ
โโโ bank_transactions.csv
โโโ requirements.txt
โโโ README.md
๐ Tech Stack
- Python
- Streamlit
- Pandas / NumPy
- Statsmodels (ARIMA)
- Plotly
- Regex / NLP-style processing
๐ Data Simulation
Open BankingโStyle Transactions
- Contactless & online payments
- Merchant noise & IDs
- Subscriptions & bills
- Salary transactions
- Realistic spending intervals
โ ๏ธ No real bank data is used.
โถ๏ธ How to Run Locally
1๏ธโฃ Clone the Repository
git clone https://github.com/jainam1810/financeai-open-banking.git
cd financeai-open-banking
2๏ธโฃ Install Dependencies
pip install -r requirements.txt
3๏ธโฃ Run the App
streamlit run pages/1_Dashboard.py
โ ๏ธ Important Notes
Forecast Sensitivity
- Forecasts change significantly with date range
- More history โ more stable predictions
Scope
- UI & intelligence focused
- No real Open Banking APIs (yet)
User Interface
๐ฎ Future Enhancements
- Multi-bank selection
- Real Open Banking API integration
- Authentication & user profiles
- Category prediction ML model
- PDF export of insights
- Cloud deployment
For future enhancements we can use BERT / FinBERT for transaction understanding, LSTM(RNN) and XGBoost regressor for forecasting, DBSCAN / HDBSCAN & HMM for Recurring Payments & Subscriptions and few more
๐ค Author
Jainam Varia
Student | FinTech | Data | Machine Learning | AI
Built as a portfolio-grade Open Banking intelligence system.
๐ License
This project is open source and available under the MIT License.
Built With
- arima
- html
- natural-language-processing
- numpy
- pandas
- plotly
- prophet
- python
- scikit-learn
- statsmodels
- steamlit


Log in or sign up for Devpost to join the conversation.