Buchhaltung
Bankimport – Kontoauszug hochladen und Buchungen erzeugen
Der Bankimport nimmt Ihnen den größten Teil der monatlichen Buchungsarbeit ab: Sie laden den CSV-Export Ihrer Hausbank hoch, die App ordnet jeder Zeile automatisch ein Soll- und ein Habenkonto zu, und Sie bestätigen das Ergebnis mit einem Klick.
#Wie funktioniert der Import?
Der Ablauf gliedert sich in drei Schritte:
- Hochladen — Sie wählen das Bankkonto und laden die CSV-Datei hoch.
- Prüfen — die App schlägt für jede Zeile Soll- und Habenkonto vor und teilt sie in drei Eimer auf: ✅ Eindeutig, 🟡 Zu prüfen, ❓ Unbekannt.
- Buchen — mit „Alle bestätigen und buchen" werden alle nicht-übersprungenen Zeilen in einer einzigen Datenbank-Transaktion ins Kassenbuch geschrieben.
#Welche Dateiformate werden unterstützt?
Unterstützt sind die CSV-Exporte aller gängigen deutschen Hausbanken:
- GLS Bank, Sparkasse (CSV-CAMT), DKB (alt + neu)
- ING-DiBa, Volksbank/Raiffeisenbank (VR-Profi und Online-Banking)
- Commerzbank, Comdirect, Postbank, N26
Trennzeichen (Semikolon, Komma, Tabulator), Zeichenkodierung (UTF-8, ISO-8859-1, Windows-1252) und die Position der Kopfzeile werden automatisch erkannt. Wenn die Erkennung fehlschlägt, können Sie diese Werte im Fallback-Panel manuell setzen.
#Welches Bankkonto wähle ich?
Die Auswahl ist auf Konten mit der Kontonummer 1200 und ihre Untergliederungen begrenzt — das sind nach SKR42 die Bankkonten. Wenn Sie mehrere Hausbanken nutzen, legen Sie pro Bank ein eigenes Unterkonto an (z. B. 1201 GLS, 1202 Sparkasse) — siehe Eigenes Konto anlegen.
#Was bedeuten die drei Eimer?
| Symbol | Bedeutung |
|---|---|
| ✅ Eindeutig | Eine Regel passt 1:1 — die App ist sich sicher. Üblicherweise einfach bestätigen. |
| 🟡 Zu prüfen | Ein Mitglied wurde erkannt, aber die Konten kommen aus einer Standardzuordnung. Sicherheitshalber prüfen. |
| ❓ Unbekannt | Keine Regel passt und kein Mitglied wurde erkannt. Konten müssen manuell gesetzt werden — oder die Zeile wird übersprungen. |
Ist die KI-Kategorisierung aktiviert, taucht zusätzlich das Etikett 🤖 KI-Vorschlag auf — siehe KI-Vorschläge beim Bankimport.
#Die Prüf-Tabelle Schritt für Schritt
Nach dem Hochladen sehen Sie eine Tabelle mit allen Zeilen aus dem Kontoauszug. Pro Zeile bedeutet:
| Spalte | Was steht hier? |
|---|---|
| Datum | Buchungs- bzw. Valutadatum aus der Bank-CSV |
| Empfänger / Auftraggeber | Name und (falls vorhanden) Gegen-IBAN |
| Verwendungszweck | Der Text aus der Bank — Parzellennummern werden gelb markiert |
| Betrag | grün = Eingang (+), rot = Ausgang (−) |
| Soll-Konto | Das Konto, das durch die Buchung belastet wird |
| Haben-Konto | Das Gegenkonto — bei Banküberweisungen meist 1200 Bank |
| Status | Konfidenz-Etikett (✅ / 🟡 / 🤖 / ❓) und ggf. „Übersprungen" |
| Regel-Häkchen | Zuordnung beim Buchen als wiederverwendbare Regel speichern |
| ⋯ Menü | Zeile überspringen / wieder aufnehmen |
#Welches Konto kommt in Soll, welches in Haben?
Die Faustregel für eine Eingangs-Zahlung (Geld kommt aufs Konto):
- Soll = 1200 Bank (Ihr Konto wird belastet, d. h. „auf der Soll-Seite erhöht")
- Haben = das Ertragskonto, woher das Geld stammt:
- Pacht-Zahlung eines Mitglieds → 3200 Pachterträge
- Wasser-Zahlung → 3210 Wassererträge
- Mitgliedsbeitrag → 3100 Mitgliedsbeiträge
- Spende → 3300 Spenden
- sonstige Forderung → 3700 Sonstige Erträge
Für eine Ausgangs-Zahlung (Geld geht vom Konto):
- Soll = das Aufwandskonto (4xxx) oder die Forderung, die bezahlt wurde:
- Pachtzins an Stadt → 4200 Pachtaufwand
- Stromrechnung → 4250 Energieaufwand
- Bürobedarf → 4400 Sonstige Aufwendungen
- Haben = 1200 Bank
Eine vollständige Übersicht der SKR42-Konten finden Sie im Kontenrahmen — und für die häufigsten Geschäftsvorfälle in der Übersicht der automatischen Buchungen, insbesondere Pacht bezahlt, Wasser bezahlt und Mitgliedsbeitrag bezahlt.
Tipp: Im Konto-Auswahlfeld können Sie nach Kontonummer oder Bezeichnung tippen. Ein paar Buchstaben („Pacht", „Strom", „Müll") reichen meist aus, um die passenden Konten zu finden.
#Was bedeutet das Häkchen "Regel"?
Setzen Sie das Häkchen Regel an einer Zeile, wenn die Zuordnung immer so sein soll:
- Hat die Zeile eine Gegen-IBAN (z. B. „Stadt Berlin"), wird eine IBAN-Regel gespeichert: künftige Buchungen von derselben IBAN landen automatisch im ✅-Eimer.
- Hat die Zeile keine IBAN, wird eine Stichwort-Regel aus dem Verwendungszweck gespeichert (das längste sinnvolle Wort, z. B. „Stromabrechnung", „Pachtzins").
Beim nächsten Import wird dieselbe Konstellation automatisch erkannt — Sie sparen Arbeit, und die App wird mit jedem Import schlauer. Die Regeln können Sie später in Buchhaltung → Konten-Zuordnung überprüfen und anpassen.
#Eine Zeile überspringen
Über das ⋯-Menü am rechten Rand können Sie eine Zeile als „Übersprungen" markieren — sie wird beim Buchen ignoriert und bleibt damit im Kontoauszug, aber nicht im Kassenbuch. Sinnvoll z. B. für:
- Buchungen, die schon manuell ins Kassenbuch eingetragen wurden,
- interne Umbuchungen zwischen eigenen Konten, die der Verein lieber separat behandelt,
- Zeilen, deren richtige Zuordnung Sie noch klären müssen — Sie können den Import dann ohne diese Zeile abschließen und sie später einzeln manuell buchen.
Übersprungene Zeilen erkennen Sie an der reduzierten Deckkraft und dem grauen Etikett „Übersprungen".
#„Alle bestätigen und buchen" — was passiert dann?
Der Button ist nur aktiv, wenn jede nicht-übersprungene Zeile ein Soll- und ein Habenkonto hat. Ein Klick:
- Erzeugt für jede aktive Zeile eine Buchung im Kassenbuch mit Quelle „Bankimport".
- Legt für jede Zeile mit gesetztem Regel-Häkchen eine neue
categorisation_rulean (oder aktualisiert eine bestehende). - Aktualisiert die zuletzt benutzten Regeln (Sortierung beim nächsten Import).
- Überspringt Zeilen, deren Referenz bereits gebucht ist (siehe „Duplikate" unten).
Alles passiert in einer einzigen Datenbank-Transaktion — entweder wird alles gebucht, oder bei einem Fehler nichts.
#In welcher Reihenfolge sucht die App nach einer Regel?
Die App probiert vier Strategien — die obere gewinnt:
- IBAN — die Gegen-IBAN stimmt exakt mit einer gespeicherten Regel überein (z. B. immer von der Stadtkasse → 4200 Pachtaufwand).
- Empfänger-Regex — der Auftraggeber/Empfänger passt zu einem regulären Ausdruck.
- Stichwort — ein Wort im Verwendungszweck (z. B. „Pacht") trifft.
- Mitglied — der Name des Auftraggebers lässt sich einem Mitglied zuordnen.
Innerhalb einer Stufe entscheidet die höhere Priorität, bei Gleichstand die zuletzt genutzte Regel.
#Eine Zuordnung als Regel merken
Setzen Sie in einer Zeile das Häkchen Regel — beim Buchen wird die Zuordnung als neue categorisation_rule gespeichert. Beim nächsten Import wird dieselbe Konstellation (IBAN bzw. Stichwort) automatisch erkannt und landet im ✅-Eimer.
So lernt der Import von Mal zu Mal dazu und Sie sparen mit jedem Monat mehr Arbeit.
#Was passiert mit Duplikaten?
Jede importierte Zeile bekommt eine eindeutige Referenz (Hash aus Datum, Betrag und Verwendungszweck). Wird dieselbe Zeile ein zweites Mal hochgeladen — z. B. weil zwei sich überlappende CSV-Exporte gezogen wurden — überspringt die App den Eintrag automatisch und meldet die Anzahl im Toast.
Sie können also bedenkenlos den ganzen Monatsauszug erneut importieren, wenn Sie unsicher sind, was schon gebucht ist.
#Datenschutz beim Hochladen
- Die CSV-Datei wird nur während der Prüfung zwischengespeichert (im
tmp/-Verzeichnis Ihres Vereins). - Nach dem Buchen wird die Datei gelöscht — die einzelnen Buchungen bleiben im Kassenbuch.
- Mit aktiver KI-Kategorisierung werden eine reduzierte Form der Zeilen an die KI gesendet (siehe KI-Vorschläge).
#Was nicht geht — und warum
- FinTS / PSD2 Open Banking — direkter Abruf vom Bankkonto. Steht auf der Roadmap, ist aber noch nicht umgesetzt.
- Rückgängig machen — wie alle Buchungen sind importierte Einträge nach GoBD unveränderbar. Korrekturen erfolgen über eine Stornobuchung.