All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.kapott.hbci.GV.package.html Maven / Gradle / Ivy

There is a newer version: 4.0.0
Show newest version

Dieses Package enthält alle Klassen zur internen Repräsentation von (Highlevel-)Jobs. Die einzige Klasse, die als Schnittstelle zu HBCI-Jobs innerhalb einer Anwendung benötigt wird, ist die Klasse HBCIJob.

Beim Festlegen von auszuführenden Jobs werden Highlevel-Jobs und Lowlevel-Jobs unterschieden. Diese Unterscheidung hat nichts mit der Art der Jobs an sich zu tun, sondern mit der Art und Weise, wie sie spezifiziert und parametrisiert werden können:

Alle von HBCI4Java unterstützten Jobs liegen in einer internen Beschreibungssprache vor (XML). Diese Sprache ist eng an die Beschreibung der Geschäftsvorfälle aus der HBCI-Spezifikation gekoppelt. In ihr ist jedem unterstützten Job ein Lowlevel-Jobname zugeordnet, der den Job eindeutig identifiziert. Zu jedem Job gibt es eine bestimmte Anzahl von Parametern, die zur Ausführung dieses Jobs benötigt werden (z.B. Kontoverbindungen, Geldbeträge, usw.). Jeder dieser Parameter hat dabei einen Lowlevel-Parameternamen. Dieser Lowlevel-Parametername stammt aus dem internen Beschreibungsformat des Jobs und ist teilweise sehr aufwändig zu schreiben (weil sehr lang) und schlecht zu merken (weil softwareorientiert).

Um die Arbeit mit häufig benutzten Jobs zu vereinfachen, wurden für die meisten Jobs Highlevel-Frontends entwickelt. Dabei handelt es sich HBCI4Java-intern um separate Klassen, die jeweils für bestimmte Lowlevel-Jobs zuständig sind. Die meisten Jobs können und sollten also über ihre Highlevel-Schnittstelle erzeugt und parametrisiert werden. Dazu gibt es für jeden Job, der durch die Highlevel-Schnittstelle unterstützt wird, einen Highlevel-Jobnamen. Außerdem gibt es für die benötigten Job-Parameter entsprechende Highlevel-Parameternamen. Diese sind zum einen kürzer als die Lowlevel-Parameternamen, außerdem sind sie intuitiver und leichter zu merken.

Beim Erzeugen von Jobs sollte also immer dem Highlevel-Interface der Vorzug gegeben werden, sofern es für den jeweiligen Job eine solche Schnittstelle gibt. Die Jobs, für die eine Highlevel-Schnittstelle existiert, sind unten aufgelistet. Prinzipiell kann natürlich jeder Job auch über die Lowlevel-Schnittstelle erzeugt und ausgewertet werden. Eine Liste aller Lowlevel-Jobs und deren Parameter erhält man mit den Tools ShowLowlevelGVs bzw. ShowLowlevelGVRs oder zur Laufzeit durch die Verwendung der Methoden getLowlevel* der HBCIHandler-Klasse. Da es zur Zeit nicht für alle Lowlevel-Jobs entsprechende Klassen für die Highlevel-Unterstützung gibt, sollten diese Methoden benutzt werden, um zu überprüfen, ob ein bestimmter Job gar nicht oder nur nicht per Highlevel-Interface unterstützt wird.

Folgende Unterschiede existieren also zwischen High- und Lowlevel-Jobs:

Highlevel-InterfaceLowlevel-Interface
Erzeugen des Jobs HBCIHandler.newJob(HighlevelName)
Eine Liste gültiger HighlevelNamen befindet sich in dieser Beschreibung weiter unten
HBCIHandler.newLowlevelJob(LowlevelName)
Eine Liste gültiger LowlevelNamen erhält man zur Laufzeit durch HBCIHandler.getSupportedLowlevelGVs() bzw. offline mit dem Tool ShowLowlevelGVs.
Setzen von Parametern HBCIJob.setParam(HLparamName,...)
Gültige Werte für HLparamName finden sich in der Job-Beschreibung weiter unten. Es können auch komplexe Parameter gesetzt werden (siehe zum Beispiel HBCIJob.setParam(String,Konto)).
HBCIJob.setParam(LLparamName,value)
Eine Liste gültiger LLparamNamen erhält man zur Laufzeit durch HBCIHandler.getLowlevelGVParameters() bzw. offline mit dem Tool ShowLowlevelGVs.
Ergebnisdaten (HBCIJob.getJobResult()) Klasse des zurückgegeben Objektes abhängig vom Job (siehe Beschreibung unten). Die Job-Rückgabedaten sind bereits anwendungsfreundlich aufbereitet Klasse des zurückgegebenen Objektes ist immer HBCIJobResult. Darin enthalten sind die "puren" Datenelement-Daten, wie sie aus der HBCI-Antwortnachricht extrahiert wurden. Der Inhalt der einzelnen Datenelemte kann über bestimmte Namen ermittelt werden (HBCIHandler.getLowlevelResultProperties() bzw. ShowLowlevelGVRs).

Beschreibung der unterstützten Highlevel-Jobs

Kundenmitteilung an die Bank
Dauerauftrag einrichten
Liste bestehender Daueraufträge abholen
Bestehenden Dauerauftrag bearbeiten
Bestehenden Dauerauftrag löschen
Einzelüberweisung
Umbuchung
Einzelüberweisung mit prüfziffergesichertem Verwendungszweck (BZÜ)
Eilüberweisung
Spendenüberweisung
Auslandsüberweisung
SEPA-Einzelüberweisung
Terminierte Einzelüberweisung
Liste noch anstehender terminierten Überweisungen abholen
Noch anstehende terminierte Überweisung verändern
Noch anstehende terminierte Überweisung löschen
Sammelüberweisung einreichen
Sammellastschrift einreichen
Einzellastschrift einreichen
Lastschriftwiderruf
Kontoumsätze anzeigen
Neue Kontoumsätze anzeigen
Saldoabfrage eines Kontos
Saldenabfrage aller Kundenkonten
Saldenabfrage eines SEPA-Kontos
Festgeldkonditionen abholen
Liste bestehender Festgeldanlagen abholen
Liste aller bestehender Festgeldanlagen abholen
Kontostammdaten abholen
Karten-Informationen abholen
Übersicht über Kreditinstitutsinformationen abholen
Bestellen bzw. Abholen von Kreditinstitutsinformationen
Statusinformationen zu Geschäftsvorfällen abholen
Abholen von Informationen über TAN-Listen
Ändern der PIN für HBCI-PIN/TAN


Kundenmitteilung an die Bank

Mit diesem Geschäftsvorfall kann ein Bankkunde eine Nachricht an seine Bank versenden. Der Inhalt dieser Nachricht hat keinen Auftragscharakter.

Highlevel-NameCustomMsg
Highlevel-Parameter
msgStringobligatorischdie zu übermittelnde Nachricht
myKontooptionalKontoverbindung des Bankkunden
currStringoptionalWährung des Kundenkontos ("EUR")
betreffStringoptionalBetreff der Nachricht
recptStringoptionalEmpfänger der Nachricht (z.B. ein bestimmter Ansprechpartner)
Rückgabedaten-KlasseHBCIJobResult

Dauerauftrag einrichten

Mit diesem Geschäftsvorfall kann ein neuer Dauerauftrag eingerichtet werden.

Highlevel-NameDauerNew
Highlevel-Parameter
srcKontoobligatorischdas Konto, welches bei dem Dauerauftrag belastet wird (Kundenkonto)
dstKontoobligatorischdas auf welches die Gutschrift erfolgt (fremdes Konto)
btgValueobligatorischGeldbetrag, der bei dem Dauerauftrag überwiesen wird.
nameStringobligatorischName des Empfängers ("Begünstigter").
name2StringoptionalFortsetzung Name des Empfängers ("Begünstigter").
firstdateDateobligatorischDatum der ersten Ausführung des Dauerauftrages.
lastdateDateoptionalDatum der letzten Ausführung des Dauerauftrages.
timeunitStringobligatorischZeiteinheit für den Turnus-Wert. Entweder "M" für Monat oder "W" für Woche.
turnusintobligatorischDieser Wert gibt an, aller wieviel "timeunit"s der Dauerauftrag ausgeführt werden soll.
execdayintobligatorischDieser Wert gibt bei timeunit=M den Tag des Monats (1-31) und bei timeunit=W den Wochentag (1-7) der Ausführung an. Gültige Werte sind den Job-Restriktionen zu entnehmen.
usage,
usage_2,
usage_3,...
StringoptionalVerwendungszweckzeilen
keyStringoptionalTextschlüssel für Art der Überweisung (default="52").
Rückgabedaten-KlasseGVRDauerNew

Liste bestehender Daueraufträge abholen

Mit diesem Geschäftsvorfall kann eine Übersicht der bestehenden Daueraufträge abgeholt werden.

Highlevel-NameDauerList
Highlevel-Parameter
myKontooptionaldas Kundenkonto, für welches der Dauerauftragsbestand abgeholt werden soll. Ist kein Konto angegeben, so wird das erste in den UPD aufgeführte Konto benutzt.
orderidStringoptionalAuftrags-Identifikationsnummer für einen bestimmten Auftrag, dessen Daten abgeholt werden sollen.
Rückgabedaten-KlasseGVRDauerList

Bestehenden Dauerauftrag bearbeiten

Mit diesem Geschäftsvorfall kann ein bestehender Dauerauftrag verändert werden. Dazu muss die orderid des zu ändernden Auftrages bekannt sein. Zur Ermittlung und Verwendung von Order-IDs siehe entsprechenden Abschnitt in der Beschreibung zur Löschung terminierter Überweisungen. Es müssen nur die Job-Parameter angegeben werden, die tatsächlich verändert werden sollen, die Angabe aller anderen Job-Parameter ist optional.

Aus den Job-Restriktionen kann ermittelt werden, welche Parameter überhaupt geändert werden dürfen.

Highlevel-NameDauerEdit
Highlevel-Parametersämtliche Parameter wie bei DauerNew, allerdings alle optional; außerdem:
orderidStringobligatorischAuftrags-Identifikationsnummer für den zu bearbeitenden Auftrag
dateDateoptionalDatum, ab wann der Auftrag geändert werden soll
Rückgabedaten-KlasseGVRDauerEdit

Bestehenden Dauerauftrag löschen

Mit diesem Geschäftsvorfall kann ein bestehender Dauerauftrag gelöscht werden. Für die Angabe, welcher Dauerauftrag gelöscht werden soll, gibt es prinzipiell zwei Möglichkeiten:

  1. Wenn die Bank keine Order-IDs (Auftrags-Identifikationsnummern) unterstützt, dann müssen für die Identifikation des "richtigen" Dauerauftrages alle Dauerauftrags-Parameter angegeben werden, die auch beim Einrichten des Dauerauftrages verwendet wurden (siehe Dauerauftrag einrichten).
  2. Unterstützt die Bank Order-IDs, gibt es wiederum zwei Möglichkeiten:
    1. Es werden alle Parameter wie beim Erzeugen des Dauerauftrages und zusätzlich die Order-ID angegeben.
    2. Es genügt die Angabe der Order-ID. Dazu muss allerdings vor dem Erzeugen des Jobs "Dauerauftrag löschen" die Liste der existierenden Daueraufträge abgeholt werden (siehe Liste bestehender Daueraufträge abholen), damit HBCI4Java die verwendete Order-ID kennt und die restlichen Auftrags-Parameter "selbst ausfüllen" kann.
  3. Siehe dazu auch den entsprechenden Abschnitt in der Beschreibung zur Löschung terminierter Überweisungen

Highlevel-NameDauerDel
Highlevel-Parametersämtliche Parameter wie bei DauerNew, allerdings alle optional; außerdem:
orderidStringoptionalAuftrags-Identifikationsnummer für den zu löschenden Auftrag
dateDateoptionalDatum, wann der Auftrag gelöscht werden soll
Rückgabedaten-KlasseHBCIJobResult

Einzelüberweisung

Mit diesem Geschäftsvorfall wird eine einzelne Überweisung in Auftrag gegeben.

Highlevel-NameUeb
Highlevel-Parameter
srcKontoobligatorischBelastungskonto des Kunden
dstKontoobligatorischKonto, auf dem der Betrag gutgeschrieben werden soll
btgValueobligatorischGeldbetrag, der überwiesen werden soll.
nameStringobligatorischName des Empfängers ("Begünstigter").
name2StringoptionalFortsetzung Name des Empfängers ("Begünstigter").
usage,
usage_2,
usage_3,...
StringoptionalVerwendungszweckzeilen
keyStringoptionalTextschlüssel für Transaktionsart (default="51").
Rückgabedaten-KlasseHBCIJobResult

Umbuchung

Eine Umbuchung entspricht im wesentlichen einer Überweisung, wird aber von einigen Kreditinstituten intern anders ausgeführt. Voraussetzung für das Verwenden von Umbuchungen anstelle von "normalen" Überweisungen ist, dass das Empfängerkonto bei der gleichen Bank wie das Auftraggeberkonto geführt wird und ebenfalls dem Auftraggeber gehört. Mit diesem Geschäftsvorfall kann also eine Überweisung zwischen zwei eigenen Konten bei der gleichen Bank durchgeführt werden.

Highlevel-NameUmb
Highlevel-Parameterwie bei Einzelüberweisung
Rückgabedaten-KlasseHBCIJobResult

Einzelüberweisung mit prüfziffergesichertem Verwendungszweck (BZÜ)

Mit diesem Geschäftsvorfall wird eine einzelne Überweisung in Auftrag gegeben. Dabei enthält die erste Zeile des Verwendungszweckes einen 13-stelligen String, wovon 12 Ziffern tatsächlich Nutzdaten sind, die 13.Ziffer ist eine Prüfziffer über die restlichen 12. Beim Anlegen eines solchen Geschäftsvorfalles wird automatisch überprüft, ob die 13-stellige Ziffernfolge konsistent ist.

Highlevel-NameUebBZU
Highlevel-Parameterwie bei Einzelüberweisung, aber ohne die erste Verwendungszweckzeile (usage), dafür:
bzudataStringobligatorisch13-stellige Zeichenkette (enthält Prüfziffer).
keyStringoptionalTextschlüssel für Transaktionsart (default="67").
Rückgabedaten-KlasseHBCIJobResult

Eilüberweisung

Eine Eilüberweisung funktioniert analog einer "normalen" Überweisung, wird aber u.U. schneller bearbeitet (die genauen bankfachlichen Hintergründe sind hier nicht relevant).

Highlevel-NameUebEil
Highlevel-Parameterwie bei Einzelüberweisung
Rückgabedaten-KlasseHBCIJobResult

Spendenüberweisung

Dabei handelt es sich im Prinzip um eine normale Einzelüberweisung. Einziger Unterschied ist ein bankintern anders gesetzter Textschlüssel für den Überweisungstyp. Wo dieser Textschlüssel konkret ausgewertet wird, weiß ich leider auch nicht.

Highlevel-NameDonation
Highlevel-Parameterwie bei Einzelüberweisung, allerdings ohne die Verwendungszweckzeilen; statt dessen:
spenderidStringobligatorischName des Spenders oder Kunden-/Mitgliedsnummer
plz_streetStringobligatorischPLZ und Straße des Spenders
name_ortStringobligatorischName und Ort des Einzahlers
keyStringoptionalTextschlüssel für Transaktionsart (default="69").
Rückgabedaten-KlasseHBCIJobResult

Auslandsüberweisung

Mit diesem Geschäftsvorfall kann eine einfache Auslandsüberweisung in Auftrag gegeben werden. Darunter fallen alle Überweisungen in die meisten europäischen Länder, bei denen der zu überweisende Geldbetrag die gesetzliche Meldepflicht (zur Zeit 12500 EUR) nicht übersteigt.

Highlevel-NameUebForeign
Highlevel-Parameter
srcKontoobligatorischBelastungskonto des Kunden
src.nameStringobligatorischName des Auftraggebers
dstKontooptionalKonto, auf dem der Betrag gutgeschrieben werden soll. Es ist entweder dieser Parameter oder die IBAN anzugeben.
dst.ibanStringoptionalAlternativ zur Kontoverbindung des Empfängers kann die IBAN des Zielkontos angegeben werden. Es muss genau einer der beiden Parameter angegeben werden.
dst.nameStringobligatorischName des Empfängers ("Begünstigter").
dst.kinameStringobligatorischVollständiger Name der Zielbank.
btgValueobligatorischGeldbetrag, der überwiesen werden soll.
usageStringoptionalVerwendungszweck
Rückgabedaten-KlasseHBCIJobResult

SEPA-Einzelüberweisung

Dabei handelt es sich um eine Überweisung nach dem SEPA-Standard (ein Projekt, bei dem ein europaweit einheitlicher Zahlungsraum angestrebt wird). Solche Überweisungen können als Ziel sowohl in- als auch ausländische Konten haben. Die normale Kombination von Kontonummer/BLZ wird ersetzt durch die weltweit eindeutige IBAN (entspricht Konto-Identifikation) und BIC (Bankkennung). Derzeit (2009) werden SEPA-Geschäftsvorfälle nicht von allen Banken unterstützt.

Highlevel-NameUebSEPA
Highlevel-Parameter
srcKontoobligatorischBelastungskonto des Kunden. Entscheidend sind gesetzte Werte für bic, iban und name
dstKontoobligatorischKonto, auf dem der Betrag gutgeschrieben werden soll. Entscheidend sind auch hier gesetzte Werte für bic, iban und name
btgValueobligatorischGeldbetrag, der überwiesen werden soll. Die Währung muss immer EUR sein
usageStringoptionalVerwendungszweck (max. 140 Zeichen)
Rückgabedaten-KlasseHBCIJobResult

Terminierte Einzelüberweisung

Dabei handelt es sich um eine Einzelüberweisung, bei der zusätzlich das Datum angegeben wird, zu dem diese Überweisung ausgeführt werden soll. Das Datum darf in der Regel nicht zu nah in der Zukunft liegen (meist mind. 2 Tage) und muss ein Werktag sein. Die Mindestvorlaufzeit zur Einreichung einer terminierten Überweisung ist aus den Job-Restriktionen zu erfahren.

Highlevel-NameTermUeb
Highlevel-Parameterwie bei Einzelüberweisung, zusätzlich:
dateDateobligatorischDatum der geplanten Ausführung der Überweisung
Rückgabedaten-KlasseGVRTermUeb

Liste noch anstehender terminierten Überweisungen abholen

Mit diesem Geschäftsvorfall kann eine Liste aller noch anstehenden terminierten Überweisungen abgeholt werden.

Highlevel-NameTermUebList
Highlevel-Parameter
myKontooptionalKundenkonto, für das die Liste abgeholt werden soll; ist kein Konto angegeben, so wird das erste Konto aus den UPD verwendet.
startdateDateoptionalnur Aufträge abholen, die an oder nach diesem Datum ausgeführt werden sollen
enddateDateoptionalnur Aufträge abholen, die an oder vor diesem Datum ausgeführt werden sollen
Rückgabedaten-KlasseGVRTermUebList

Noch anstehende terminierte Überweisung verändern

Mit diesem Geschäftsvorfall kann eine noch nicht ausgeführte terminierte Überweisung verändert werden. Aus den Job-Restriktionen ist ersichtlich, ob das überhaupt möglich ist und wenn ja, welche Parameter verändert werden dürfen. Für diesen Geschäftsvorfall wird die Auftrags-Identifikationsnummer (orderid) des zu bearbeitenden Auftrages benötigt. Es müssen nur die Parameter angegeben werden, die tatsächlich geändert werden sollen. Alle anderen Job-Parameter müssen nicht mit angegeben werden (sie werden automatisch anhand der Order-ID ermittelt). Zur Benutzung von Order-IDs siehe entsprechenden Abschnitt in der Beschreibung zu Löschen einer terminierten Überweisung.

Highlevel-NameTermUebEdit
Highlevel-Parameterwie bei Terminierte Überweisung, jedoch alles optional; zusätzlich:
orderidStringobligatorischDie Auftragsidentifikationsnummer des zu bearbeitenden Auftrages.
Rückgabedaten-KlasseGVRTermUebEdit

Noch anstehende terminierte Überweisung löschen

Mit diesem Geschäftsvorfall kann eine noch nicht ausgeführte terminierte Überweisung gelöscht werden. Für diesen Geschäftsvorfall wird nur die Order-ID eines terminierten Überweisungsauftrages benötigt.

Order-IDs werden bei den Geschäftsvorfällen Einrichten einer terminierten Überweisung, Ändern einer terminierten Überweisung sowie Abrufen des Bestandes terminierter Überweisungen zurückgegeben. Auch wenn die entsprechenden Order-IDs bereits offline bekannt sind (z.B. aus früheren HBCI-Dialogen), so muss erst ein Auftrag ausgeführt werden, der die Order-ID für den zu löschenden Auftrag tatsächlich zurückgibt (also in der Regel ein Abrufen des Bestandes...). Der Grund ist der, dass HBCI4Java zusätzlich benötigte Auftragsdaten intern zwischenspeichert und gegebenenfalls benutzt. Diese Zwischenspeicherung ist aber an ein konkretes HBCIPassport-Objekt gebunden, weshalb die Verwendung von Order-IDs, welche nicht zur Laufzeit erzeugt wurden, zu einer Exception führt.

Highlevel-NameTermUebDel
Highlevel-Parameter
orderidStringobligatorischDie Auftragsidentifikationsnummer des zu löschenden Auftrages.
Rückgabedaten-KlasseHBCIJobResult

Sammelüberweisung einreichen

Mit diesem Geschäftsvorfall kann ein Sammelüberweisungsauftrag eingereicht werden. Die Daten müssen dabei bereits im DTAUS-Format vorliegen. Für die Erzeugung von DTAUS-Datensätzen kann die Klasse DTAUS benutzt werden.

Highlevel-NameMultiUeb
Highlevel-Parameter
myKontoobligatorischKontoverbindung des Auftraggebers
dataStringobligatorischDTAUS-Daten mit den Überweisungsinformationen
Rückgabedaten-KlasseHBCIJobResult

Sammellastschrift einreichen

Mit diesem Geschäftsvorfall kann ein Sammellastschriftauftrag eingereicht werden. Die Daten müssen dazu bereits im DTAUS-Format vorliegen. Für die Erzeugung von DTAUS-Datensätzen kann die Klasse DTAUS benutzt werden.

Highlevel-NameMultiLast
Highlevel-Parameter
myKontoobligatorischKontoverbindung des Auftraggebers
dataStringobligatorischDTAUS-Daten mit den Überweisungsinformationen
Rückgabedaten-KlasseHBCIJobResult

Einzellastschrift einreichen

Mit diesem Geschäftsvorfall wird ein einzelner Auftrag zum Lastschrifteinzug eingereicht.

Highlevel-NameLast
Highlevel-Parameter
myKontoobligatorischKonto des Bankkunden
otherKontoobligatorischKonto, welches mit dem Betrag belastet werden soll
btgValueobligatorischGeldbetrag, der eingezogen werden soll.
nameStringobligatorischName des Zahlungspflichtigen
name2StringoptionalFortsetzung Name des Zahlungspflichtigen.
typeStringoptionalTyp der Lastschrift. Defaultmäßig wird hier "05" verwendet, es ist auch der Code "04" zulässig.
usage,
usage_2,
usage_3,...
StringoptionalVerwendungszweckzeilen
Rückgabedaten-KlasseHBCIJobResult

Lastschriftwiderruf

Damit kann eine Lastschrift, mit der das eigene Konto belastet wurde, "zurückgegeben" werden.

Highlevel-NameStornoLast
Highlevel-Parameter
myKontoobligatorischKonto des Bankkunden
otherKontoobligatorischGegenkonto, dem die ursprüngliche Lastschrift gutgeschrieben wurde
btgValueobligatorischBetrag der ursprünglichen Lastschrift
dateDateobligatorischDatum des ursprünglichen Lastschriftauftrages
nameStringobligatorischName des Auftraggebers der ursprünglichen Lastschrift
name2StringoptionalFortsetzung Name des Auftraggebers.
primanotaStringoptionalPrimanota-Nummer der ursprünglichen Lastschrift
Rückgabedaten-KlasseHBCIJobResult

Kontoumsätze anzeigen

Mit diesem Geschäftsvorfall kann eine Übersicht über die Kontoumsatzdaten eines Kontos abgeholt werden.

Highlevel-NameKUmsAll
Highlevel-Parameter
myKontooptionalDas Konto, für das Umsatzinformationen abgeholt werden sollen. Wird hier kein Konto angegeben, so wird das erste Konto aus den UPD verwendet.
startdateDateoptionalNur Umsatzdaten abholen, die an oder nach diesem Datum gebucht wurden
enddateDateoptionalNur Umsatzdaten abholen, die an oder vor diesem Datum gebucht wurden
Rückgabedaten-KlasseGVRKUms

Neue Kontoumsätze anzeigen

Mit diesem Geschäftsvorfall kann eine Übersicht über die Kontoumsatzdaten eines Kontos abgeholt werden. Dabei werden nur die Umsatzdaten zurückgegeben, die seit dem letzten Aufruf dieses Geschäftsvorfalles neu hinzugekommen sind.

Highlevel-NameKUmsNew
Highlevel-Parameter
myKontooptionalDas Konto, für das Umsatzinformationen abgeholt werden sollen. Wird hier kein Konto angegeben, so wird das erste Konto aus den UPD verwendet.
Rückgabedaten-KlasseGVRKUms

Saldoabfrage eines Kontos

Mit diesem Geschäftsvorfall wird der Saldo eines Kundenkontos abgefragt.

Highlevel-NameSaldoReq
Highlevel-Parameter
myKontooptionalDas Konto, für das der Saldo ermittelt werden soll. Wird hier kein Konto angegeben, so wird das erste Konto aus den UPD verwendet.
Rückgabedaten-KlasseGVRSaldoReq

Saldenabfrage aller Kundenkonten

Mit diesem Geschäftsvorfall werden die Salden aller Kundenkonten abgefragt.

Highlevel-NameSaldoReqAll
Highlevel-Parameter
myKontooptionalEin Kundenkonto. Wird hier kein Konto angegeben, so wird das erste Konto aus den UPD verwendet.
Rückgabedaten-KlasseGVRSaldoReq

Saldoabfrage eines SEPA-Kontos

Mit diesem Geschäftsvorfall kann der Saldo eines SEPA-fähigen Kontos abgefragt werden.

Highlevel-NameSaldoReqSEPA
Highlevel-Parameter
myKontoobligatorischDas Konto, für das der Saldo ermittelt werden soll. Bei diesem Konto müssen mindestens BIC und IBAN gesetzt sein, abhängig von der Bank evtl. zusätzlich auch die Kontowährung.
Rückgabedaten-KlasseGVRSaldoReq

Festgeldkonditionen abholen

Mit diesem Geschäftsvorfall können die aktuell gültigen Konditionen für Festgeldanlagen vom Kreditinstitut abgeholt werden.

Highlevel-NameFestCondList
Highlevel-Parameter
currStringobligatorischDie Währung, in der die Festgeldanlagen geführt werden sollen ("EUR").
Rückgabedaten-KlasseGVRFestCondList

Liste bestehender Festgeldanlagen abholen

Mit diesem Geschäftsvorfall kann eine Übersicht über bestehende Festgeldanlagen zu einem bestimmten Anlagekonto abgeholt werden.

Highlevel-NameFestList
Highlevel-Parameter
myKontoobligatorischFestgeld-Anlagekonto, für dessen Festgeldanlagen Informationen abgeholt werden sollen.
Rückgabedaten-KlasseGVRFestList

Liste aller bestehender Festgeldanlagen abholen

Mit diesem Geschäftsvorfall kann eine Übersicht über alle bestehende Festgeldanlagen abgeholt werden.

Highlevel-NameFestListAll
Highlevel-Parameter
myKontooptionalKontoverbindung eines existierenden Anlagekontos oder eines "normalen" Kontos.
Rückgabedaten-KlasseGVRFestList

Kontostammdaten abholen

Dieser Geschäftsvorfall ermöglicht das Abholen von Kontostammdaten. Er ist erst ab HBCI 2.2 spezifiziert, wird aber unter Umständen von einigen Banken bereits in früheren HBCI-Versionen angeboten.

Highlevel-NameAccInfo
Highlevel-Parameter
myKontoobligatorischKontoverbindung, für die Stammdaten ermittelt werden sollen.
allJ oder NoptionalJ, wenn für alle verfügbaren Konten die Daten abgeholt werden sollen, sonst N (default)
Rückgabedaten-KlasseGVRAccInfo

Karteninformationen abholen

Dieser Geschäftsvorfall ermöglicht es, Informationen zu den von der Bank ausgegebenen Karten abzuholen. Das wird u.U. benötigt, wenn eine Karte nach Verlust gesperrt werden soll, die dafür notwendigen Kartendaten aber nicht mehr bekannt sind. Dieser Geschäftsvorfall ist erst ab HBCI 2.2 spezifiziert, wird aber unter Umständen von einigen Banken bereits in früheren HBCI-Versionen angeboten.

Highlevel-NameCardList
Highlevel-Parameter
myKontoobligatorischKontoverbindung des Karteninhabers
Rückgabedaten-KlasseGVRCardList

Übersicht über Kreditinstitutsinformationen abholen

Mit diesem Geschäftsvorfall kann eine Übersicht über die vom Kreditinstitut bereitgestellten Informationen abgeholt werden. Mit einem weiteren Geschäftsvorfall können dann die Informationen selbst bestellt bzw. abgeholt werden.

Highlevel-NameInfoList
Highlevel-Parameter
Rückgabedaten-KlasseGVRInfoList

Bestellen bzw. Abholen von Kreditinstitutsinformationen

Mit diesem Geschäftsvorfall können bestimmte Kreditinstitutsinformationen angefordert werden. Die dafür benötigten Codes für die jeweiligen Informationen können mit dem Geschäftsvorfall InfoList ermittelt werden. Werden Freitextinformationen angefordert, so werden diese direkt in der Antwortnachricht übermittelt, ansonsten wird durch diesen Geschäftsvorfall eine Bestellung der Informationen ausgelöst, die dann anderweitig zugestellt werden (per Post).

Highlevel-NameInfoOrder
Highlevel-Parameter
code,
code_2,
code_3,...
StringobligatorischEs muss mindestens einer der Informationscodes aus dem GV "InfoList" angegeben werden.
nameStringoptionalName des Kunden, wird für die schriftliche Zustellung benötigt (wie auch alle folgenden Parameter)
name2StringoptionalFortsetzung Name des Kunden
streetStringoptionalStrasse der Lieferanschrift
ortStringoptionalOrt der Lieferanschrift
plzStringoptionalPLZ der Lieferanschrift
countryStringoptionalLändercode der Lieferanschrift ("DE")
telStringoptionalTelefonnumer für Rückfragen
faxStringoptionalTelefaxnummer des Kunden
emailStringoptionalEmail-Adresse des Kunden
Rückgabedaten-KlasseGVRInfoOrder

Statusinformationen zu Geschäftsvorfällen abholen

Mit diesem Geschäftsvorfall können zu allen bisher via HBCI eingereichten Aufträgen Statusinformationen abgeholt werden. Diese enthalten i.d.R. den Returncode, den das Einreichen des entsprechenden Auftrages erzeugt hat, bzw. eine Information über den gegenwärtigen Status der Verarbeitung.

Nach dem Ausführen eines beliebigen Geschäftsvorfalles gibt die Methode HBCIJob.getJobResult().getJobId() eine ID zurück, die diesen Job eindeutig kennzeichnet. Diese ID kann dann zur Identifikation der entsprechenden Status-Daten aus dem Status-Protokoll benutzt werden (siehe dazu die Dokumentation der Klasse GVRStatus).

Highlevel-NameStatus
Highlevel-Parameter
startdateDateoptionalNur Statusprotokolleinträge zurückgebenm die an oder nach diesem Datum erzeugt wurden
enddateDateoptionalNur Statusprotokolleinträge zurückgebenm die an oder vor diesem Datum erzeugt wurden
jobidStringoptionalalternativ zu den beiden Date-Parametern kann eine Job-Id angegeben werden, für die Statusinformationen benötigt werden. Es werden dann intern automatisch die richtigen Parameterwerte für startdate und enddate erzeugt und gesetzt.
Rückgabedaten-KlasseGVRStatus

Abholen von Informationen über TAN-Listen

Dieser Geschäftsvorfall macht nur bei Verwendung von PIN/TAN-Passports Sinn. Damit können Informationen zu aktuellen TAN-Listen abgeholt werden. Mit diesem Geschäftsvorfall können keine neuen TAN-Listen bestellt werden, es ist auch nicht möglich, mit diesem Geschäftsvorfall die Menge der noch nicht verbrauchten TANs zu ermitteln.

Highlevel-NameTANList
Highlevel-Parameter
Rückgabedaten-KlasseGVRTANList

Ändern der PIN für HBCI-PIN/TAN

Dieser Geschäftsvorfall macht nur bei Verwendung von PIN/TAN-Passports Sinn. Damit kann die aktuelle PIN für HBCI-PIN/TAN auf einen neuen Wert geändert werden.
Aus Sicherheitsgründen wird die neue PIN nicht automatisch verwendet. Das heißt, sobald dieser GV erfolgreich bei der Bank eingereicht wurde und das OK empfangen wurde, muss für die nachfolgende Nachricht (Dialog-Ende) die neue PIN explizit eingegeben werden.

Highlevel-NameChangePIN
Highlevel-Parameter
newpinStringDie neue PIN.
Rückgabedaten-KlasseHBCIJobResult




© 2015 - 2024 Weber Informatics LLC | Privacy Policy