AqBanking: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
|||
Zeile 38: | Zeile 38: | ||
# Integration in den OrgaMon | # Integration in den OrgaMon | ||
# Grosse Kick-Off-Party für DDBAC | # Grosse Kick-Off-Party für DDBAC | ||
==Projektstatus== | |||
Das Projekt befinder sich noch in der Entwicklungsphase | |||
* Erfolgreches Abrufen der Kontostände und ablegen in eine csv-Datei | |||
** Der Programmteil Umsatzabfrage ist im Beta-Stadium fertiggestellt!! | |||
Bedienung: | |||
-U oder -u für umsatzabfrage | |||
Danach kommen die Parameter | |||
BLZ KTO PIN [Datum] | |||
ohne - oder / oder ähnliches, nur durch whitespace getrennt | |||
* Erfolgreiche Lastschriften | |||
** Lastschriftverfahren für ein- oder mehrere Datensätze erfolgreich getestet! | |||
** Der Programmteil Lastschrift ist im Beta-Stadium fertiggestellt!! | |||
Bedienung | |||
-L oder -l für Lastschrift | |||
Danach kommen die Paramter | |||
BLZ KTO PIN "Pfad der CSV-Datei" | |||
ebenfalls ohne sonderzeichen, nur durch whitespace getrennt | |||
* "Verpacken" in ein eigenes Projekt und abschluss der Entwicklungsphase | |||
* Ausgedehntere Tests | |||
== Verwendung von DDBAC, DataDesign == | == Verwendung von DDBAC, DataDesign == |
Version vom 6. März 2008, 13:31 Uhr
Ziel
Linux-basierter REST-Server-Dienst. Wrapper für grundlegende "AqBanking Rev. 3.x" Funktionen.
- Umsätze abrufen (./UMSATZ)
- Sammel-Lastschriften durchführen (./LASTSCHRIFT)
- OPTIONAL: (Termin-)Überweisungen durchführen (./UEBERWEISUNG)
Die Buchführung des OrgaMon kann "externe" Konten via Webserices (vorzugsweise REST) integrieren. Dadurch werden Giro-Konto-Buchungen direkt im OrgaMon sichtbar. Systematischer Aufbau des Server-Dienstes.
notwendige Implementierungen
- aqbd - der aqbanking dämon. Muss notwendigerweise als Dämon programmiert werden da z.B. das Mehrstufige TAN Verfahren mehrere REST-Zyklen benötigt und die Verbindung zur Bank dazwischen nicht unterbrochen werden darf, insbesondere beim iTAN Verfahren. Die Kommunikation mit der Aussenwelt erledigt der Dämon über das dbus-Interface. Ein PHP-Script kann über den Befehl dbus-send Informationen mit dem Dämon austauschen.
mehr Infos zu DBUS
Meilensteine
- Linux-Anwendungsebene: QBankingManager installieren (Erfolg: 21.02.2008)
- ein Giro-Konto abfragen um zu sehen, ob das Teil funktioniert (Erfolg: 21.02.2008)
- Transaktion "Konto-Umsatz-Abfrage" ausprobieren! (Erfolg: 21.02.2008)
- Transaktion "Sammel-Lastschrift" (DTA) ausprobieren! (Geht nicht! Nur Einzeln)
- Linux-Programmierebene: "aqbanking 3" versuchen zu compilieren (Erfolg: 19.02.2008)
- Mini-Programm Konsolen-Programm erstellen das z.B. die Kontenliste auf den Schirm bringt (Erfolg: 22.02.2008)
- AH_Job_GetBalance ("~kto~.~blz~") : double (aufgegeben, wir können das ergebnis nicht parsen)
- AH_Job_GetTransactions ("~kto~.~blz~","20.02.2008") : (Erfolg: 28.02.2008)
- AH_Job_MultiDebitNode_new (Achtung schwierig: "Multi-Job" + "TAN" notwendig + DTAUS Importer verwenden!)
prefersingletransfer 0x00000001 : Einzelüberwisung bevorzugt, für uns unwichtig
prefersingledebitnote 0x00000002 : Ist default, wird einfach aus der settings.conf entfernt, SingleDebinote gibt es nicht bei VoBa! - Erfolgreiche erzeugung eines DebitNote-Auftrags aus Kommandozeilenparameretn und csv-Datei
- Erfolgreiche auftragsübertragung bis zur TAN-Abfrage über den Passwort-Callback!!(05.03.2008)
- Erfolgreiche Lastschriften mit einer einzelnen, sowie mit 2 Lastschriften in einer Sammellastchrift.
- aqbd nun als richtiges / eigentständiges Linux Projekt beginnen und Know-How aus abtest übernehmen (Info: http://www.openismus.com/documents/linux/automake/automake.shtml)
- den d-bus Server-Code in aqbd übernehmen
- REST-Server in PHP verwirklichen, ruft das cmd-tool
- REST - Mappings definieren auf ein nun fertiges "aqbc"-Programm das in C programmiert ist.
- Integration in den OrgaMon
- Grosse Kick-Off-Party für DDBAC
Projektstatus
Das Projekt befinder sich noch in der Entwicklungsphase
- Erfolgreches Abrufen der Kontostände und ablegen in eine csv-Datei
- Der Programmteil Umsatzabfrage ist im Beta-Stadium fertiggestellt!!
Bedienung: -U oder -u für umsatzabfrage Danach kommen die Parameter BLZ KTO PIN [Datum] ohne - oder / oder ähnliches, nur durch whitespace getrennt
- Erfolgreiche Lastschriften
- Lastschriftverfahren für ein- oder mehrere Datensätze erfolgreich getestet!
- Der Programmteil Lastschrift ist im Beta-Stadium fertiggestellt!!
Bedienung -L oder -l für Lastschrift Danach kommen die Paramter BLZ KTO PIN "Pfad der CSV-Datei" ebenfalls ohne sonderzeichen, nur durch whitespace getrennt
- "Verpacken" in ein eigenes Projekt und abschluss der Entwicklungsphase
- Ausgedehntere Tests
Verwendung von DDBAC, DataDesign
funktioniert seit 2002, wird aber wegen der Lizenzbestimmungen von DataDesign nur in der Entwicklerversion als Machbarkeitsdemonstration verwendet.
Verwendung von Aqbanking 3
- Homepage: http://www.aquamaniac.de/sites/aqbanking/index.php
- Developement-Snapshot-aqbanking: http://devel.aqbanking.de/viewsvn/aqbanking/root.tar.gz?view=tar
- Mailing-List: http://sourceforge.net/mailarchive/forum.php?forum_name=aqbanking-devel
bisherige Implementierungen
leider basiert die Implementierung auf "aqbanking 2" das nicht weiterentwickelt wird. In "aqbanking 3" das wir verwenden wollen ist das Kommandozeilen-Tool "aqbanking-tool" nicht mehr vorhanden.
aktuelle Implementierung
- aqbanking.3.2.1
- gwen.3.1.1
WARNING: pre pre Alpha (Hardcoded PIN for ex.)
http://orgamon.org/abtest.c.txt
REST-Implementierung
Umsatz
Anfrage:
./UMSATZ/~BLZ~/~KONTO#~/2008-02-28?f=text
Antwort:
- Mapping csv<->Aqbanking
// Zuordnungen gefunden Buchungsdatum<->date Typ<->transactionKey (Beispiel: "NSTO","NMSC","NCHK") vonBLZ<->remoteBankCode vonKonto<->remoteAccountNumber vonName1..2<->remoteName ValutaDatum<->valutaDate Betrag<->value.value Waehrung<->value.currency VorgangID<->textKey VorgangText<->transactionText Primanota<->primanota Verwendungszweck1..7<->purpose
Sammellastschrift
Anfrage:
POST ./LASTSCHRIFT/~BLZ~/~Konto~
mit einem http-Upload der DTA-Datei!
Antwort:
- die Antwort ist aus Ablaufgründen ein html-Formular:
Nun bitte die 34. TAN [______]
(Ausführen)
- iTAN: Ist das iTAN Verfahren gewählt, so muss vom Server vor Anzeige der Antwort zunächst die Index-Nummer der iTAN abgefragt werden
- DTA: Dem Dienst muss die Sammel-Lastschrift Datei übertragen werden. Dabei wird auf das bewährte DTA-Format gesetzt
- "POST" (=Button "Ausführen") schickt die Daten nun zum Server, dann erst erfolgt die eigentliche Arbeit
Termin-Überweisung
-- noch kein Bedarf --
Nebenprojekt von Andreas
Versuch mit aqbanking 2.3
http://ftp.gwdg.de/pub/linux/packman/suse/10.3/i586/
Anleitung zum Nachvollziehen des Projektes
aqbanking compilieren
- gwen dingens ...
- aqbanking dingens ...
./configure --disable-chipcard-client --with-frontends=""
Vermischtes
Kleine Anleitung für entwickler entdeckt, leider offensichtlich nicht ganz aktuell
http://www.aquamaniac.de/apidoc/aqbanking/G_APP_INTRO.html
Sieht fast so aus, ls sei die Funktion AB_Banking_EnqueueJob() in der neuen Version nichtmehr vorhanden!! Anscheinen wurde sie von der JobList2 Verdrängt (??) http://www.aquamaniac.de/apidoc/aqbanking/listdoc_8h.html#afb08a006da8e45b8aaec3d1b8379ca9