Bitte wähle nachfolgend aus, welche Beiträge auf dieser Themenseite auf dem Ausdruck ausgegeben werden sollen. Um dies zu tun markiere bitte die Checkbox auf der linken Seite der Posts, die im Ausdruck berücksichtigt werden sollen und klicke anschließend ganz unten auf der Seite auf den Button "Drucken".

Verständnisfragen zu MT940

sugar76

Betreff:

Verständnisfragen zu MT940

 ·  Gepostet: 02.12.2017 - 18:32 Uhr  ·  #135782
Hallo allerseits,

ich möchte gerne automatisiert Kontoauszüge abrufen und in einer Datenbank speichern.

Dazu habe ich den MT940 Export von Windata verwendet.

Ich habe aber Probleme, das Format zu verstehen. Ich habe mir auch schon Dokumentation zu MT940 angesehen, da wird aber nicht alles erklärt.

Als Beispiel hier ein Auszug aus dem Export (persönliche Daten sind geändert):
Code

:61:1510261026DR29,89NDDTNONREF
:86:105?00FOLGELASTSCHRIFT?109248?20KUNDENKONTO000048?2143
44 002117800551/12.?2210.15 Gläubiger-ID DE93ZZZ0?230000078
611 Mandatsreferenz ?24DE00500010000000000?2505061316 Kun
denreferenz (En?26d-to-End) ZAHLUNGSBELEG 208?27118226?30HYVED
EMMXXX?31DE687002067302269?32TELEKOM DEUTSCHLAND?34992
:61:1510271027DR47,50N032NONREF//100000154834


Die Felder :61: und :86: beinhalten Umsatzdetails und Verwendungszweck. Den Inhalt vom Feld :61: kapiere ich ja noch halbwegs.

Aber was hat es mit den ganzen '?' in Feld :86: auf sich? Zum Beispiel der Teil 'En?26d-to-End'. Hier soll ganz klar End-to-End stehen, ist der Export schlicht fehlerhaft?

Beste Grüße,

Abid

msa

Betreff:

Re: Verständnisfragen zu MT940

 ·  Gepostet: 02.12.2017 - 18:58 Uhr  ·  #135783
Das ist eigentlich ganz einfach. Feld :61: ist der eigentliche Umsatz. Die erste Zahlenkolonne ist zuerst Wertstellung und dann Buchungstag (ohne Jahr), also Wertstellung 26.10.2015, Buchungstag 26.10.
Dann D wie Debit (also Zahlungsausgang minus), dann R wie Euro (da wird immer der letzte Buchstabe des dreistelligen Währungskürzels gesetzt), dann Betrag 29,89 dann fix N dann noch einige Kennzeichnungen laut SWIFT-Handbuch (unwichtig) und NONREF also keine Scheck-Referenznummer.

Feld :86: ist das Feld mit Zusatzangaben zu dem vorhergegangenen Umsatz. Die ?xx sind die Feldschlüssel von Sub-Feldern. Verständlich aufbereitet wäre das in Deinem Beispiel:

:86:105 (Feld 86, Geschäftsvorfallcode 105)
?00 FOLGELASTSCHRIFT (Subfeld 00 = Buchungstext)
?10 9248 (Subfeld 10 = Primanota)
?20 KUNDENKONTO000048 (Subfeld 20-29 und ggf. Subfeld 60-63 = bis zu 14 Verwendungszweck-Zeilen)
?21 43 44 002117800551/12.
?22 10.15 Gläubiger-ID DE93ZZZ0
?23 0000078 611 Mandatsreferenz
?24 DE00500010000000000
?25 05061316 Kundenreferenz (En
?26 d-to-End) ZAHLUNGSBELEG 208
?27 118226
?30 HYVEDEMMXXX (Subfeld 30 = BIC oder BLZ)
?31 DE687002067302269 (Subfeld 31 = IBAN oder KtoNr)
?32 TELEKOM DEUTSCHLAND (Subfeld 32 = Zahlungsgegnername)
?34 992 (Subfeld 34 = Textschlüsselergänzung)

Dass die Zeilen teils auseinandergerissen sind ist der ggf. mehrfachen Konvertierung zwischen altem IZV und neuem SEPA zwischen den Banken geschuldet, das geht derzeit wohl nicht anders. Auch dürfen die Zeilen im MT940 grundsätzlich maximal 80 (ich glaube) Zeichen lang sein, danach wird umgebrochen. Das heißt, die Zeilenumbrüche im Original-MT940-Datenstrom im Feld 86 sind uninteressant. Um das Feld 86 auszuwerten muß man zuerst alle Zeilenumbrüche entfernen und dann anhand der Subfelder selbst welche reinmachen. Dein Beispiel En?26d-to-End ist völlig korrekt. Da war die Verwendungszweckzeile ?25 voll und der Text geht einfach in der nächsten Zeile ?26 weiter...

sugar76

Betreff:

Re: Verständnisfragen zu MT940

 ·  Gepostet: 03.12.2017 - 11:45 Uhr  ·  #135789
Also erstmal vielen Dank für die Erklärung, das hilft wirklich weiter.

Sehe ich das richtig, dass man in :86: durch Aneinanderhängen der Subfelder 20-29 und Weglassen der Feldschlüssel den Verwendungszweck hat?

msa

Betreff:

Re: Verständnisfragen zu MT940

 ·  Gepostet: 03.12.2017 - 16:02 Uhr  ·  #135791
Subfelder 20-29 + Subfelder 60-63 (sofern vorhanden, wenn es sehr viel Text gibt) - ja. Diesen Text in einer eigenen Datenbank einfach unter Verlust der "Zeilen" in ein langes Feld zu packen halte ich für das sinnvollste, da die Zeileneinteilung zu Zeiten von SEPA eh kreuz und quer geht. Dein Datenbank-Textfeld müsste dann im Maximum 14*27 Stellen aufnehmen können (eine Textzeile, also ein Subfeld, kann maximal 27 Zeichen lang sein.

thomson

Betreff:

Re: Verständnisfragen zu MT940

 ·  Gepostet: 04.12.2017 - 12:20 Uhr  ·  #135815
Hallo Abid,

wenn du einen Parser für Kontoumsätze entwickeln möchtest, prüfe vorab die Umstellung auf camt.
Hier hast du einen strukturieren XML-Datensatz, welcher einfacher zu verarbeiten ist.

sugar76

Betreff:

Re: Verständnisfragen zu MT940

 ·  Gepostet: 05.12.2017 - 10:57 Uhr  ·  #135852
Zitat geschrieben von thomson

wenn du einen Parser für Kontoumsätze entwickeln möchtest, prüfe vorab die Umstellung auf camt.
Hier hast du einen strukturieren XML-Datensatz, welcher einfacher zu verarbeiten ist.


Ich beziehe die Umsätze über die Windata-Autoauszug Funktion. Die Kontoumsätze werden von Windata abgerufen und in eine Datei exportiert. Das camt Format wird leider nicht zum Export angeboten. Sonst wäre das natürlich super.

msa

Betreff:

Re: Verständnisfragen zu MT940

 ·  Gepostet: 05.12.2017 - 11:21 Uhr  ·  #135853
Hm, und ein sinnvolles CSV-Format bieten die auch nicht an zum Export? Das wäre ja merkwürdig, wenn Du deswegen jetzt das Rad neu erfinden musst...

infoman

Betreff:

Re: Verständnisfragen zu MT940

 ·  Gepostet: 05.12.2017 - 11:49 Uhr  ·  #135856

sugar76

Betreff:

Re: Verständnisfragen zu MT940

 ·  Gepostet: 06.12.2017 - 17:23 Uhr  ·  #135889
Zitat geschrieben von msa

Hm, und ein sinnvolles CSV-Format bieten die auch nicht an zum Export? Das wäre ja merkwürdig, wenn Du deswegen jetzt das Rad neu erfinden musst...

Doch, habe gesehen, dass es auch ein CSV Format gibt. Hat dieselben Schwächen wie der MT940 Export, wo mitten im Text Subfeldschlüssel stehen und damit den Text "auseinanderreißen". Ist also zumindest nicht schlechter als der MT940 Export.

Zitat geschrieben von infoman

wenn man wüsste was mit den Daten genau passieren soll
... evtl. in welches Programm Import o.ä.
dann wäre wie üblich vieles leichter

Ich entwickle eine Software, bei der ein Bevollmächtigter für seine Mandanten (das können bis zu 100 sein) Kontobewegungen (nur deutsche Banken) kontrolliert und Zahlungen vornimmt. D.h., jede Nacht werden von ca. 100 Konten die Umsätze abgerufen und strukturiert in einer Datenbank gespeichert. Die Software zeigt die Umsätze mit Umsatzdetails (Datum, Betrag, Debit/Credit, Verwendungszweck, Zahlungsgegner, etc.) tabellarisch an.

Es kommt Windata in der aktuellen Version (z. Zt. 8.8 ) zum Einsatz.

Das camt-Format wird nur bei Verwendung von EBICS zum Export angeboten. Ich habe bisher nur HBCI verwendet, von EBICS weiß ich nicht viel. Wird das denn von allen Banken unterstützt?

Raimund Sichmann

Betreff:

Re: Verständnisfragen zu MT940

 ·  Gepostet: 06.12.2017 - 18:09 Uhr  ·  #135892
EBICS wird von allen Banken mit Firmen in der Kundschaft unterstützt, oft kostet es aber Geld.
Die Version 9 von windata ist meines Wissens bereits im Test, evtl. kann die auch CAMT über FinTS/HBCI exportieren.
Eventuell solltest du mal selbst mit dem Windata-Support sprechen, die haben dort durchaus fähige Leute.
Gruß
Raimund

infoman

Betreff:

Re: Verständnisfragen zu MT940

 ·  Gepostet: 06.12.2017 - 19:39 Uhr  ·  #135895
wäre es nicht einfacher auf eine Schnittstelle/Services wie www.subsembly.com/index.html / www.figo.io / konfipay (siehe u.) zu setzen? (diese verwenden ja div. Startups - ua. auch wegen der Skalierbarkeit und Systemstabilität)
auf der einen Seite kümmern sich diese um die Banking-Schnittstellen und auf der anderen Seite um die Kunden-Schnittstelle
selbst bei mehrmaligen Abruf täglich, keine Duplizierung von Kontoumsätzen usw.

siehe auch
http://www.onlinebanking-forum.de/forum/topic.php?t=18610 (API)
http://www.onlinebanking-forum.de/forum/topic.php?t=21362 (konfipay ist bspw. auch aus dem Hause windata)

sugar76

Betreff:

Re: Verständnisfragen zu MT940

 ·  Gepostet: 07.12.2017 - 15:09 Uhr  ·  #135918
Zitat geschrieben von infoman

wäre es nicht einfacher auf eine Schnittstelle/Services wie www.subsembly.com/index.html / www.figo.io / konfipay (siehe u.) zu setzen?


Wie gesagt, es geht um die Entwicklung einer Software zur Kontrolle von Kontobewegungen. Ich möchte auf keinen Fall, dass in dieser Software bzw. der darunterliegenden Datenbank irgendwelche PINs, Schlüsseldateien, etc. gespeichert werden. Es soll auch nicht möglich sein, über die Software Zahlungen vorzunehmen.

Da bin ich konservativ. Ich als Hersteller der Software möchte nicht haften, wenn es jemandem gelingen sollte, meine Software zu hacken und Missbrauch mit vertraulichen Zugangsdaten zu treiben.

Das ist auch ein Grund, weshalb ich auf externe Software wie Windata setze. Wobei es jetzt nicht zwingend Windata sein muss, ich brauche nur eine Möglichkeit automatisiert Umsätze abzurufen und das geht mit dem Windata-Autoauszug halt.

Raimund Sichmann

Betreff:

Re: Verständnisfragen zu MT940

 ·  Gepostet: 07.12.2017 - 22:37 Uhr  ·  #135933
Automatisch geht es aber in FinTS/HBCI nicht ohne gespeicherte Passwörter.
Da könnte tatsächlich EBICS sinnvoll sein - hier kann man seitens den Banken reine Abrufvollmachten einrichten, die nicht für Unterschriften verwendet werden können. Neben anderen könnte das aber die Subsembly-Lösung auch oder auch die windata Blackbox.
Wenn es um mehrere Kunden geht, dann könnte die bessere Lösung sogar ein sogenanntes "Service-Rechenzentrum" sein, dass die Umsatzdatne selbst aufarbeitet. Vereinfacht gesagt können die Banken ggü. dem Service-Rechenzentrum vom Bankgeheimnis befreit werden. Da gibt es natürlich einige Regeln zu beachten.
Eventuell solltest du uns noch ein paar Informationen nennen, was deine genauen Ziele auch für die Zukunft sind.
Ich kenne eine Lösung, bei der ein Raspberry-PI zum Überwachen der eingehenden Zahlungen eines Online-Shops eingesetzt wird. Leider weiß ich nicht mehr, welche Software dort rennt, ich meine, es war Hibiscus oder aqbanking. Mit gespeicherten Passwörtern allerdings.
Gruß
Raimund

sugar76

Betreff:

Re: Verständnisfragen zu MT940

 ·  Gepostet: 09.12.2017 - 10:04 Uhr  ·  #135952
Zitat geschrieben von Raimund Sichmann

Automatisch geht es aber in FinTS/HBCI nicht ohne gespeicherte Passwörter.

Das ist klar. Aber wenn ich Windata (oder ein vergleichbares kommerzielles Produkt) einsetze, trage ich nicht mehr die alleinige Verantwortung bei Missbrauch. Windata ist dafür verantwortlich, dass ihre Software "sicher" (ein schwammiges Wort) ist, also nicht "geknackt" werden kann. Anders beim Einsatz von Opensource Software: hier liegt die Hauptverantwortung im Fall von Missbrauch auf meiner Seite.

Ich möchte als Entwickler einer Software auf keinen Fall hochsensible Zugangsdaten in "meiner" Datenbank speichern. Diese Verantwortung gebe ich gerne an Windata ab.

Zitat geschrieben von Raimund Sichmann

Eventuell solltest du uns noch ein paar Informationen nennen, was deine genauen Ziele auch für die Zukunft sind.

Es geht darum, für Konten von Einzelpersonen die Buchhaltung der kompletten Finanzen (alle Ein- und Ausgaben) durchzuführen. Ein Teil dieser Buchhaltung ist die tabellarische Darstellung von Kontoumsätzen, um die Ein-/Ausgaben kontrollieren zu können. Weiterhin werden auch Online Zahlungen durchgeführt, aber das ginge ja dann über Windata.

Ich habe mir auch Buchhaltungsprogramme angesehen, nur oberflächlich. Ich hatte nicht den Eindruck, dass hier eine saubere Schnittstelle möglich ist, um die Einzelpersonen aus meiner Software eindeutig mit den Mandanten in der Buchhaltungssoftware zu verknüpfen.

sugar76

Betreff:

Re: Verständnisfragen zu MT940

 ·  Gepostet: 09.12.2017 - 11:14 Uhr  ·  #135954
Zur Info: um diesen Thread nicht zu sprengen, habe ich für das Thema Buchhaltungssoftware mal einen neuen Thread aufgemacht.

infoman

Betreff:

Re: Verständnisfragen zu MT940

 ·  Gepostet: 09.12.2017 - 17:49 Uhr  ·  #135956
Also irgendwie kann ich alleine den hier besprochen Part (Kontoumsätze usw.) sowie die Begründung in #12 nicht nachvollziehen.

Der Kunde muss doch bspw. bei seiner Bank einen eingeschränkten HBCI/FinTS (Beraterzugang) beschaffen - dh. hier können nur Kontoumsätze eingesehen werden.
aber selbst wenn der Kunde sein Zugangsdaten aushändigen würde, was oft für automatischer Abruf durch den Stb. gemacht wird (auch wenn bankseits nicht gerne gesehen/rechtlich fraglich) kann dieser ohne das Authorisierungsmedium nichts machen.
Dh. selbst wenn dies komplett Online ablaufen würde und ein hack erfolgt, wären nur die Kontoumsätze einsehbar - egal ob direkt auf der Page oder über die banking-homepage

Komplizierter wird es mit den automatischen Zahlungen, denn welcher Kunde gibt sein Authorisierungsmedium einem "Dritten"? Dies wäre nicht nur Haftungstechnisch eine Frage, der "Dritte/Berater könnte ja frei verfügen und abhauen" sondern auch rechtlich - Richtung Treuhandkonto ..
Hinzu kommen PSD2 - was ja Vor- und Nachteile hat bzw. manche Dinge erschwert usw.
Hier soll es ja gerade Drittanbietern ermöglicht werden div. Services anzubieten und einfacheren Bankenzugang, aber auf der anderen Seite wie vorgenannt soll der Kunde gestärkt werden. Insgesamt dürfte dies aber über eine API gehen wie von den vorgenannten Unternehmen aufgeführt (konfipay = windata) die ja lediglich als Bridge zur Verfügung stehen, dh. der Service ruft die Umätze usw. ab, der Berater stellt evtl. Überweisungsvorlagen ins System und der Kunde autorisiert selbst seine Daten.

Bei @Holger werden bei der o.g. Idee des TS bestimmt alle Alarmglocken schrillen.

@Raimund es geht ja aber auch um Zahlung die der Berater anscheinend durchführt/durchführen soll. (siehe meine vorgenannten Bedenken)
Aber alleine die Kontoumsätze abfragen ist so eine Sache, denn ob "eigener Server" oder externer Dienstleister ist bestimmt ein abendfüllendes Thema - windata mit konfipay oder die anderen Entwickler sehen ja hier Bedarf.
Die start-ups ja auch, denn somit können diese sich fokussieren und müssen sich nicht um Banking-Software usw. kümmern.
Egal ob Banking-Software (Server) oder API kommt eine weitere Hürde noch hinzu, dass ja auch screenscraper unterstützt werden sollen, das kann auch nicht jede Software.

thomson

Betreff:

Re: Verständnisfragen zu MT940

 ·  Gepostet: 10.12.2017 - 09:17 Uhr  ·  #135965
Deinen Hinweis habe ich direkt beim Hersteller platziert:

Zitat geschrieben von sugar76

Zitat geschrieben von thomson

wenn du einen Parser für Kontoumsätze entwickeln möchtest, prüfe vorab die Umstellung auf camt.
Hier hast du einen strukturieren XML-Datensatz, welcher einfacher zu verarbeiten ist.


Ich beziehe die Umsätze über die Windata-Autoauszug Funktion. Die Kontoumsätze werden von Windata abgerufen und in eine Datei exportiert. Das camt Format wird leider nicht zum Export angeboten. Sonst wäre das natürlich super.


Inzwischen wurde der camt-Export mittels dem HBCI-AutoAuszug für das nächste Update mit aufgenommen: http://wiki.windata.de/index.p…sional_8.8

Somit hast du einen einfachen Lösungsansatz.

sugar76

Betreff:

Re: Verständnisfragen zu MT940

 ·  Gepostet: 10.12.2017 - 13:27 Uhr  ·  #135966
Zitat geschrieben von infoman

Also irgendwie kann ich alleine den hier besprochen Part (Kontoumsätze usw.) sowie die Begründung in #12 nicht nachvollziehen.
...
Dh. selbst wenn dies komplett Online ablaufen würde und ein hack erfolgt, wären nur die Kontoumsätze einsehbar - egal ob direkt auf der Page oder über die banking-homepage

Ich verstehe nicht 100% was Du sagen willst. In meinem Szenario hat der Bevollmächtigte vom Mandanten die Zugangsdaten für HBCI erhalten (kann übrigens auch Zahlungen vornehmen). Selbst wenn ein Krimineller sich "nur" den Zugang zu den Umsätzen verschafft, gelangt er an hochprivate Daten ran und begeht eine Straftat. Ganz zu schweigen, wenn er Zahlungen vornehmen sollte, Auch wenn das nicht publik wird: Online-Zugänge werden in seltenen Fällen geknackt und es entstehen auch finanzielle Verluste.

Windata als Hersteller ist dafür verantwortlich, dass die in Windata gespeicherten Zugangsdaten vor dem unbefugten Zugriff sicher sind. Ich gehe davon aus, dass bei Verwendung einer API wie subsembly die Zugangsdaten in "meiner" Software gespeichert werden. In dem Moment, wo ich die Zugangsdaten in meiner eigenen Software speichere, trage ich als Hersteller der Software die Verantwortung und die will ich nicht haben, deswegen überlasse ich das Windata. Anders sähe es aus, wenn die Zugangsdaten auf den Servern des Service-Providers gespeichert werden (bei konfipay ist das glaube ich so?), dann bin ich die Verantwortung los und kann ruhig schlafen.

Zitat geschrieben von thomson

Inzwischen wurde der camt-Export mittels dem HBCI-AutoAuszug für das nächste Update mit aufgenommen: http://wiki.windata.de/index.p…sional_8.8

Habe ich auch gesehen, danke für den Hinweis.

infoman

Betreff:

Re: Verständnisfragen zu MT940

 ·  Gepostet: 10.12.2017 - 15:15 Uhr  ·  #135967
Zitat geschrieben von sugar76
In meinem Szenario hat der Bevollmächtigte vom Mandanten die Zugangsdaten für HBCI erhalten (kann übrigens auch Zahlungen vornehmen).

Dh. der Bevollmächtigte hat Vollzugriff und mit den Zugangsdaten des Mandanten?
(von persönlichen Bankzugangsdaten für den Bevollmächtigten ist bisher nicht die Rede)
auch von einem 4 Augen-Sicherungssystem ist nicht die Rede bzw. Bevollmächtige/Berater erstellt nur Vorlage und Kunde/Mandant gibt frei

Wenn der Bevollmächtigte nun die Konten räumt, freut sich die Bank, denn der Mandant darf seine persönliche Daten nicht an Dritte weitergeben.
Hier wird also die Haftung Mandant (Bankkunde) und Bank ausgehebelt, die ja in Kürze nochmals verbraucherfreundlich minimiert wird
Zitat
Die Haftung für Betrugsschäden im OnlineBanking wird von 150 Euro auf 50 Euro gesenkt, wenn den Kunden kein Verschulden trifft

https://www.blsk.de/de/home/service/psd2.html

... und hier rede ich ja noch nicht mal von dem Online-Zugang, welchen durch den/deinen Service geschaffen werden soll.
aber wir wollen und können hier ja keine Rechtsberatung machen, wünsch dir diesbzgl. ein sicheres Händchen und hoffe du hast eine gute Betriebshaftplicht und Anwaltskanzlei.

sugar76

Betreff:

Re: Verständnisfragen zu MT940

 ·  Gepostet: 10.12.2017 - 17:58 Uhr  ·  #135969
Zitat geschrieben von infoman

Wenn der Bevollmächtigte nun die Konten räumt, freut sich die Bank, denn der Mandant darf seine persönliche Daten nicht an Dritte weitergeben.
Hier wird also die Haftung Mandant (Bankkunde) und Bank ausgehebelt, die ja in Kürze nochmals verbraucherfreundlich minimiert wird


Damit hier keine Missverständnisse aufkommen: der "Bevollmächtigte" ist ein behördlich bestellter Betreuer (also ein gesetzlicher Vormund). Dieser ist vom zuständigen Amtsgericht beauftragt, sich um die Finanzen seines Mandanten (= der Betreute) zu kümmern, weil dieser aufgrund Alter, Krankheit, etc. dazu nicht mehr in der Lage ist. Rechtlich ist das einwandfrei, der Mandant muss sogar von Amts wegen seine persönlichen Daten rausgeben, damit der Betreuer seine Arbeit machen kann.