# ING FinTS Auswertung ![Dashboard](static/dashboard.png) Python-Skripte und Web-Dashboard zur automatisierten Auswertung eines ING-Kontos über FinTS. --- ## Funktionen ### balance.py * Aktuellen Kontostand abrufen * Übertragung an ioBroker * Logging ### transactions.py * Abruf der Kontobewegungen einer Kalenderwoche * Export als CSV und JSON * Übertragung von Kennzahlen an ioBroker ### categorize_transactions.py * Kategorisierung anhand von Kategorien.json * Erzeugung von Auswertungen * Erstellung der Excel-Jahresauswertung ### Flask Web-Dashboard * Dashboard mit aktueller Kalenderwoche * Aktueller Kontostand aus ioBroker * Kontostand-Ampel * Einnahmen / Ausgaben / Saldo * Transaktionen der aktuellen Woche * Unbekannte Buchungen * Kategorienverwaltung * Wartungsbereich * Log-Anzeige --- ## Web-Dashboard ### Dashboard Anzeige von: * Kontostand * Einnahmen * Ausgaben * Saldo * Transaktionen der aktuellen Kalenderwoche * Unbekannte Buchungen ### Unbekannte Buchungen Alle Transaktionen mit Kategorie: ```text Unbekannt ``` werden in einer eigenen Kachel angezeigt. Von dort kann direkt zur Kategorienverwaltung gewechselt werden. ### Kontostand-Ampel Konfigurierbar über: ```ini BALANCE_YELLOW_DAY=15 BALANCE_YELLOW_LIMIT=400 BALANCE_RED_DAY=28 BALANCE_RED_LIMIT=300 ``` Beispiel: * ab Tag 15 und unter 400 € → Orange * ab Tag 28 und unter 300 € → Rot ### Wartung Über die Weboberfläche können folgende Aktionen gestartet werden: * Kontostand aktualisieren * Transaktionen laden * Kategorisierung starten * Wochenupdate ### Wochenupdate Führt automatisch aus: ```text transactions.py ↓ categorize_transactions.py ``` ### Popup-Meldungen Erfolgreiche Aktionen werden direkt im Dashboard angezeigt. --- ## Verzeichnisstruktur ```text /home/banking ├── .ing.conf ├── logs │ ├── balance.log │ ├── transactions.log │ └── categorize_transactions.log │ ├── ING │ ├── app.py │ ├── balance.py │ ├── transactions.py │ ├── categorize_transactions.py │ ├── Kategorien.json │ ├── templates/ │ ├── static/ │ └── README.md │ └── Transaktionen └── YYYY ├── csv ├── json ├── categorized_csv ├── categorized_json ├── summary └── jahresauswertung ``` --- ## Konfiguration Datei: ```text ~/.ing.conf ``` Beispiel: ```ini ING_USER=12345678 ING_PIN=geheim ING_IBAN=DExxxxxxxx IOBROKER_HOST=10.0.1.122 IOBROKER_PORT=8087 IOBROKER_DP_BALANCE=javascript.0.Variablen.Konto IOBROKER_DP_TRANSACTIONS=javascript.0.Variablen.Konto_Transaktionen IOBROKER_DP_WEEKSUM=javascript.0.Variablen.Konto_Wochensumme IOBROKER_DP_WEEKEXPENSES=javascript.0.Variablen.Konto_Wochenausgaben BALANCE_YELLOW_DAY=15 BALANCE_YELLOW_LIMIT=400 BALANCE_RED_DAY=28 BALANCE_RED_LIMIT=300 ``` --- ## Installation Repository klonen: ```bash git clone https://git.hintergasse.de/hubobel/ING.git ``` Abhängigkeiten installieren: ```bash pip install -r requirements.txt ``` --- ## Wichtige Befehle Repository aktualisieren: ```bash git -C ~/ING pull ``` Kontostand abrufen: ```bash python3 ~/ING/balance.py ``` Transaktionen laden: ```bash python3 ~/ING/transactions.py ``` Bestimmte Kalenderwoche laden: ```bash python3 ~/ING/transactions.py 2026 25 ``` Kategorisieren: ```bash python3 ~/ING/categorize_transactions.py ``` Bestimmte Kalenderwoche kategorisieren: ```bash python3 ~/ING/categorize_transactions.py 2026 25 ``` --- ## Logging Linux: ```text /home/banking/logs ``` Windows (PyCharm): ```text /logs ``` --- ## Betriebssysteme ### Linux * Debian * Ubuntu * Proxmox VE ### Windows * Windows 11 * PyCharm Die Skripte erkennen automatisch die Umgebung und verwenden passende Log- und Konfigurationspfade. --- ## ioBroker Verwendete Datenpunkte: * Kontostand * Anzahl Transaktionen * Wochensumme * Wochenausgaben Der Kontostand wird zusätzlich im Dashboard angezeigt. --- ## Lizenz Privates Projekt.