Zitat geschrieben von cplusplus
ich baue gerade eine eigene XML-Datei zur Übergabe an die Bank. An ein paar Stellen finde ich die Dokumentation unlogisch. Aber gut ist halt EU.
Das hat mit der EU nichts zu tun. Das Urformat ist ein ISO Format, bei dem die europäischen Bankenverbände im EPC Belegungsrichtlinien für den Daten-Austausch zwischen den Banken abgesprochen haben. Auf der Basis haben dann die nationalen Verbände ggf. weitere Einschränkungen abgestimmt.
Aber unlogisch ist sie an der einen oder anderen Stelle in der Tat. Manchmal kann man auch sehen das verschiedene Leute an der Spec gearbeitet haben, die nicht miteinander geredet haben dürften (schau Dir mal in der 2.4er Version die erlaubten Zeichen bei der MessagID in der Überweisung und in der Lastschrift an….)
Zitat geschrieben von cplusplus
Der SeqTp wird auf der Ebene "Payment Instruction Information" angegeben. Das sind Angaben die für alle Einzeltransaktionen gelten. Nun würde ich erwarten, dass man für jeden SeqTp einen "Payment Instruction Information" Block generiert. Ein paar Lastschriften sind halt die ersten, ein paar wiederkehrend.
Das unterscheidet sich vom Prinzip her aber nicht vom noch gültigen DTAUS Format. Auch da gibt es z.B. die Fälligkeit im A-Satz, die für alle Aufträge in der (logischen) Datei gilt
Zitat geschrieben von cplusplus
Im Beispiel der Doku zur Version 2.5 wird "SeqTp" auf "RCUR" gesetzt. Dieser PmtInf Block enthält zwei Lastschriften, bei der die "AmdmntInd" = true ist und eine mit "AmdmntInd" = false. Das Beispiel scheint falsch zu sein, weil wenn "AmdmntInd" = true ist muss "SeqTp" = "FRST" sein. Ist das so, oder kann man das mischen, bzw. gibt es Ausnahmen?
Das Element "AmdmntInd" = true zeigt nur an, dass es bei der Lastschrift eine Mandatsänderung gegeben hat. Der Sequenztyp muss nur bei der Änderung der Kontoverbindung und einer neuen Bank auf FRST gesetzt werden. Bei allen anderen Mandatsänderungen ist das nicht notwendig (was fachlich auch nachvollziehbar ist, da es die Erste Lastschrift bei dieser Bank ist. Die weiß von den anderen Einzügen nichts).
Zitat geschrieben von cplusplus
Wenn ich zwei einzelne Lastschriften für eine Person habe. Ist ja eine die Erste und eine die Zweite. Dann würde ich die Erste in einen "PmtInf" Block mit "SeqTp" = "true" setzen und eine in einen weiteren "PmtInf" Block mit "SeqTp" = "false". Ist das so richtig? Beide Beträge in einer Lastschrift einziehen will ich absichtlich nicht.
Wenn es das gleiche Mandat ist, ist es so formal richtig.
Zitat geschrieben von cplusplus
Die Version 2.5 verwende ich, weil lt. Bank das die Version ist, die alle Banken zwingend einsetzen müssen. Neuere sind wohl nicht verpflichtend einzusetzen.
Völlig Ok so! Nur würde ich zwingend mit verpflichtend ersetzen
Zitat geschrieben von cplusplus
Warum "SeqTp" auf Ebene von "PmtInf" gesetzt wird und nicht auf Ebene der Lastschrift (DrctDbtTxInf) selbst scheint unlogisch aber ist halt wahrscheinlich so.
Wie schon geschrieben war beim DTAUS Format auch schon so und ist auch eigentlich so besser, da ich so unnötige doppelte Daten vermeide.
Zitat geschrieben von Potzblitz
Pro PmtInf Block müssen alle Lastschriften den gleichen seqTp UND das gleiche LclInstrm (CORE / B2B) besitzen.
wenn es sich um Posten mit unterschiedlichen seqTp UND/ODER LclInstrm handelt, musst du mehrere PmtInf-Blöcke angeben.
Nicht ganz. Lastschriften müssen grundsätzlich sortenrein eingereicht werden. Sprich eine Datei darf nur CORE
oder B2B
oder COR1
Zitat geschrieben von Potzblitz
Wenn du die Datei allerdings mit FinTS (HBCI) verschickst, geht das auch nicht, denn bei FinTS darf pro SEPA-Nachricht nur genau ein PmtInf-Block angegeben werden, da würdest du also sogar mehrere SEPA-Nachrichten benötigen.
Exakt.
Viele Grüße
Holger