Skip to content

shoaibarham/TaskTrackPro

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Invoice Processing & Bank Statement Management System

A Flask-based web application for managing invoices, processing bank statements, and generating comprehensive financial reports.

Features

1. Invoice Management

  • Upload and process invoices (PDF, Excel, Images)
  • Extract key information using AI
  • Track invoice numbers, dates, amounts, and VAT
  • Multi-currency support (EUR, BGN, USD)
  • Automatic currency conversion

2. Bank Statement Processing

  • Process bank statements
  • AI-powered payee extraction from references
  • Automatic transaction matching with invoices
  • Smart categorization of transactions
  • Bank fee auto-detection (≤17 EUR transactions)

3. Supplier Management

  • Maintain supplier database
  • Track VAT numbers and categories
  • Automatic category suggestions
  • Import/Export supplier data

4. Comprehensive Reporting

  • Generate detailed financial reports
  • Combine invoice and bank statement data
  • Monthly income/expense summaries
  • Multi-currency reporting
  • Export to Excel format

Setup

  1. Create and activate virtual environment:
python -m venv venv
source venv/bin/activate  # For Linux/Mac
venv\Scripts\activate     # For Windows
  1. Install dependencies:
pip install -r requirements.txt
  1. Create .env file with required environment variables:
GOOGLE_API_KEY=your_gemini_ai_api_key
  1. Run the application:
python app_flask.py

The application will be available at http://0.0.0.0:5000

Directory Structure

├── templates/          # HTML templates
├── static/            # Static files (CSS, JS)
├── uploads/           # Uploaded files
├── attached_assets/   # Sample files & assets
└── ...

Key Components

1. Invoice Manager (invoice_manager.py)

  • Handles invoice database operations
  • Tracks invoice metadata and relationships
  • Manages currency conversions

2. Bank Statement Processor (bank_statement_processor.py)

  • Processes bank statements
  • Extracts payee information
  • Matches transactions with invoices

3. AI Extractor (ai_extractor.py)

  • Uses Google's Gemini AI for data extraction
  • Processes documents intelligently
  • Suggests categories and classifications

4. Excel Export/Import (excel_exporter.py, excel_import.py)

  • Handles data export to Excel
  • Generates comprehensive reports
  • Supports data import from Excel

API Endpoints

Main Routes

  • /: Dashboard
  • /upload: Upload invoices
  • /process_bank_statements: Process bank statements
  • /comprehensive_report: Generate reports
  • /suppliers: Manage suppliers
  • /invoices: View invoices
  • /currency_settings: Manage exchange rates

Technologies Used

  • Flask (Web Framework)
  • SQLite (Database)
  • Google Gemini AI (Document Processing)
  • Pandas (Data Processing)
  • PyPDF2 & pdfplumber (PDF Processing)
  • Bootstrap (Frontend)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published