Difference between revisions of "De/SEPA-Lastschrift"

From GnuCash
Jump to: navigation, search
(Lastschrift-Import)
m (Lastschrift-Import)
Line 22: Line 22:
  
 
== Lastschrift-Import ==
 
== Lastschrift-Import ==
Nun muss man sich eine Beschreibung der Import-Tabellen-Datei zurechtlegen. In AqBanking heißen die Formatbeschreibungen von Import-Tabellen "Profiles". Die Details sind im "AqBanking Handbuch", Kapitel 11, beschrieben. Ein mögliches Import-"profile" ist hier vorgeschlagen:
+
Nun muss man sich eine Beschreibung der Import-Tabellen-Datei zurechtlegen.
 +
=== Formatbeschreibung (Profile) ===
 +
In AqBanking heißen die Formatbeschreibungen von Import-Tabellen "Profiles", egal wie man diese Bezeichnung findet. Die Details sind im "AqBanking Handbuch", Kapitel 11, beschrieben. Ein mögliches Import-"profile" ist hier vorgeschlagen:
 
<pre>
 
<pre>
 
char name="sepalast"
 
char name="sepalast"
Line 52: Line 54:
 
</pre>
 
</pre>
 
Diese Formatbeschreibung muss in einer Datei mit dem Suffix ".conf" (wichtig!) abgespeichert werden, z.B. sepalast.conf, und diese Datei in den Ordner $prefix/share/aqbanking/imexporters/csv/profiles/  kopiert werden - wichtig! Nur Dateien in diesem Ordner und nur mit der Endung .conf werden berücksichtigt. Leider funktioniert in aqbanking 5.4.x und 5.5.x die Kommandozeilenoption --profileFile nicht.
 
Diese Formatbeschreibung muss in einer Datei mit dem Suffix ".conf" (wichtig!) abgespeichert werden, z.B. sepalast.conf, und diese Datei in den Ordner $prefix/share/aqbanking/imexporters/csv/profiles/  kopiert werden - wichtig! Nur Dateien in diesem Ordner und nur mit der Endung .conf werden berücksichtigt. Leider funktioniert in aqbanking 5.4.x und 5.5.x die Kommandozeilenoption --profileFile nicht.
 +
 +
=== Eingabedaten ===
  
 
Nun kann man Dateien mit Importtabellen anlegen, wo jede Zeile einer Lastschrift entspricht. Die Bedeutung ergibt sich aus den Namen oben. Sollte man fälschlicherweise Zeilen in der Datei haben, die nicht zur angegebenen Formatbeschreibung passen (z.B. Spaces statt Tabs), erhält man leider nur die lapidare Fehlermeldung
 
Nun kann man Dateien mit Importtabellen anlegen, wo jede Zeile einer Lastschrift entspricht. Die Bedeutung ergibt sich aus den Namen oben. Sollte man fälschlicherweise Zeilen in der Datei haben, die nicht zur angegebenen Formatbeschreibung passen (z.B. Spaces statt Tabs), erhält man leider nur die lapidare Fehlermeldung
Line 62: Line 66:
 
* Für den Zahler sind in aqbanking 5.5.0 bisher die Angabe der BIC noch notwendig, obwohl SEPA das nicht erfordern würde
 
* Für den Zahler sind in aqbanking 5.5.0 bisher die Angabe der BIC noch notwendig, obwohl SEPA das nicht erfordern würde
  
 +
=== Absenden ===
 
Diese Datei (z.B. "input.csv") kann man wie folgt zur Bank schicken:
 
Diese Datei (z.B. "input.csv") kann man wie folgt zur Bank schicken:
 
  aqbanking-cli sepadebitnotes --ctxfile=$CONTEXTFILE -a $ACCOUNTNUM --fill-gaps --importer=csv --profile=sepalast --infile=input.csv
 
  aqbanking-cli sepadebitnotes --ctxfile=$CONTEXTFILE -a $ACCOUNTNUM --fill-gaps --importer=csv --profile=sepalast --infile=input.csv

Revision as of 19:56, 22 September 2014

Hier wird die Einrichtung von AqBanking (de/HBCI) für die Nutzung von SEPA-Lastschriften beschrieben. Zwar ist das kein direktes GnuCash-Thema, aber hier war gerade ein Wiki verfügbar.

Voraussetzungen: Aqbanking 5.4.3 oder höher musste installiert sein.

Einrichtung

Für die Einrichtung des Zugangs geht man zunächst so vor wie im "AqBanking Handbuch" http://www2.aquamaniac.de/sites/download/packages.php beschrieben.

Test

Man verifiziert dann den funktionierenden Zugang durch Prüfen von "Saldoabruf" und "Umsatzabruf". Auf der Kommandozeile ein Saldoabruf:

aqbanking-cli request --balance -a $ACCOUNTNUM -c $CONTEXTFILE
aqbanking-cli listbal -a $ACCOUNTNUM -c $CONTEXTFILE

wobei $ACCOUNTNUM die Kontonummer ist und $CONTEXTFILE ein beliebiger Dateiname, in dem beim Abruf die erhaltenen Daten reingeschrieben werden und sie danach mit listbal wieder ausgelesen werden.

SEPA-Informationen

Nun muss man die SEPA-Informationen zum Konto noch abrufen (jedenfalls noch in aqbanking 5.5.x):

aqhbci-tool4 getaccsepa -a $ACCOUNTNUM

Die fertige Konfiguration besteht nun aus dem Inhalt des Verzeichnisses $HOME/.aqbanking sowie ggf. der Schlüsseldatei. Im Verzeichnis $HOME/.aqbanking werden außerdem zu jeder Kommunikation mit dem Server auch Logs abgelegt - die muss man natürlich nicht aufheben, sofern man nicht später noch was nachschauen will. Alle anderen Verzeichnisse und Dateien dort enthalten verschiedene Elemente der Konfiguration.

Lastschrift-Import

Nun muss man sich eine Beschreibung der Import-Tabellen-Datei zurechtlegen.

Formatbeschreibung (Profile)

In AqBanking heißen die Formatbeschreibungen von Import-Tabellen "Profiles", egal wie man diese Bezeichnung findet. Die Details sind im "AqBanking Handbuch", Kapitel 11, beschrieben. Ein mögliches Import-"profile" ist hier vorgeschlagen:

char name="sepalast"
char shortDescr="import sepa debitnotes"
int import="1"
char type="csv"
char subject="debitnotes"
params {
        quote="0"
        title="0"
        delimiter="TAB"
        columns {
                1="localBankCode"
                2="localAccountNumber"
                3="remoteIBAN"
                4="remoteBIC"
                5="remoteName[0]"
                6="value/value"
                7="value/currency"
                8="purpose[0]"
                9="purpose[1]"
                10="creditorSchemeId"
                11="mandateId"
                12="mandateDate"
                13="sequenceType"
                14="date"
        }
}

Diese Formatbeschreibung muss in einer Datei mit dem Suffix ".conf" (wichtig!) abgespeichert werden, z.B. sepalast.conf, und diese Datei in den Ordner $prefix/share/aqbanking/imexporters/csv/profiles/ kopiert werden - wichtig! Nur Dateien in diesem Ordner und nur mit der Endung .conf werden berücksichtigt. Leider funktioniert in aqbanking 5.4.x und 5.5.x die Kommandozeilenoption --profileFile nicht.

Eingabedaten

Nun kann man Dateien mit Importtabellen anlegen, wo jede Zeile einer Lastschrift entspricht. Die Bedeutung ergibt sich aus den Namen oben. Sollte man fälschlicherweise Zeilen in der Datei haben, die nicht zur angegebenen Formatbeschreibung passen (z.B. Spaces statt Tabs), erhält man leider nur die lapidare Fehlermeldung

3:2014/09/21 22-10-48:aqbanking(6251):csv.c:  458: Empty group

und diese Meldung ein Mal pro Zeile, die nicht zur Formatbeschreibung passt. Eine Beispieldatei würde dann so aussehen:

70020270        0012345678      DE1234567891234567890  INGDDEFFXXX     Empfaengername     0.23    EUR     Testueberweisung              DE50ZZZ0111111111111      MANXX 2014.01.01      once    2014/10/01

Hinweise:

  • Das Datumsformat für mandateDate (=Gültigkeitsdatum des Mandats) ist leider in einem anderen Format als das Ausführungsdatum, aber sei's drum
  • Das Ausführungsdatum hat unerwartet fixe Vorgaben durch die SEPA-Regeln, siehe auch http://www.onlinebanking-forum.de/forum/topic.php?t=17778
  • Für den Zahler sind in aqbanking 5.5.0 bisher die Angabe der BIC noch notwendig, obwohl SEPA das nicht erfordern würde

Absenden

Diese Datei (z.B. "input.csv") kann man wie folgt zur Bank schicken:

aqbanking-cli sepadebitnotes --ctxfile=$CONTEXTFILE -a $ACCOUNTNUM --fill-gaps --importer=csv --profile=sepalast --infile=input.csv

Hoffentlich klappt alles und man sieht folgende Meldung:

0020 - Auftrag zur Ausführung vorgemerkt. (S)

Viel Glück!