Difference between revisions of "De/HBCI"

From GnuCash
Jump to: navigation, search
(Fragen+Antworten)
(Fragen+Antworten)
Line 27: Line 27:
 
== Fragen+Antworten ==
 
== Fragen+Antworten ==
  
Dazu siehe [[De/FAQ]].
+
Dazu siehe [[De/FAQ#OnlineBanking.2C_HBCI_und_AqBanking]].
  
 
== Getestete Banken und Einstellungen ==
 
== Getestete Banken und Einstellungen ==

Revision as of 20:31, 3 November 2008

Zurück zur Hauptseite


HBCI steht für Homebanking Computer Interface und stellt eine standardisierte Schnittstelle für das Homebanking dar. Dieser Standard ist vor allem in Deutschland im Einsatz und wird in GnuCash mit dem Zusatz-Softwarepaket Aqbanking realisiert. Bis 2004 war es noch das Paket OpenHBCI, die Entwicklung ist aber inzwischen eingestellt.

Wer mehr über das HBCI-Verfahren wissen möchte kann das in Wikipedia:HBCI nachlesen.


Vorraussetzungen

Damit GnuCash OnlineBanking fähig ist, gibt es drei Voraussetzungen.

  • Es muss mit der option ' --enable-hbci' kompiliert sein. Bei den meisten Distributionen ist dieses Flag gesetzt. Man kann es erkennen wenn es im Menupunkt Aktionen ein Untermenu Online Aktionen gibt.
  • Installierte AqBanking software. Sie besteht aus Programmen die man von einem Terminal aus aufgerufen werden kann, und Funktionenen (libraries) die von GnuCash benutzt werden.
  • man braucht ein Medium zum ablegen der Schlüssel.
    • Am einfachsten ist es eine schlüsseldatei zu benutzten. Nachteil: Wenn jemand die Datei zusammen mit dem Öffnungspin in seine Hände bekommt, hat er auch Zugriff hat auf die entsprechenden Konten.
    • Am sichersten ist es einen (USB) Kartenleser zu benutzen. Man bekommt eine Karte von der Bank. Auf dieser wird wärend der Konfiguration ein Schlüssel gespeichert, der wiederum nur mit einer entsprechenden PIN am Kartenleser geöffnet werden kann. Somit bleibt der Eigentliche Schlüssel immer auf der Karte und niemand kann die Karte auslesen.
    • Für die Bank macht es keinen Unterschied, ob die Schlüssel in einer Datei oder auf einer Karte gespeichert sind. Ausser, wenn die Bank die Benutzerschlüssel bereits auf der Karte erzeugt hat, denn an diese Schlüssel kann man von aussen nicht mehr gelangen. In diesem Fall ist OnlineBanking mit GnuCash leider nicht machbar.

Einrichtung am Beispiel Commerzbank

  • Ich habe den ersten Brief von der Bank bekommen (INI-Brief). Wie geht es weiter? Wie erstellt man den Schlüssel für die Signatur und erzeugt einen INI-Brief?
    • In GnuCash den Menüpunkt Werkzeuge -> HBCI Einrichtung aufrufen (siehe oben Abschnitt HBCI Homebanking). Schlüsseldatei/-diskette wird dort erstellt, ebenso INI-Brief erzeugt, und auch die HBCI-Version kann man dann auswählen.
  • Wie kann man den Port angeben (bei Commerzbank Port 3000)?
    • Portnummer 3000 wird sowieso benutzt. Der Rechnername muss OHNE Portnummer angegeben werden, also einfach hbci.commerzbank.de.

Fragen+Antworten

Dazu siehe De/FAQ#OnlineBanking.2C_HBCI_und_AqBanking.

Getestete Banken und Einstellungen

OpenHBCI

AqBanking 3.6 aufwärts und Gnucash 2.2.7 unter Windows XP - der aktuelle Stand (2.10.2008)

Momentan läuft AqBanking 3.6 aufwärts mit Gnucash 2.2.7 unter Windows XP noch gar nicht. Im trunk wurde gestern mit r17612 der Stand eingecheckt, auf dem man diesbezüglich gerade ist, nämlich dass man jetzt auf win32 install.sh-gesteuert AqBanking3 komplett bauen und GnuCash dagegen linken kann . Diese Änderung sollte sich relativ einfach auch auf branches/2.2 oder das 2.2.7-Tarball übertragen lassen. Allerdings ist das alles noch ziemlich ungetestet und man benötigt außerdem einen seichteren Switch für die Windows-User. Es gibt grob gesagt zwei Todos: Die Registry-Einträge für die AqBanking-Paths sind jetzt anders, vielleicht fehlen sogar welche; und ~ \.banking wir ~\.aqbanking. (Quelle: https://lists.gnucash.org/pipermail/gnucash-de/2008-October/006500.html)




HBCI Onlinebanking (Übertrag)

Note: Das ist noch die Rohform, wird bald überarbeitet. --Helmut 17.10.2008

Seit 2003 wird in GnuCash Homebanking über ["HBCI"] unterstützt. GnuCash ab Version 1.8.10 benötigt für Homebanking über ["HBCI"] die AqBanking-Bibliothek. Damit wird nun auch PIN/TAN unterstützt. (Die älteren Versionen bis 1.8.9 verwendeten den Vorläufer von AqBanking namens ["OpenHBCI"].)

Seit 2008 kann für fortgeschrittene Nutzer auch alternativ das scriting-fähige HBCI-Plugin des jGnucash-Editors der jGnucashLib verwendet werden (nicht Teil von Gnucash, benötigt Java).

Wenn GnuCash mit HBCI-Unterstützung kompiliert (übersetzt) wurde, kann man die Einrichtung des HBCI-Zugangs über den Menüpunkt "Werkzeuge->HBCI Einrichtung" im Hauptfenster vornehmen. Nachdem die HBCI-Einrichtung abgeschlossen wurde und die Bank den Zugang aktiviert hat, können dann in den entsprechenden Kontofenstern HBCI-Aktionen über das Untermenü "Aktionen ->Online Aktionen" ausgeführt werden.

Wenn man GnuCash selber compiliert (übersetzt), siehe /RpmInstallieren oder /SourceInstall, muss für die Aktivierung der HBCI-Unterstützung bei ./configure das Argument --enable-hbci mit angegeben werden:

. $ ./configure --enable-hbci

Im GnuCash-Paket sind weitere Hinweise zur HBCI-Benutzung in der mitgelieferten Textdatei [attachment:README_HBCI.txt doc/README.HBCI] zu finden. Weitere Tipps, die direkt mit HBCI zu tun haben, werden auf der AqBanking- und ["OpenHBCI"]-Seite gesammelt.

Ursprünglich wird HBCI seit Version 1.8.0 (Februar 2003) unterstützt, und zwar mit Hilfe der ["OpenHBCI"]-Bibliothek. Allerdings wurde damit kein PIN/TAN unterstützt, siehe [#PinTan unten].

Siehe auch: Mac OS X und GnuCash mit HBCI Kartenleser Cyberjack

Gemeinsame Konfiguration mehrerer Linux HBCI-Programme

Es ist möglich, mit mehreren Linux Programmen die gleiche HBCI-Konfiguration zu benutzen, solange die Programme den HBCI-Zugang über die Bibliothek AqBanking realisieren. Dies ist z.B. der Fall bei der Kombination GnuCash und QBankManager, aqbanking-tool oder KMyMoney. Die Einrichtung des HBCI-Zugangs braucht dann nur einmal mit dem Einrichtungs-Assistent erfolgen.

Für die ältere Bibliothek OpenHBCI (bis GnuCash 1.8.9) galt folgende Information: In allen Programmen die gleiche HBCI-Konfigurations-Datei verwendet werden (standardmäßig ~/.openhbci). Beim Einrichten des HBCI-Zugangs in GnuCash wird zuerst nach der Konfigurations-Datei von ["OpenHBCI"] gefragt. Ist diese schon vorhanden, gibt man im Einrichtungs-Druiden den Dateinamen der vorhandenen Konfigurations-Datei an und kann dann gleich die Zuordnung der HBCI-Konten zu GnuCash-Konten vornehmen. Der Dateiname, den man dort angibt, wird von GnuCash in der GnuCash-Datei gespeichert. Die HBCI-Konfigurationsdatei selber wird von GnuCash nie selbst geändert, sondern immer nur über OpenHBCI verwendet. Das heißt: Wenn noch ein anderes Programm (z.B. aqmoney) auf OpenHBCI zugreifen soll, kann man dieses Programm die gleiche OpenHBCI-Konfigurationsdatei benutzen lassen, und dann ist ein abwechselnder Zugriff auf die OpenHBCI-Konfiguration problemlos möglich. Bei aqmoney würde das mit der Kommandozeilenoption "aqmoney -C /meine/konfigurations/datei ..." geschehen, z.B. "aqmoney -C ~/.openhbci ...". Wenn ein Onlinebanking-Programm eine andere (eigene) HBCI-Bibliothek verwendet, wie z.B. ["moneyplex"], greift dieses nicht auf die gemeinsame AqBanking-Zugangskonfiguration zu. Stattdessen muss der HBCI-Zugang dort komplett separat eingerichtet werden.

Schlüsseldateien und Sicherheitsmedien fremder HBCI-Programme

Die Schlüsseldateien und -disketten aus anderen Onlinebanking-Programmen (z.B. Quicken, Star``Money, ["moneyplex"]) können normalerweise nicht in GnuCash/AqBanking weiterverwendet werden (Ausnahmen siehe nächster Absatz). Soll das alte Programm weiterhin benutzbar bleiben, muss eine weitere HBCI-Benutzerkennung für AqBanking bei der Bank angefordert werden. Dann benutzt jedes Bankingprogramm seinen jeweils eigenen Schlüssel FootNote(Siehe auf der Mailingliste http://www.gnucash.org/pipermail/gnucash-de/2003-February/000120.html) . Wenn man die neue Benutzerkennung bekommen hat, können für diese neue Benutzerkennung ganz regulär mit GnuCash für AqBanking/AqHBCI neue Schlüssel erzeugt und mit Ini-Brief bestätigt werden.

Bei Chipkarten dagegen treten keine größeren Probleme auf, wenn sie einfach mit mehreren HBCI-Programmen und -Bibliotheken verwendet werden.

In der Bibliothek AqBanking ist es wie gesagt nicht möglich, Schlüsseldateien von fremden HBCI-Programmen zu importieren. Bei der veralteten Bibliothek ["OpenHBCI"] und manche der Versionen davon gab es zwar ein so genanntes Medium-Plugin, die die Verwendung von Schlüsseldateien von StarMoney ermöglichte. Details auf ["OpenHBCI"], aber wie gesagt, ist diese Bibliothek veraltet.

Onlinebanking per PIN/TAN

Frage: Ist es möglich, mit GNUCash über das PIN/TAN-Verfahren Onlinebanking zu betreiben?

Antwort: Zum Teil ja, ab Version 1.8.10. Man unterscheidet bei PIN/TAN vier Fälle:


  • 1. PIN/TAN über die Web-Schnittstelle. Dies ist nur für einen menschlichen Benutzer gedacht, nicht für die Nutzung durch ein Programm. (Dies ist z.B. das bisherige Angebot der Postbank.)
    • Vorteil: Fast jede Bank bietet es an und dies ist provider-unabhängig.
    • Nachteil: Überhaupt kein standarisierter Zugang; jede Bank müsste praktisch ihre eigene onlinebanking Software schreiben. Überhaupt keine Spezifikation erhältlich, und selbst wenn, dann wäre sie für jede Bank eine andere. Wer hier versucht Schnittstellen zu schreiben, ist sozusagen wahnsinnig, obwohl es angeblich ein Projekt gibt, das bei einer Bank die Webschnittstelle nutzen kann.
    • Status Gnucash: Dies wird nicht unterstützt und wird auch nie unterstützt werden.
  • 2. PIN/TAN über T-Online. Der Standard, wenn es um Homebanking-Programme im Zusammenhang mit PIN/TAN geht.
    • Vorteil: Fast jede Bank bietet es an.
    • Nachteil: Man ist an T-Online als Internetprovider gebunden, da das sog. Classic Gateway (BTX-Seiten zum Datenaustausch) von T-Online benutzt wird. Die Schnittstelle wurde von fun communications, Karlsruhe entwickelt und kann dort gegen Gebühren lizenziert werden. Die Banken wenden sich von diesem Verfahren mittelfristig ab, weil T-Online sich den Betrieb der alten Infrastruktur teuer bezahlen lässt.
    • Status Gnucash: Dies wird nicht unterstützt und wird auf Grund der notwendigen Lizenzgebühren auch nie unterstützt werden.
  • 3. PIN/TAN über Sonderlösungen. Die Sonderlösungen basieren meist auf ähnlichen Techniken wie das Classic Gateway in 2. oder auf SSL-basierenden Verfahren, sind aber nicht an T-Online gebunden, also provider-unabhängig. Der Nachteil dieser Lösungen ist, dass sie nur für einzelne Banken oder Bankgruppen taugen, da deren Rechenzentren die entsprechenden Server bereitstellen müssen. Ein Beispiel hierfür ist das sog. CAT-Verfahren der Genobanken, die an die FIDUCIA, Karlsruhe angebunden sind. Hier erfolgt die Datenübertragung auf Übertragungsseiten wie unter 2. . Das Verfahren stammt ebenso von fun communications und kann dort lizenziert werden. Homebanking-Software, die das Verfahren benutzt: VR-NetWorld Software Ein weiteres Beispiel ist die Lösung der Firma StarFinanz, Hamburg. Hier wird wohl ein SSL-ähnliches Verfahren benutzt. Clientsoftware ist StarMoney, der Server dazu ist der StarFinanz Server, manche Sparkassen benutzen dieses Verfahren.
    • Status Gnucash: Dies wird nicht unterstützt und wird auf Grund der notwendigen Lizenzgebühren auch nie unterstützt werden.
  • 4. PIN/TAN über HBCI. Der zukünftige Standard. Vorteil: Provider-unabhängig, offene Schnittstelle, einfache Einrichtung, dadurch sehr leichte Migration der bestehenden Kunden. (Bei einer bestehenden kommerziellen Homebanking-Software reicht ein Online-Update der Software, um vom Verfahren 2. oder 3. darauf umzuschalten.) Viele Banken sind im Laufe der Jahre 2004/2005 auf dieses Verfahren gewechselt. Nachteil: Geringere Sicherheit als bei Chipkarten-/Schlüsseldatei-HBCI.
    • Status GnuCash: Wird seit Version 1.8.10 über die neue HBCI-Bibliotheksfamilie AqBanking unterstützt, aber alle Versionen vorher unterstützen das nicht.

Änderung der verwendeten HBCI Version

Mit einigen Banken funktionieren nur bestimmte Versionen der HBCI Spezifikation. Die von AqBanking verwendete HBCI-Version kann mit dem Knopf "HBCI-Version" im AqHBCI-Einrichtungs-Assistent (in GnuCash "Werkzeuge"->"HBCI Einrichtung" und dann "AqHBCI-Einrichtung starten") geändert werden.

Getestete Banken

Eine Liste mit schon getesteten Banken wird auf der ["OpenHBCI"]-Seite verwaltet und gilt genauso für AqBanking.

Anchor(Debian)

Debian und GnuCash/HBCI

Da sich mit gnucash-1.8.10 die HBCI-Bibliothek geändert hat, erfordert das Paket {{{gnucash-hbci}}} nun seinerseits die neuen Pakete der AqBanking-Familie. Diese haben es nicht in die Sarge-Veröffentlichung geschafft, in debian/unstable sind die Pakete (mit aqbanking 2.x) vorhanden (Stand: Juli 2006). GnuCash-HBCI kann leider im Augenblick aus Gründen der Debian-Lizenzpolitik (GPL+OpenSSL - nicht für AqBanking, sondern alle GnuCash-Dependencies) in das offizielle Debian-Archiv aufgenommen werden. Inoffizielle Pakete gibt es aber ([#DebianHBCIInst siehe unten]). Wer mit überschüssigen Programmierresourcen ein GnuTLS/GCrypt-Verschlüsselungs-Plugin für Gwenhywfar implementieren will, würde dieses Lizenzdilemma lösen.

Weitere Details hierzu inkl. Lösungsmöglichkeiten gibt es [#DebianHBCIInst hier im Kapitel Installation und Update].


Fragen & Antworten

HBCI-Benutzung

Wie kann man eigentlich das Passwort des HBCI-Keyfiles ändern? Danke. Jens Bräuer MailTo(jensb AT NOSPAM cs.tu-berlin.de)

. Das geht mit dem Programm aqmoney wie folgt:

{{{ aqmoney --modifymedium --user=<USERID> --newpin }}}

. In GnuCash ist das aber leider nicht möglich. -- ChristianStimming DateTime(2003-09-11T09:45:55Z)


Einrichtung des HBCI-Zugangs

Ich habe den ersten Brief von der Bank bekommen (INI-Brief). Wie geht es weiter? Wie erstellt man den Schlüssel für die Signatur und erzeugt einen INI-Brief? Ich habe keinen Chipkartenleser, wie geht das mit Diskette, oder Datei, oder USB-Stick? Wie stelle ich die Version von HBCI ein (Vers. 2.1 bei Commerzbank)? PS: Ich benutze Debian 3.0 (Woody) mit ein bisschen Sarge und ein ganz kleines Bisschen SID ;-) (GNUCash und die entsprechenden Libs und Gnome) -- GuidoThulke

. In GnuCash den Menüpunkt Werkzeuge -> HBCI Einrichtung aufrufen (siehe oben Abschnitt HBCI Homebanking). Schlüsseldatei/-diskette wird dort erstellt, ebenso INI-Brief erzeugt, und auch die HBCI-Version kann man dann  auswählen. -- ChristianStimming DateTime(2003-07-16T09:35:50Z)

Wie kann man den Port angeben (bei Commerzbank Port 3000)? Gebe ich hbci.commerzbank.de:3000 ein wird der Host nicht gefunden. -- GuidoThulke

. Portnummer 3000 wird sowieso benutzt. (Änderung der Portnummer ist leider bisher nicht möglich.) Der Rechnername muss ohne Portnummer angegeben werden, also einfach {{{hbci.commerzbank.de}}}. -- ChristianStimming DateTime(2003-07-16T09:35:50Z)

Nachtrag: Ich habe mich durchgerungen die Initialisierung unter Windows (Autsch) mit Hilfe der freundlichen Commerzbankhotline und Starmoney 3.0 durchzuführen. Das hat auch gut funktioniert und ich bin endlich zu meinem Schlüssel (Keyfile) auf der Diskette gekommen. Leider funktioniert GnuCash (jetzt Version 1.8.8) nicht mit diesem Schlüssel. Ist ein ungültiges/nicht bekanntes Keyformat. Ist das also nicht genormt?! Ich habe allerdings dieses Keyfile unter Windows auch für mehrere Programme nutzen können, namentlich Quickbooks 2003 und Starmoney 3.0. Ein Zufall? GuidoThulke

. Also eine Schlüsseldatei eines fremden Programms in GnuCash/AqBanking/OpenHBCI verwenden? Das geht nicht, siehe oben unter "[#fremdeHBCIProgramme fremde HBCI Programme]" (auch kürzer als RTFM bekannt, :-). Wenn es unter Windows funktionierte, war das Zufall bzw. die Hersteller haben genug Geld springen lassen, um die gleichen Formate zu benutzen. -- ChristianStimming DateTime(2004-02-11T19:52:28Z)

Beim Absenden von Überweisungs- oder Lastschriftaufträgen kommt die Fehlermeldung {{{HBCI: 9210 - DTA-Berechtigung fehlt (S)}}}. Was tun?

. AqBanking bietet die Wahlmöglichkeit, ob Aufträge entweder als Einzelaufträge (teurer) oder als Sammelaufträge (billiger, aber weniger Details im Kontoauszug) eingereicht werden. Diese Fehlermeldung besagt, dass man Sammelaufträge eingereicht hat, aber die Bank nur Einzelaufträge akzeptiert. Abhilfe: 1. In der Datei ~/.banking/backends/aqhbci/settings.conf im Abschnitt für die entsprechende Bank und den entspr. Benutzer: {{{customer { [...]}}} den Wert {{{int preferSingleTransfer="0"}}} auf {{{int preferSingleTransfer="1"}}} ändern. 2. Alternativ im Konfigurationsassistenten durchklicken zu "Users"/"Benutzer" -> <user wählen> -> "Expert Actions"/"Experten-Aktionen" -> "Edit"/"Bearbeiten" -> <Customer/Kunde wählen> -> | "Edit"/"Bearbeiten" -> "Prefer single Transactions over multi transfers"/"Einzelüberweisung anstelle Sammelüberweisung bevorzugen" aktivieren. -- ChristianStimming DateTime(2005-10-11T08:09:42Z)


Zurück zur Hauptseite