← Zum camt-Viewer

camt-Fehlermeldungen erklärt

Zeigt der camt-Viewer oder der camt-Validator einen Befund, steht dahinter eine konkrete Regel: der Aufbau der Nachricht nach ISO 20022, die Belegungsregeln der deutschen Kreditwirtschaft (Anlage 3 des DFÜ-Abkommens) oder die Rechnung von Anfangssaldo, Buchungen und Endsaldo. Jeder Eintrag erklärt den Hintergrund und den schnellsten Weg zur Lösung. Codes wie CAMT_… und STMT_… stammen aus der Sofortprüfung im Browser (Stufe 1), die Einträge zur Schema-Prüfung erklären die englischen XSD-Meldungen der Stufe 2. Kontoauszüge kommen von der Bank: Wo eine Nachfrage nötig ist, nennt der Eintrag die Angaben, die die Bank braucht. Die Befunde zur Gebührenabrechnung der Bank stehen in der Gruppe Bankentgelte (camt.086), erzeugt vom camt.086-Viewer.

Datei und Struktur

CAMT_VERSION_UNKNOWN Unbekannte camt-Version

Der Namensraum der Datei nennt eine camt-Version, die weder .02 (ISO 2009) noch .08 (ISO 2019) ist, etwa .04 aus der Schweiz oder eine neuere Fassung. Der Viewer liest die Datei nach dem Aufbau der Version .08, die Schema-Prüfung hat für diese Version aber keine Grundlage.

Lösung: Die Darstellung ist in der Regel brauchbar. Für eine Schema-Prüfung bei der Bank die Version .08 bestellen; über EBICS ist die Version nur ein Parameter der Bestellung.

CAMT_VERSION_02 Ältere Version camt.0xx.001.02

Die Datei nutzt die Schema-Version von 2009, seit 2010 der deutsche Standard. Mit der ISO-20022-Umstellung der Banken seit Herbst 2025 kommt die Version .08 dazu; wie lange eine Bank .02 noch liefert, ist bankabhängig. Beide Versionen tragen dieselben Inhalte, sie unterscheiden sich im Aufbau einzelner Elemente.

Lösung: Kein Handlungsbedarf, solange die Bank .02 liefert. Für neue Anbindungen die Version .08 bestellen, damit die Umstellung nicht später nachgeholt werden muss.

CAMT_MISSING_HEADER Nachrichtenkopf unvollständig

Jede camt-Datei beginnt mit dem Nachrichtenkopf (GrpHdr). Die Nachrichtenkennung MsgId und der Erstellungszeitpunkt CreDtTm sind dort Pflicht; über sie identifiziert die Bank eine Lieferung. Fehlt eines der Felder, ist die Datei unvollständig oder beim Übertragen beschädigt worden.

Lösung: Die Datei erneut von der Bank abholen. Bleibt der Kopf unvollständig, bei der Bank mit Kontonummer und Abholzeitpunkt nachfragen.

CAMT_STATEMENT_UNREADABLE Auszug ohne Kennung oder Konto

Ein Kontoauszug, Kontobericht oder Avis braucht eine Kennung (Id) und ein Konto (Acct/Id mit IBAN oder einer anderen Kontokennung). Ohne diese Angaben lässt sich der Abschnitt keinem Konto zuordnen; die Bank liefert so etwas nicht, in der Regel wurde die Datei nachträglich verändert oder abgeschnitten.

Lösung: Die Datei erneut abholen und unverändert verwenden. Wenn sie aus einer Zwischenverarbeitung stammt, dort prüfen, ob Id und Acct erhalten bleiben.

CAMT_MULTIPLE_STATEMENTS Mehrere Auszüge in einer Datei

Eine camt-Datei darf mehrere Auszüge (Stmt), Berichte (Rpt) oder Avise (Ntfctn) enthalten, zum Beispiel für mehrere Konten oder mehrere Tage. Der Viewer zeigt sie nacheinander; Salden und Sequenznummern gelten je Auszug.

Lösung: Kein Handlungsbedarf. Beim Weiterverarbeiten darauf achten, dass jedes Werkzeug alle Auszüge liest und nicht nur den ersten.

CAMT_PAGINATED Mehrseitige Nachricht

Banken teilen große Lieferungen in Seiten (MsgPgntn). Diese Datei ist eine Seite davon, erkennbar an PgNb oder an LastPgInd false. Salden, Summen und die Buchungszählung gelten nur für die vollständige Nachricht; der Saldencheck entfällt deshalb.

Lösung: Alle Seiten derselben MsgId abholen und zusammen auswerten. Fehlt eine Seite, bei der Bank mit MsgId und Seitenzahl nachfragen.

CAMT_ENTRY_UNREADABLE Buchung ohne Pflichtangabe übersprungen

Jede Buchung (Ntry) braucht Betrag (Amt), Richtung (CdtDbtInd) und Status (Sts). Fehlt eines davon, kann der Viewer die Buchung weder anzeigen noch in Summen einrechnen; sie wird übersprungen und ihr Pfad genannt. Der Saldencheck kann dadurch eine Abweichung melden.

Lösung: Die Datei erneut abholen. Tritt der Befund erneut auf, bei der Bank mit Auszugsnummer und der Position der Buchung nachfragen.

CAMT_BTC_MISSING Buchung ohne Bank Transaction Code

Das Schema verlangt für jede Buchung einen Bank Transaction Code (BkTxCd) mit Domäne, Familie und Unterfamilie oder einem proprietären Code. Deutsche Banken tragen dort zusätzlich den Geschäftsvorfallcode (GVC) ein. Ohne BkTxCd fehlt die Art der Buchung; die Schema-Prüfung meldet das ebenfalls.

Lösung: Die Buchung ist trotzdem lesbar. Für eine Buchhaltung, die nach GVC verteilt, bei der Bank nachfragen, warum der Code fehlt.

Salden und Zeiträume

STMT_BALANCE_MISMATCH Salden passen nicht zu den Buchungen

Anfangssaldo (OPBD, ersatzweise PRCD) plus Haben minus Soll aller gebuchten Buchungen (Status BOOK) muss den Endsaldo (CLBD) ergeben. Vormerkungen (PDNG) und Informationsbuchungen zählen nicht, Stornos stehen mit ihrer Richtung in CdtDbtInd. Die Meldung nennt beide Zahlen und die Differenz. Ursachen sind eine beschädigte oder unvollständige Datei, Zwischensalden einer Bank, die vom Standard abweicht, oder eine übersprungene Buchung.

Lösung: Zuerst prüfen, ob die Datei vollständig ist (Seiten, übersprungene Buchungen). Dann die Salden mit dem Auszug im Onlinebanking vergleichen. Stimmt der Auszug dort, bei der Bank mit Auszugsnummer, MsgId und den beiden Salden nachfragen.

STMT_BALANCE_MISSING Anfangs- oder Endsaldo fehlt

Ein Kontoauszug (camt.053) führt den Anfangssaldo (OPBD oder PRCD) und den Endsaldo (CLBD). Fehlt einer davon, kann der Viewer die Buchungen nicht gegen die Salden rechnen. Kontoberichte (camt.052) und Avise (camt.054) führen diese Salden nicht, dort gilt der Befund nicht.

Lösung: Prüfen, ob die Datei wirklich ein Kontoauszug ist oder ein untertägiger Bericht. Liefert die Bank Kontoauszüge ohne Salden, bei der Bank nachfragen.

STMT_BALANCE_CURRENCY Saldo in fremder Währung

Alle Salden eines Auszugs stehen in der Kontowährung (Acct/Ccy). Ein Saldo in einer anderen Währung oder uneinheitliche Währungen zwischen den Salden deuten auf eine Vermischung mehrerer Konten oder einen Fehler der erzeugenden Software hin. Der Saldencheck wäre dann sinnlos.

Lösung: Die Datei unverändert von der Bank abholen. Stammt sie aus einer Konvertierung (etwa aus MT940), die Währungsangaben dort prüfen.

STMT_BALANCE_DATE Saldodatum unplausibel

Der Anfangssaldo trägt das Datum vor dem Auszugszeitraum, der Endsaldo das Datum des letzten Tages. Liegt das Datum des Anfangssaldos nach dem des Endsaldos oder das Datum des Endsaldos außerhalb des Zeitraums (FrToDt), passen Salden und Zeitraum nicht zusammen.

Lösung: Auszugszeitraum und Saldodaten mit dem Onlinebanking vergleichen. Bei Abweichung bei der Bank mit Auszugsnummer nachfragen.

STMT_PERIOD_INVALID Auszugszeitraum beginnt nach seinem Ende

FrToDt nennt Beginn und Ende des Zeitraums, den der Auszug abdeckt. Liegt der Beginn nach dem Ende, sind die beiden Werte vertauscht oder einer ist falsch. Alle Prüfungen, die den Zeitraum nutzen, verlieren damit ihre Grundlage.

Lösung: Die Datei erneut abholen. Tritt der Befund erneut auf, bei der Bank mit Auszugsnummer und MsgId nachfragen.

STMT_CREATED_BEFORE_PERIOD_END Auszug vor Ende seines Zeitraums erstellt

Der Erstellungszeitpunkt (CreDtTm) liegt vor dem Ende des Auszugszeitraums. Das kommt bei untertägigen Abholungen vor und ist dann harmlos; bei einem Tagesauszug können Buchungen des Tages fehlen, die nach der Erstellung gebucht wurden.

Lösung: Für den endgültigen Tagesauszug die Datei nach Tagesende erneut abholen. Zwischenstände mit diesem Befund nicht als abschließend verbuchen.

STMT_SEQUENCE_GAP Lücke in der Auszugsnummer

Auszüge desselben Kontos sind fortlaufend nummeriert (LglSeqNb, ersatzweise ElctrncSeqNb). Eine Lücke zwischen zwei Auszügen in derselben Datei bedeutet, dass ein Auszug fehlt; die Buchungen dazwischen sind in dieser Lieferung nicht enthalten.

Lösung: Den fehlenden Auszug mit seiner Nummer bei der Bank nachbestellen oder erneut abholen. Erst dann die Salden über die Auszüge hinweg prüfen.

STMT_SEQUENCE_DUPLICATE Auszugsnummer doppelt

Zwei Auszüge desselben Kontos tragen dieselbe Nummer. Entweder enthält die Datei einen Auszug zweimal (zum Beispiel nach einer Wiederholung der Abholung) oder die Bank hat die Nummer doppelt vergeben. Ein doppelt verbuchter Auszug verfälscht Salden und Offene-Posten-Abgleiche.

Lösung: Prüfen, ob beide Auszüge inhaltlich gleich sind; dann einen verwerfen. Sind sie verschieden, bei der Bank mit Kontonummer und Auszugsnummer nachfragen.

Buchungen

STMT_ENTRY_CURRENCY Buchung in fremder Währung

Der Betrag einer Buchung (Ntry/Amt) steht in der Kontowährung; ein Fremdwährungsbetrag gehört in die Betragsdetails (AmtDtls/InstdAmt) mit Umrechnungskurs. Eine Buchung in anderer Währung als das Konto lässt sich nicht in den Saldo rechnen.

Lösung: Die Buchung in der Anzeige prüfen. Liefert die Bank regelmäßig Buchungen so, bei der Bank nachfragen; eine Konvertierung aus MT940 kann die Währung ebenfalls verlieren.

STMT_ENTRY_OUTSIDE_PERIOD Buchungsdatum außerhalb des Auszugszeitraums

Das Buchungsdatum (BookgDt) einer Buchung liegt vor dem Beginn oder nach dem Ende des Zeitraums (FrToDt), den der Auszug abdeckt. Das passiert bei Nachbuchungen mit altem Datum oder wenn der Zeitraum falsch angegeben ist.

Lösung: Die Buchung im Onlinebanking suchen. Ist sie dort einem anderen Auszug zugeordnet, bei der Bank nachfragen; sonst den Zeitraum des Auszugs als Angabe der Bank hinnehmen.

STMT_BOOKING_DATE_MISSING Gebuchte Buchung ohne Buchungsdatum

Eine Buchung mit Status BOOK ist verbucht und trägt ein Buchungsdatum (BookgDt). Fehlt es, kann die Buchung keinem Tag zugeordnet werden, und Auswertungen nach Datum lassen sie aus. Bei Vormerkungen (PDNG) darf das Datum fehlen.

Lösung: Die Buchung anhand der Bankreferenz (AcctSvcrRef) im Onlinebanking prüfen. Fehlt das Datum regelmäßig, bei der Bank nachfragen.

STMT_VALUE_DATE_IMPLAUSIBLE Valuta weit vom Buchungsdatum entfernt

Valuta (ValDt) und Buchungsdatum (BookgDt) liegen meist am selben Tag oder wenige Tage auseinander. Ein Abstand über der Schwelle (Standard 30 Tage) kommt bei Kartenabrechnungen, Zinsen und Auslandszahlungen vor und kann dort richtig sein; sonst deutet er auf ein falsches Datum hin.

Lösung: Die Buchung ansehen: Kartenabrechnung oder Zinsbuchung, dann kein Handlungsbedarf. Bei einer gewöhnlichen Überweisung die Valuta mit dem Onlinebanking vergleichen.

STMT_DUPLICATE_ENTRY Mögliche Doppelbuchung

Zwei Buchungen tragen dieselbe Bankreferenz (AcctSvcrRef) oder stimmen in Betrag, Buchungsdatum und EndToEndId überein. Entweder liegt eine echte Doppelbuchung vor oder eine Buchung samt Storno, oder ein Zahler hat denselben Auftrag zweimal gesendet.

Lösung: Beide Buchungen vergleichen. Bei Buchung plus Storno kein Handlungsbedarf. Bei einer echten Doppelbelastung bei der Bank reklamieren, bei einer doppelten Gutschrift den Zahler informieren.

CAMT_BATCH_COUNT_MISMATCH Sammler nennt eine andere Zahl von Zahlungen

Bei einer Sammelbuchung nennt Btch/NbOfTxs, wie viele Einzelzahlungen zusammengefasst sind. Weicht die Zahl von den tatsächlich enthaltenen Zahlungen (TxDtls) ab, ist die Auflösung unvollständig; Zahlungen können fehlen, und ein Abgleich mit dem eigenen Zahllauf geht nicht auf.

Lösung: Prüfen, ob die Bank die Sammler-Auflösung in einer eigenen camt.054-Datei liefert. Fehlen Zahlungen, bei der Bank mit MsgId und PmtInfId des Sammlers nachfragen.

CAMT_BATCH_SUM_MISMATCH Sammlerbetrag passt nicht zu den Einzelzahlungen

Der Betrag einer Sammelbuchung (Btch/TtlAmt oder Ntry/Amt) muss der Summe der enthaltenen Einzelzahlungen entsprechen. Eine Abweichung bedeutet eine fehlende oder doppelte Einzelzahlung oder einen Betrag, der bei der Auflösung verändert wurde.

Lösung: Die Einzelzahlungen gegen den eigenen Zahllauf prüfen (EndToEndId). Bei einer Abweichung bei der Bank mit MsgId und PmtInfId nachfragen.

CAMT_SUMMARY_MISMATCH Zusammenfassung passt nicht zu den Buchungen

Die Zusammenfassung (TxsSummry) nennt Anzahl und Summe der Buchungen, getrennt nach Soll und Haben. Weicht sie von den gezählten Buchungen ab, fehlen Buchungen in der Datei oder die Bank hat die Zusammenfassung anders gebildet, etwa einschließlich Vormerkungen.

Lösung: Zuerst prüfen, ob Buchungen übersprungen wurden (siehe CAMT_ENTRY_UNREADABLE) oder die Nachricht mehrseitig ist. Sonst bei der Bank nachfragen, wie die Zusammenfassung gebildet wird.

Konten und Referenzen

STMT_IBAN_INVALID IBAN besteht die Prüfziffernrechnung nicht

Jede IBAN trägt zwei Prüfziffern nach ISO 13616 (mod 97). Scheitert die Rechnung, enthält die IBAN einen Tippfehler, einen Zahlendreher oder ein fehlendes Zeichen. Beim Konto des Auszugs deutet das auf eine Konvertierung hin, bei einer Gegenpartei auf einen Fehler beim Zahler oder in dessen Software.

Lösung: Konto-IBAN: die Datei unverändert von der Bank verwenden; stammt sie aus einer Konvertierung, dort die IBAN prüfen. Gegenpartei-IBAN: für Rückzahlungen oder Lastschriften die IBAN beim Partner bestätigen lassen.

CAMT_GVC_UNKNOWN Geschäftsvorfallcode nicht in der DK-Liste

Deutsche Banken tragen in BkTxCd/Prtry/Cd den Geschäftsvorfallcode (GVC) nach Anhang 1 der Anlage 3 des DFÜ-Abkommens ein, allein oder hinter dem SWIFT-Buchungsschlüssel (zum Beispiel NTRF+166). Dieser Code steht nicht in der aktuellen Liste; die Anzeige zeigt deshalb nur die Nummer ohne Klartext.

Lösung: Die Bedeutung aus dem Buchungstext oder bei der Bank erfragen. Nutzt die Bank einen hausinternen Code, ist das zulässig; eine Buchhaltung, die nach GVC verteilt, braucht dann eine eigene Zuordnung.

CAMT_LEGACY_KEYS Verwendungszweck mit DK-Schlüsselwörtern

Der Verwendungszweck enthält Schlüsselwörter wie SVWZ+, EREF+, MREF+ oder CRED+. Dieses Muster stammt aus dem MT940-Format; Banken, die ihre Auszüge aus MT940 wandeln oder Altbestände liefern, schreiben so. Der Viewer zerlegt die Felder, in der Datei stehen sie aber nur als Text.

Lösung: Kein Handlungsbedarf für die Anzeige. Für die automatische Weiterverarbeitung die Felder aus der Zerlegung nutzen oder bei der Bank die strukturierte Belegung (EndToEndId, MndtId in Refs) erfragen.

Hinweise ohne Handlungsbedarf

STMT_PENDING_ENTRIES Vorgemerkte Buchungen

Buchungen mit Status PDNG sind vorgemerkt und noch nicht verbucht, typisch in untertägigen Kontoberichten (camt.052). Sie zählen nicht zum Saldo und können sich bis zur Buchung noch ändern oder entfallen.

Lösung: Vormerkungen nicht verbuchen. Den endgültigen Stand liefert der Tagesauszug (camt.053) mit Status BOOK.

STMT_REVERSALS Storno-Buchungen

Buchungen mit RvslInd true sind Stornos einer früheren Buchung. Die Richtung des Stornos steht in CdtDbtInd, die Buchung ist also ganz normal in den Saldo zu rechnen. Der Hinweis nennt die Anzahl, damit Stornos beim Abgleich auffallen.

Lösung: Storno und Ursprungsbuchung zusammen betrachten. In der Buchhaltung beide buchen oder beide weglassen, je nach dort geltender Regel.

STMT_RETURNS Rückgaben und Rücklastschriften

Buchungen mit Rückgabeinformation (RtrInf) sind zurückgegebene Überweisungen oder Rücklastschriften. Der Grund steht als ISO-Code (zum Beispiel AC04 für ein aufgelöstes Konto, AM04 für fehlende Deckung) mit Klartext in der Meldung. Rücklastschriften lösen oft Entgelte aus.

Lösung: Die Gründe durchgehen: bei AC01, AC04 und RC01 die Kontodaten des Partners aktualisieren, bei AM04 und MD-Gründen den Partner ansprechen, bevor die Zahlung erneut eingereicht wird.

Bankentgelte (camt.086)

C086_VERSION_UNKNOWN Unbekannte camt.086-Version

Der Namensraum der Gebührenabrechnung nennt keine der Versionen .01 bis .05, oder die Datei trägt gar keinen camt.086-Namensraum. Der Viewer liest sie nach dem Aufbau der Version .04; die gelesenen Elemente stehen in allen Versionen an derselben Stelle. Eine Schema-Prüfung gibt es für eine unbekannte Version nicht.

Lösung: Die Anzeige ist in der Regel brauchbar. Für eine Schema-Prüfung bei der Bank nachfragen, welche Version sie liefert; die deutsche Kreditwirtschaft spezifiziert die Version .02.

C086_MISSING_HEADER Berichtskennung RptId fehlt

Jede camt.086 beginnt mit dem Berichtskopf RptHdr. Die Berichtskennung RptId ist dort Pflicht; über sie gehören mehrere Seiten einer Lieferung zusammen. Fehlt sie, ist die Datei unvollständig oder nachträglich verändert worden.

Lösung: Die Datei erneut abholen (EBICS-Auftragsart C86). Bleibt der Kopf leer, bei der Bank mit Konto und Abholzeitpunkt nachfragen.

C086_STATEMENT_UNREADABLE Abrechnung ohne Nummer oder Konto

Eine Abrechnung (BllgStmt) braucht eine Abrechnungsnummer (StmtId, oft die Rechnungsnummer) und ein Konto (AcctChrtcs/CshAcct/Id mit IBAN oder anderer Kennung). Ohne diese Angaben lassen sich die Entgelte keinem Konto zuordnen.

Lösung: Die Datei unverändert erneut verwenden. Stammt sie aus einer Zwischenverarbeitung, dort prüfen, ob StmtId und CshAcct erhalten bleiben.

C086_SERVICE_INCOMPLETE Service ohne ID, Bezeichnung oder Betrag

Jeder Service braucht die Service-ID der Bank (BkSvc/Id), eine Bezeichnung (BkSvc/Desc) und den Betrag ohne Steuer (OrgnlChrgPric). Ohne Betrag kann der Viewer den Service nicht in die Summen rechnen; ohne Bezeichnung bleibt nur der Code.

Lösung: Den genannten Service in der Datei ansehen. Bei Dateien der Bank mit Abrechnungsnummer und Service-ID nachfragen.

C086_PAGINATED Mehrseitige Lieferung

Große Gebührenabrechnungen teilt die Bank in Seiten (RptHdr/MsgPgntn). Diese Datei ist eine Seite davon. Summen je Währung und je Service-Code gelten erst, wenn alle Seiten zusammen geladen sind; EBICS liefert die Seiten meist gemeinsam in einem ZIP-Archiv.

Lösung: Alle Dateien derselben Lieferung oder das ZIP-Archiv auf einmal in den Viewer ziehen. Sind alle Seiten da, entfällt der Hinweis.

C086_PAGES_MISSING Seiten einer Lieferung fehlen

Mehrere Dateien mit derselben Berichtskennung (RptId) bilden eine Lieferung. Der Viewer prüft, ob die Seiten 1 bis n lückenlos vorliegen und die letzte Seite (LastPgInd true) dabei ist. Hier fehlt mindestens eine Seite, die Summen sind deshalb unvollständig.

Lösung: Die fehlende Seite aus dem EBICS-Archiv oder dem ZIP nachladen. Fehlt sie dort, bei der Bank mit RptId und Seitenzahl nachfragen.

C086_MULTIPLE_STATEMENTS Mehrere Abrechnungen in einer Datei

Eine camt.086 enthält oft mehrere Abrechnungen: eine je Konto und Zeitraum, dazu Einzelabrechnungen für Leistungen, die direkt mit dem Umsatz berechnet werden (etwa eine Auslandsüberweisung). Jede Abrechnung entspricht in der Regel einer Rechnung.

Lösung: Kein Handlungsbedarf. Der Viewer zeigt jede Abrechnung einzeln und summiert über alle; beim Verbuchen jede Abrechnungsnummer einmal verwenden.

C086_COMMON_CODE_ISSUER Service-Code mit unbekanntem Herausgeber

Banken ordnen ihre Services einem gemeinsamen Code zu (CmonCd). Üblich sind die AFP Global Service Codes mit dem Herausgeber AFPGBL (in manchen Dateien AFPGLB). Ein anderer Herausgeber ist erlaubt, der Code ist dann eine hauseigene Liste der Bank.

Lösung: Kein Handlungsbedarf für die Anzeige. Für einen Vergleich zwischen Banken die Bank nach der Bedeutung der Codes fragen.

C086_TEST_STATEMENT Abrechnung als Test gekennzeichnet

Der Status TEST kennzeichnet eine Abrechnung, die nur zum Testen der Anbindung dient. Die Beträge sind nicht berechnet worden und gehören nicht in die Buchhaltung.

Lösung: Die Abrechnung nicht verbuchen. Kommt TEST in der laufenden Lieferung vor, bei der Bank klären, ob die Anbindung noch im Testbetrieb steht.

C086_REPLACEMENT Ersatz einer früheren Abrechnung

Der Status RPLC heißt: Diese Abrechnung ersetzt eine früher gelieferte mit derselben Nummer, etwa nach einer Korrektur durch die Bank. Wer beide verbucht, zählt die Entgelte doppelt.

Lösung: Die frühere Fassung stornieren oder ignorieren und nur den Ersatz verbuchen.

BLLG_PERIOD_INVALID Abrechnungszeitraum verdreht

Der Zeitraum einer Abrechnung (FrToDt) beginnt nach seinem Ende. Das Schema prüft die Reihenfolge der Daten nicht, deshalb fällt der Fehler erst hier auf. Monatsabrechnungen laufen vom Ersten bis zum Letzten, Einzelabrechnungen tragen meist denselben Tag zweimal.

Lösung: Den Zeitraum mit der Bank klären, bevor die Entgelte einer Periode zugeordnet werden.

BLLG_SERVICE_AMOUNT Menge mal Stückpreis ergibt nicht den Betrag

Bei der Preismethode Stückpreis (UPRC) oder ohne Preismethode ist der Betrag eines Services Menge (Vol) mal Stückpreis (UnitPric). Der Viewer rechnet nach und meldet Abweichungen über einem Cent. Pauschalen und Grundpreise prüft er nicht, dort ist die Menge kein Faktor.

Lösung: Menge und Stückpreis mit den Konditionen vergleichen. Stimmt die Konditionsvereinbarung, die Abweichung mit Abrechnungsnummer und Service-ID bei der Bank reklamieren.

BLLG_TAX_RATE Steuerbetrag passt nicht zum Steuersatz

Je Service nennt die Bank Steuersatz und Steuerbetrag (TaxClctn/TaxId). Bei Methode D gilt der Satz auf den Betrag in Preiswährung, bei den Methoden A und B auf den Betrag in Landeswährung. Der Viewer akzeptiert den Satz als Bruch (0.19) oder als Prozent (19) und toleriert einen Cent Rundung.

Lösung: Prüfen, ob der Steuersatz zum Leistungszeitpunkt galt. Weicht der Betrag ab, die Abrechnung bei der Bank reklamieren; für den Vorsteuerabzug zählt die Rechnung der Bank.

BLLG_TAX_DESIGNATION Steuerbefreiter Service mit Steuer

Das Steuerkennzeichen (TaxDsgnt) sagt, ob ein Service steuerpflichtig (TAXE), steuerbefreit (XMPT) oder mit Nullsatz (ZERO) berechnet wird. Ein befreiter Service mit Steuerbetrag widerspricht sich; viele Bankleistungen sind nach § 4 Nr. 8 UStG steuerfrei, andere nicht.

Lösung: Bei der Bank klären, welche Angabe stimmt, bevor die Vorsteuer gebucht wird.

BLLG_COMPENSATION_MISMATCH Summenwert der Bank weicht von den Services ab

Die Bank nennt Summen je Abrechnung (Compstn): SCBT für die Entgelte vor Steuern, TXSC für die steuerpflichtigen Entgelte, TXTS für die Steuern und CTND für Entgelte und Steuern zusammen. Der Viewer rechnet sie aus den Services nach, je Währung; erlassene und kostenlose Services zählen nicht mit.

Lösung: Die Differenz mit der Liste der Services vergleichen: fehlt ein Service, ist einer doppelt oder erlassen? Bleibt die Abweichung, die Abrechnung mit beiden Zahlen bei der Bank reklamieren.

BLLG_TAX_REGION_MISMATCH Steuer der Steuerregion passt nicht

Neben der Steuer je Service nennt die Abrechnung je Steuerregion den fälligen Steuerbetrag (TaxRgn/TaxDueToRgn). Bei den Methoden A, B und D muss er der Summe der Service-Steuern in derselben Währung entsprechen.

Lösung: Die Service-Steuern addieren und mit dem Regionsbetrag vergleichen. Die Abweichung mit der Bank klären, bevor die Vorsteuer gebucht wird.

BLLG_TAX_BOTH Steuer je Service und je Steuerregion

Die Abrechnung trägt Steuern je Service (Methoden A, B oder D) und zusätzlich eine Steuerrechnung nach Methode C je Steuerregion. Beides zu addieren, hieße die Steuer doppelt zu zählen. Der Viewer nimmt die Steuer je Service und zeigt die Region nur an.

Lösung: Kein Handlungsbedarf, solange beide Angaben übereinstimmen. Beim Verbuchen nur eine der beiden Steuerangaben verwenden.

BLLG_CURRENCIES Entgelte in mehreren Währungen

Eine camt.086 kennt bis zu vier Währungsrollen: Kontowährung, Abrechnungswährung, Landeswährung für die Steuer und Preiswährung, dazu Umrechnungskurse (CcyXchg). Ein USD-Konto kann Entgelte mit Preisen in EUR tragen. Der Viewer rechnet nichts um und summiert je Währung.

Lösung: Kein Handlungsbedarf. Für die Buchhaltung den Betrag in Abrechnungswährung (OrgnlChrgSttlmAmt) nehmen; er ist der Betrag, den die Bank belastet hat.

BLLG_ADJUSTMENTS Korrekturen in der Abrechnung

Korrekturen stehen in eigenen Blöcken: Service-Korrekturen (SvcAdjstmnt) erstatten oder berechnen Entgelte früherer Perioden nach, Saldo-Korrekturen (BalAdjstmnt) berichtigen Salden, die für die Entgeltrechnung zählen. Der Viewer zeigt sie getrennt und rechnet sie nicht in die Service-Summen.

Lösung: Die Korrekturen einzeln prüfen und der Periode zuordnen, die sie betreffen; Beschreibung und Fehlerdatum nennen den Anlass.

BLLG_IBAN_INVALID IBAN mit falscher Prüfziffer

Die Prüfziffer einer IBAN (Stellen 3 und 4) folgt aus dem Rest nach dem Verfahren mod 97. Geprüft werden das abgerechnete Konto, das Belastungskonto und das Hauptkonto. In Beispieldateien der Banken sind die IBANs oft frei erfunden; in einer echten Lieferung deutet der Befund auf eine veränderte Datei.

Lösung: Die IBAN mit dem Konto vergleichen. Stammt die Datei unverändert von der Bank, dort mit Abrechnungsnummer nachfragen.

Schema-Prüfung (Stufe 2)

XSD_NAMESPACE Namensraum passt nicht zum Schema

Meldungen wie 'No matching global declaration available for the validation root' bedeuten, dass das Wurzelelement Document nicht im erwarteten Namensraum steht. Ursachen: eine andere camt-Version als die gewählte Prüfgrundlage, oder die Datei bindet den Namensraum nur an ein Präfix (xmlns:n0=...) und schreibt die Elemente ohne Präfix; so liefern es einzelne Banken.

Lösung: Die Prüfgrundlage passend zur Version wählen (der Validator erkennt sie am Namensraum). Beim Präfix-Fall ist die Datei formal kein gültiges camt; die Bank darauf hinweisen, die Darstellung im Viewer funktioniert trotzdem.

XSD_ELEMENT Element unerwartet oder an falscher Stelle

Meldungen wie 'This element is not expected. Expected is ( ... )' zeigen ein Element, das an dieser Stelle nicht stehen darf, oder ein fehlendes Pflichtelement davor. Häufigste Ursachen: Elemente aus .02 in einer .08-Datei (etwa BIC statt BICFI, Sts als Text statt Sts/Cd) oder eine Software, die die Reihenfolge des Schemas nicht einhält.

Lösung: Die Meldung nennt das erwartete Element; die Zeile zeigt die Stelle. Stammt die Datei von der Bank, dort mit Zeilenangabe nachfragen; stammt sie aus einer Konvertierung, die Elementreihenfolge des XSD einhalten.

XSD_PATTERN Wert verletzt das Muster

Meldungen mit '[facet pattern]' betreffen Felder mit festem Muster: IBAN (zwei Buchstaben, zwei Ziffern, dann bis zu 30 Zeichen), BIC (8 oder 11 Zeichen), Währungscodes (drei Großbuchstaben), Nachrichten- und Referenzkennungen. Leerzeichen in einer IBAN oder ein Kleinbuchstabe im BIC reichen für den Verstoß.

Lösung: Den genannten Wert in der Zeile ansehen. In Dateien der Bank ist das selten; nach einer Konvertierung oder Nachbearbeitung Leerzeichen und Groß- und Kleinschreibung prüfen.

XSD_MAXLENGTH Text zu lang

Meldungen mit '[facet maxLength]' betreffen Textfelder mit Längengrenze: Namen bis 140 Zeichen, Verwendungszweck (Ustrd) bis 140 Zeichen je Element, Kennungen (MsgId, Id, AcctSvcrRef, EndToEndId) bis 35 Zeichen. Konvertierte Dateien hängen Verwendungszwecke manchmal zu einer Zeile zusammen.

Lösung: Den Wert kürzen oder auf mehrere Ustrd-Elemente verteilen, wenn die Datei selbst erzeugt wurde. Bei Dateien der Bank den Befund mit Zeilenangabe an die Bank geben.

XSD_ENUM Code außerhalb der erlaubten Liste

Meldungen mit '[facet enumeration]' betreffen Codes mit fester Liste im Schema. In der Version .02 sind das die Saldoart (OPBD, CLBD, ITBD, PRCD, CLAV, FWAV, XPCD, INFO), der Buchungsstatus (BOOK, PDNG, INFO) und die Richtung (CRDT, DBIT). In .08 sind Saldoart und Status externe Codelisten, dort meldet das Schema sie nicht.

Lösung: Den Code in der Zeile prüfen. Ein hausinterner Code der Bank gehört in das Prtry-Element statt in Cd; Dateien der Bank mit Zeilenangabe reklamieren.

XSD_DATATYPE Betrag oder Datum im falschen Format

Meldungen wie 'is not a valid value of the atomic type' betreffen Beträge (Punkt als Dezimaltrenner, höchstens fünf Nachkommastellen, keine Tausenderpunkte), Daten (YYYY-MM-DD), Zeitstempel (YYYY-MM-DDThh:mm:ss mit optionaler Zeitzone) und Wahrheitswerte (true oder false). Ein Komma im Betrag oder ein deutsches Datum reicht für den Verstoß.

Lösung: In selbst erzeugten oder konvertierten Dateien das Format umstellen. Dateien der Bank mit Zeilenangabe reklamieren; der Viewer zeigt die Werte trotzdem, soweit sie lesbar sind.

Kontoauszug zur Hand? Der camt-Viewer zeigt die Datei kostenlos im Browser und rechnet die Salden nach, der camt-Validator prüft sie auf Wunsch gegen die ISO-Originalschemas. Zahlungen aus dem eigenen Zahllauf lassen sich in finisma Zahlungen erzeugen.