Automatische Kontoüberwachung mit n8n & FinTS

Von Lars Decker

Vor einiger Zeit ist unser Gemeinschaftskonto ein paar Tage lang ins Minus gerutscht, obwohl wir unsere Ausgaben eigentlich im Blick hatten. Bemerkt haben wir es erst im Nachhinein. Kein Drama, aber ärgerlich, weil sich das mit etwas Technik leicht hätte verhindern lassen. Ich wollte eine Lösung, die unabhängig von der Banking-App automatisch prüft, ob der Kontostand kritisch wird, und mich sofort warnt. Mit n8n und einem eigenen Community-Node für FinTS geht das inzwischen.


Warum sich die Automatisierung lohnt

  • Der aktuelle Kontostand ist jederzeit abrufbar, ohne manuelles Einloggen in die Banking-App.
  • Sobald der Kontostand unter ein Limit fällt, kommt sofort eine Benachrichtigung, zum Beispiel per Pushover, E-Mail oder Slack.
  • Der Node funktioniert mit den meisten deutschen Banken, etwa ING, DKB, Sparkasse, Volksbank oder Commerzbank.
  • Der Kontostand lässt sich als Trigger für beliebige weitere n8n-Workflows nutzen.

Das eignet sich vor allem für Gemeinschaftskonten, Freiberufler und kleine Firmen, die nicht mehr unbemerkt ins Minus rutschen wollen.


Kurzer Technik-Exkurs: Was ist FinTS?

FinTS, früher HBCI, ist der Standard für Online-Banking-Schnittstellen in Deutschland. Über FinTS können Programme sicher und kontrolliert Kontoabfragen durchführen und Umsätze laden. Für reine Abfragen reichen Benutzerkennung und PIN, eine TAN ist nicht nötig. FinTS funktioniert allerdings nur bei deutschen Banken, für N26, Revolut und ähnliche Anbieter gibt es aktuell keine FinTS-Schnittstelle.


n8n-nodes-fints einrichten

1. n8n installieren

Falls noch nicht geschehen: n8n installieren. Das funktioniert lokal, per Docker, auf einem eigenen Server oder in der Cloud.

2. Community-Node installieren

Im n8n-Verzeichnis im Terminal:

npm install n8n-nodes-fints

Alternativ lässt sich der Node auch lokal clonen und per npm link einbinden.

3. Node in n8n verwenden

Nach einem Neustart von n8n taucht im Workflow der neue Node „FinTS Account Balance" auf.

4. Zugangsdaten eintragen

Damit der Node auf ein Konto zugreifen kann, braucht er die Online-Banking-Zugangsdaten der Bank: die User-ID bzw. den Login-Namen (meist identisch mit dem Webbanking-Benutzernamen) und die PIN, also das Onlinebanking-Passwort, nicht die Kartennummer oder eine TAN.

Die Zugangsdaten werden lokal und verschlüsselt in n8n gespeichert und sollten nicht an Dritte weitergegeben werden.

Credential einrichten: im FinTS-Node auf „Add Credential" klicken, User-ID/Login und PIN eintragen, fertig.

5. Bank auswählen

Im Node lässt sich die passende Bank aus einer Liste auswählen, etwa ING oder DKB. Für exotischere Banken gibt es einen Expertenmodus, in dem sich Bankleitzahl und FinTS-Server-URL manuell eintragen lassen.

6. Beispiel-Workflow: Alarm bei niedrigem Kontostand

Der Workflow besteht aus drei Nodes: Der FinTS-Node holt alle aktuellen Kontostände, ein IF-Node prüft, ob ein Konto unter dem gewünschten Limit liegt (zum Beispiel unter 0 €), und ein Pushover-, E-Mail- oder Slack-Node sendet bei Bedarf sofort eine Warnung.

Die Bedingung im IF-Node:

{{$json["balance"] < 0}}

Im Pushover-Node werden API-Key und User-Key eingetragen, die Nachricht kann zum Beispiel so aussehen:

Warning: Your account {{$json["account"]}} is below zero! Current balance: {{$json["balance"]}} {{$json["currency"]}}.


Was tun bei Fehlermeldungen?

Bei der Meldung „Nachricht teilweise fehlerhaft" oder „Diese Auftragsart ist mit diesem Konto nicht möglich" unterstützt das betroffene Konto, etwa ein Sparkonto oder eine Kreditkarte, keine FinTS-Umsatzabfrage. Der Node überspringt solche Konten automatisch.

Eine TAN-Anforderung ist bei ING und den meisten anderen Banken für reine Kontostandabfragen fast nie nötig. Kommt sie dennoch vor, hilft es meist, die TAN einmal in der Banking-App zu bestätigen und den Workflow danach erneut laufen zu lassen.

Bei anderen Fehlern lohnt sich zunächst ein Blick auf Zugangsdaten und Internetverbindung. Wer nicht weiterkommt, kann ein Issue im Github-Repo eröffnen.


Sicherheit und Grenzen

Die Zugangsdaten sind in n8n so sicher, wie der Server und das gewählte Passwort es zulassen. FinTS ist außerdem auf reine Abfragen ausgelegt, der Node unterstützt keine Überweisungen oder TAN-Automatisierung. Automatisierte Kontostandsabfragen über FinTS sind rechtlich zulässig, das Verfahren wird von deutschen Banken offiziell unterstützt.


Der Node liegt auf Github unter n8n-nodes-fints, dort finden sich auch README und weitere Beispiele. Fragen und Erfahrungen lassen sich im n8n-Forum oder als Github-Issue teilen.

Seit unser Konto einmal überraschend ins Minus gerutscht ist, läuft bei uns diese Automatisierung mit n8n mit, und der Kontostand ist kein blinder Fleck mehr. Für Gemeinschaftskonten, Freiberufler oder kleine Firmen ist das ein Workflow, der sich schnell einrichten lässt und danach einfach im Hintergrund läuft.

Weiterführende Artikel