Dokumentation der Buchungslogik bei Kontoauszugsimport.

Ziel der Dokumentation

Der bisherige Prozess zum Import von Kontoauszügen wurde abgelöst. Welche Vorteile der neue Prozess bringt und was sich dadurch ändert ist nachfolgend dokumentiert

Warum wird der alte Prozess abgelöst

Die Anforderungen an das System sind von Kunde zu Kunde unterschiedlich. Unterschiedliche Buchungslogiken wurden bisher zum einen durch die Verwendung von GlobalPoperties erreicht oder durch festgesetzte Logiken im Code. Neue Anfordeurngen konnten nur durch Implementierungen umgesetzt werden. Die Wartbarkeit des Codes ist nicht mehr gewährleistet. Der neue Import-Prozess ermöglicht es die gewünschten Buchungslogiken, soweit dies sinnvoll ist, zu konfigurieren.


Beispiel: Gebühren, die mit dem GVC-Code 808 sollen auf ein spezielles (kundenspezifisches) Konto “Gebühren” gebucht werden. Hierfür kann ein neues Konto angelegt werden. Es kann nun eine Konfiguration vorgenommen werden, sodass alle Transaktionen mit GVC 808 nicht mehr wie bisher auf auf Transit oder Sonstiges gebucht werden, sondern eben auf das neue Konto “Gebühren”

Nicht konfigurierbare Vorgänge

Sowohl Rücklastschriften als auch die Zahlungen von REMADVs sind nicht konfigurierbar.

Verbuchung von Rücklastschriften

Zahlungseingang zu REMADV

Verbuchung von REMADV-Zahlungseingängen

Verbuchung von Rücklastschriften

Weitere Beispiele zur Verbuchung des Zahlungseingangs finden Sie Hier

Welche GlobalProperties sind damit obsolet

Die GlobalProperties STA_FILE_TRANSFER_GVC_191_192_TO_SEPA_ACCOUNT und STA_FILE_IGNORE_ACCOUNTING_TRANSACTION_REASONS werden mit dem neuen Prozess obsolet sein.

Was ändert sich generell

Buchungen auf Sonstiges

Die Transaktionen, die unter STA_FILE_IGNORE_ACCOUNTING_TRANSACTION_REASONS bisher in Summe auf das Konto Sonstiges gebucht werden, werden zukünftig einzeln verbucht. Die Summierung wird nicht weiter unterstützt, da hieraus die Nachvollziehbarkeit verloren gegangen ist.

Buchungen auf Transitkonto

Buchungen, die auf das Transitkonto laufen wurden bisher mit der Buchungskette 200 <–> 302, 302 <–> 6, 6 <–> 301 verbucht. Das Konto vom Typ 6 stellt dabei das Debitor Überweisung dar. Da aber nicht nur Zahlungsverkehr zu einem Debitor, sondern auch Kreditorzahlungen oder Gebühren in dieser Art verbucht wurden, ist diese Logik nicht immer korrekt. In der Standardkonfiguration wird daher die Buchungskette verkürzt 200 <–> 302, 302 <–> 301. Damit die Buchungen weiterhin journalisiert werden ist die Journalkonfigration anzupassen. Ist dennoch die alte Buchungslogik erwünscht, so kann dies durch den Support umkonfiguriert werden.

Wie kann die Konfiguration vorgenommen werden

Bitte beauftragen Sie Anpassungen an der Konfiguration über den Support. Eine Konfiguration über die UI ist nicht vorgesehen, da hierzu ein tieferes technisches Hintergrundwissen benötigt wird.

StaFilePositions

Beim Import des Kontoauszugs werden nun auch die einzelnen Transaktionen als StaFilePosition persistiert. Dies hat den Vorteil, dass die Konteninformationen in der DetailView Kontoauszüge und im Transitkonto performant abrufbar sind. Des Weiteren werden keine Objekte (Bankdaten und Geschäftspartner) mehr angelegt, wenn zu einer Transaktion keine passenden Objekte gefunden werden. Diese dienten bisher dem Zweck, die Konteninformationen in o.g. Sichten anzuzeigen. Die Datenmenge kann somit reduziert werden.
Es werden folgende Informationen abgespeichert:

bankName
Spaltenname Beschreibung
id Id der Transaktion
staFile Id des StaFiles, welche die Transaktion beinhaltet
accountingDocument Buchungsbeleg entspricht dem Buchungsbeleg der Buchungen, die zu dieser Transaktion ausgeführt wurden
staAccountMapping Id des StaAccountMappings
gvc Geschäftsvorfallcode der Transaktion Segment :86:
amount Betrag der Transaktion
accountingIdentifier Soll-/ Haben Kennung
postingDate Buchungsdatum
iban IBAN aus Segment ?31
bic BIC aus Segment ?30
bankName Name der Bank, welche anhand der Iban ermittelt wird
partnerName Name des Tranaktionspartners aus Segment ?32
virtualIban Virtuelle IBAN
subject weiterer Buchungstext
paymentDetails Verwendungszweck
bookingText Buchungstext

Buchungsbelege

Buchungsbeleg für den Kontoauszug

Für jeden Kontoauszug wird ein Buchungsbeleg angelegt.

id description shortname
Interface.StaFile Kontoauszug Import Kontoauszug

Buchungsbelege für Tranaktion

Für jede Transaktion in einem Kontoauszug wird ein Buchungsbeleg angelegt. Dieser hat eine parent-Referenzierung auf den Beleg des Kontoauszugs.

Veraltete Verwendung von Belegtypen

In der Vergangenheit gab es nur eine Unterscheidung zwischen Rücklastschrift und anderen Transaktionen

Rücklastschrift: Interface.StaFile.Debitor.BackDirectDebit
sonstige Transaktionen: Interface.StaFile.Entry
Aktuelle Verwendung von Belegtypen

Für jede Art von Transaktion wird ein spezieller Belegtyp verwendet, dadurch geht aus dem Buchungsbeleg hervor, um welche Art von Transaktion es sich handelt.

Folgende Buchungsbelege werden verwendet

Debitor eingehende Überweisung: Interface.StaFile.Debitor.IncomingCreditTransfer
Debitor ausgehende Überweisung: Interface.StaFile.Debitor.OutgoingCreditTransfer
Nicht zuordnungsbare eingehende Überweisung: Interface.StaFile.Transit.IncomingCreditTransfer
Kreditor eingehende Überweisung: Interface.StaFile.Creditor.IncomingCreditTransfer
Kreditor ausgehende Überweisung: Interface.StaFile.Creditor.OutgoingCreditTransfer
Kreditor Überweisungssammler: Interface.StaFile.Creditor.OutgoingCreditTransfer.Collector
Kreditor Lastschriftsammler: Interface.StaFile.Creditor.DirectDebit.Collector
Debitor eingehende Lastschrift: Interface.StaFile.Debitor.DirectDebit
Bankgebühren: Interface.StaFile.Fees
Debitor Rücklastschrift: Interface.StaFile.Debitor.BackDirectDebit
Rücklastschrift: Interface.StaFile.BackDirectDebit

Konfiguration der Verbuchung einer Transaktion im Kontoauszug (Tabelle FL_TRANSACTIONCONFIGURATION)

Die Konfiguration der Buchungslogiken wird in der Tabelle FL_TRANSACTIONCONFIGURATION durchgeführt

Spaltenname Beschreibung
id Id der Konfiguration
businessProcessContext Prozess in dem die Buchung ausgeführt wird (Interface.StaFile) - diese Einstellung soll ermöglichen, dass die Individuelle Konfiguration auch für weitere Prozesse möglich ist
financialContext Belegtyp unter dem die Buchung erfolgen soll
identifier z.B. GVC aus dem Kontoauszug zur Identifizierung, ob diese Buchung durchgeführt werden soll
condition Derzeit nicht verwendet
concatenation Nummerierung der Buchung, bei einer Buchungskette
accountingSide Zahlungseingang/ Zahlungsausgang
debitAccountType Kontentyp im Soll
creditAccountType Kontentyp im Haben
splitterOf Derzeit nicht verwendet
description Beschreibung des Vorgangs

Standard-Konfiguration

Überweisungssammler

businessProcessContext financialContext identifier concatenation accountingSide debitAccountType creditAccountType description
Interface.StaFile Interface.StaFile.Creditor.OutgoingCreditTransfer.Collector 191 0 DR 208 200 Überweisungssammler

Augeschlüsselte Überweisungssammler

businessProcessContext financialContext identifier concatenation accountingSide debitAccountType creditAccountType description
Interface.StaFile Interface.StaFile.Creditor.OutgoingCreditTransfer.Collector RMP-,116 0 DR 208 200 Einzelbuchung

Lastschriftsammler

businessProcessContext financialContext identifier concatenation accountingSide debitAccountType creditAccountType description
Interface.StaFile Interface.StaFile.Creditor.DirectDebit.Collector 192 0 CR 200 201 Lastschriftsammler

Gebühren

businessProcessContext financialContext identifier concatenation accountingSide debitAccountType creditAccountType description
Interface.StaFile Interface.StaFile.Fees 808 0 DR 303 200 Gebühren

Cashpool ausgehend

businessProcessContext financialContext identifier concatenation accountingSide debitAccountType creditAccountType description
Interface.StaFile Interface.StaFile.Cashpool 833
oder
834
1 DR 200 320 Cashpool

Cashpool eingehend

businessProcessContext financialContext identifier concatenation accountingSide debitAccountType creditAccountType description
Interface.StaFile Interface.StaFile.Cashpool 833
oder
834
1 CR 320 200 Cashpool

Lastschriften

businessProcessContext financialContext identifier concatenation accountingSide debitAccountType creditAccountType description
Interface.StaFile Interface.StaFile.Debitor.DirectDebit 004
oder
005
oder
079
1 CR 200 203 Lastschrift
Interface.StaFile Interface.StaFile.Debitor.DirectDebit 004
oder
005
oder
079
2 CR 302 7 Lastschrift
Interface.StaFile Interface.StaFile.Debitor.DirectDebit 004
oder
005
oder
079
3 CR 7 1 Lastschrift

Ausgehende Überweisung an Debitor

businessProcessContext financialContext identifier concatenation accountingSide debitAccountType creditAccountType description
Interface.StaFile Interface.StaFile.Debitor.OutgoingCreditTransfert DEBITOR 1 DR 302 200 Zahlung an Debitor
Interface.StaFile Interface.StaFile.Debitor.OutgoingCreditTransfert DEBITOR 2 DR 6 302 Zahlung an Debitor
Interface.StaFile Interface.StaFile.Debitor.OutgoingCreditTransfert DEBITOR 3 DR 1 6 Zahlung an Debitor

Eingehende Überweisung von Debitor

businessProcessContext financialContext identifier concatenation accountingSide debitAccountType creditAccountType description
Interface.StaFile Interface.StaFile.Debitor.IncomingCreditTransfer DEBITOR 1 CR 200 302 Zahlung von Debitor
Interface.StaFile Interface.StaFile.Debitor.IncomingCreditTransfer DEBITOR 2 CR 302 6 Zahlung von Debitor
Interface.StaFile Interface.StaFile.Debitor.IncomingCreditTransfer DEBITOR 3 CR 6 1 Zahlung von Debitor

Eingehende Zahlungen, die nicht zugewiesen werden können

businessProcessContext financialContext identifier concatenation accountingSide debitAccountType creditAccountType description
Interface.StaFile Interface.StaFile.Transit.IncomingCreditTransfer DEFAULT 1 CR 200 302 Nicht zuordbar
Interface.StaFile Interface.StaFile.Transit.IncomingCreditTransfer DEFAULT 2 CR 302 301 Nicht zuordbar

Ausgehende Zahlungen, die nicht zugewiesen werden können

businessProcessContext financialContext identifier concatenation accountingSide debitAccountType creditAccountType description
Interface.StaFile Interface.StaFile.Entry DEFAULT 1 DR 301 302 Nicht zuordbar
Interface.StaFile Interface.StaFile.Entry DEFAULT 2 DR 302 200 Nicht zuordbar

Verbuchungslogik im StaFileImportProzessor

Da Rücklastschriften und Eingangszahlungen zu REMADVs besonders behandelt werden, arbeitet der StaFileImportProzessor wie folgt:

  1. Prüfe die Transaktion auf eine Rücklastschrift und führe diese ggf. aus
  2. Prüfe die Transaktion auf eine Eingangszahlung mit Referenz auf eine REMADV im Nummernkreis (Verwendungszweck enthält den Teilstring "RMP-" + ggf. Konfigurierten Nummernkreis aus der GlobalProperty RMP-REMADV_NUMBER_RANGE , der GVC ist nicht 116) und führe diese ggf. aus
  3. Prüfe, ob die Transaktion eine Aufsplittung eines Überweisungssammlers ist (subject RMP- und GVC 116), verwende die dafür vorgesehene Transaktion
  4. Prüfe, ob die Transaktion eine Eingangszahlung auf eine REMADV ist, jedoch nicht dem Nummernkreis (siehe GlobalProperty RMP-REMADV_NUMBER_RANGE) entspricht
  5. Prüfe, ob für den GVC der Transaktion eine Konfiguration vorhanden ist, dann verwende diese
  6. Prüfe, ob der Transaktionspartner ein Debitor ist, dann verwende die Konfiguration mit identifier "DEBITOR"
  7. Ansonsten verwende die Konfiguration mit identifier "DEFAULT"