BMF-RKSV-Technik / at-registrierkassen-mustercode

111 stars 39 forks source link

BMF App - Fehler bei Belegprüfung... #175

Closed riko2016 closed 7 years ago

riko2016 commented 7 years ago

Die Belegprüfung mit der BMF-App weist folgenden Fehler auf:

Der vorliegende Beleg kann nicht geprüft werden, da er von einer nicht zu Ihrem Unternehmen registrierten Registrierkasse ausgestellt wurde oder die Registrierung über FinanzOnline unvollständig ist bzw. mit den Daten im maschinenlesbaren Code differiert. Bundesministerium für Finanzen.

Bezeichnung: Überprüfung ob angemeldetes Unternehmen mit Unternehmen des Belegs übereinstimmt

Beschreibung: Es wird überprüft ob das angemeldete Unternehmen mit dem Unternehmen, das den Beleg ausgestellt hat, übereinstimmt. Das Ergebnis sagt aus ob das angemeldete Unternehmen berechtigt ist den vorliegenden Beleg zu prüfen.

Ich Kann jedoch keine unterschiede im Code zu den gemeldeten Daten im Finanz-Online finden. Name der Registrierkasse sowie Seriennummer der Signaturkarte stimmen überein:

_R1-AT100_BLSDEMO1_5_2016-11-22T15:05:24_0,00_0,00_0,00_0,00_0,00_QJ8HZaoR+ptNKJ/fxkGvLg==_3C5F4661_eGrakuGAZOw=_k8bQ8UNiOwxXVMfFt3a64Mom+Yk2nNNbf5lD3PVy9qJEg5ZAbQ2S37+YKbvoe9yz Nu6cuPZz9/1O3CVzPwSnuA==

Kann jemand weiterhelfen?

ErichFreitag commented 7 years ago

AT100 ist für geschlossene Gesamtsysteme, hier gehört der Zertifikatsprovider eingetragen (AT1, AT2, ...)

riko2016 commented 7 years ago

Ok..übersehen... Danke!

riko2016 commented 7 years ago

Nach Korrektur auf AT1

_R1-AT1_BLSDEMO1_5_2016-11-23T13:03:36_0,00_0,00_0,00_0,00_0,00_QJ8HZaoR+ptNKJ/fxkGvLg==_3C5F4661_eGrakuGAZOw=_RzGp112RDQb9VZDQSJLFkq75R69cNI3ymVaQALyTkWf9IWPX+AStQxOKT3O9nzq2 Rgv8X2g2BmnDzMkrT6KE+A==

bekomme ich jetzt folgende Fehlermeldung. Das Prüftool V1.0 scheint aber damit kein Problem zu haben (letzte Meldung Bezeichnung: Formatprüfung: Gültige BASE64-Zeichen):

Bezeichnung: Prüfergebnis - Kasse

Beschreibung: Bei der Belegprüfung wird untersucht, ob die Vorgaben der RKSV in Bezug auf den maschinenlesbaren Code am Beleg und auf die meldepflichtigen Metadaten der Sicherheitseinrichtung befolgt werden. Im Fehlerfall sind die genauen Fehlerinformationen nachfolgend angeführt.

Meldung: Der vorliegende Beleg weist Fehler im maschinenlesbaren Code auf. Am besten, Sie übermitteln zur Problembehandlung die nachfolgende Fehlerbeschreibung an Ihren Kassenhersteller.

Bezeichnung: Detailprüfung des maschinenlesbaren Codes

Beschreibung: Dieses Modul und die dazugehörigen Submodule überprüfen die Gültigkeit des Belegs. Dabei werden sowohl Formatprüfungen, kryptographische Prüfungen (verschlüsselter Umsatzzähler, Signatur) als auch Prüfungen im Zusammenhang mit dem Status der Kasse bzw. der Signatur-/Siegelerstellungseinheit durchgeführt.

Bezeichnung: Detailformatprüfung des maschinenlesbaren Codes

Beschreibung: Dieses Modul und die dazugehörigen Submodule überprüfen die Korrektheit des Formats der Elemente des maschinenlesbaren Codes.

Bezeichnung: Formatprüfung: Signaturwert

Beschreibung: In diesem Modul und den dazugehörigen Submodulen werden unterschiedliche Prüfungen im Zusammenhang mit der BASE64-Kodierung (gültige Zeichen, Länge) des Signaturwerts durchgeführt.

Bezeichnung: Formatprüfung: BASE64 Dekodierung/Kodierung

Beschreibung: In diesem Modul wird überprüft ob die Dekodierung eines BASE64-Werts und die anschließende Kodierung wieder den Ausgangswert ergibt.

Bezeichnung: Formatprüfung: Gültige BASE64-Zeichen

Beschreibung: Es wird in diesem Modul überprüft ob die gegebene Zeichenkette nur Zeichen beinhaltet die für die BASE64-Kodierung verwendet werden dürfen.

asitplus-pteufl commented 7 years ago

haben sie newlines in der base64-kodierung? der fehler sagt aus dass die BASE64-Kodierung des letzten Elements des Belegs (der Signaturwert) ungültig ist. die gleiche prüfung wird im Prüftool verwendet. Kann es sein, dass beim Erstellen des QR-Codes noch etwas falsch läuft und da z.B. Newlines oder andere nicht sichtbare Zeichen eingefügt werden?

asitplus-pteufl commented 7 years ago

@ErichFreitag kleine Korrektur: AT100 ist ein fiktiver ZDA der im Muster-Code verwendet wird. Ein Geschlossenes Gesamtsystem hat immer AT0. Ändert natürlich nichts daran, dass dort der Fehler war.

ErichFreitag commented 7 years ago

Hab ich eh gemeint - danke, Herr Teufl! :-)

riko2016 commented 7 years ago

Sie haben damit Recht, sieht man auch schön bei meinem Code...genau nach dem "...nzq2" ist ein Zeilenumbruch... Ich muss mal sehen wieso Oracle das bei den utl_encode Funktionen macht ... Danke!