Zum Inhalt springen

Ironfang Finance - Regelreferenz

BR-CL-24: Einen zulässigen MIME-Code für eingebettete Anhänge verwenden

Der mimeCode eines eingebetteten Anhangs muss einer von sechs Werten sein: PDF, PNG, JPEG, CSV, Excel xlsx oder OpenDocument-Tabelle. Alles andere schlägt fehl.

EN 16931Fehler: Das Dokument ist ungültigCodelistenProzess und Referenzen

Auf dieser Seite

Die kurze Antwort

BR-CL-24 schlägt fehl, wenn das Attribut mimeCode eines cbc:EmbeddedDocumentBinaryObject nicht einer der sechs zulässigen Werte ist. Setzen Sie es auf den tatsächlichen Typ der Datei, der application/pdf, image/png, image/jpeg, text/csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet oder application/vnd.oasis.opendocument.spreadsheet sein muss.

Eine Datei in einem anderen Format kann nicht unverändert eingebettet werden. Wandeln Sie sie zuerst in eines dieser Formate um, bei einem Dokument in PDF, und passen Sie den Dateinamen entsprechend an.

Was die Regel prüft

Die Regel liest das Attribut mimeCode jedes eingebetteten Anhangs und vergleicht es als exakte Zeichenkette mit den sechs zulässigen Werten. Nichts wird in Kleinbuchstaben umgewandelt oder gekürzt: Im Versuch schlugen application/PDF und application/pdf mit nachgestelltem Leerzeichen beide fehl.

Knappe Abweichungen schlagen ebenfalls fehl. Im Versuch wurden image/jpg, application/xml und text/csv; charset=utf-8 jeweils abgelehnt; der Wert für JPEG ist image/jpeg, und ein Parameter nach dem Typ macht daraus eine andere Zeichenkette.

Beurteilt wird nur das Attribut. Die Regel dekodiert den Base64-Inhalt nicht und kann daher nicht erkennen, ob die Datei wirklich den Typ hat, den der Code angibt.

Ein Anhang ohne mimeCode schlägt am XSD-Prüfschritt fehl, da UBL das Attribut an einem Binärobjekt verlangt. Ein Dokument, das über cac:ExternalReference/cbc:URI verlinkt statt eingebettet ist, hat keinen MIME-Code und wird nicht geprüft; im Versuch bestand es.

BegriffBedeutungUBL-Element
BT-125Angehängtes Dokumentcac:AdditionalDocumentReference/cac:Attachment/cbc:EmbeddedDocumentBinaryObject
BT-125-1MIME-Code des angehängten Dokumentscac:AdditionalDocumentReference/cac:Attachment/cbc:EmbeddedDocumentBinaryObject/@mimeCode
BT-125-2Dateiname des angehängten Dokumentscac:AdditionalDocumentReference/cac:Attachment/cbc:EmbeddedDocumentBinaryObject/@filename

Wie es in einer Integration dazu kommt

Mögliche Ursachen, abgeleitet aus der Form der Regel und nicht aus gemessener Nutzung:

  • Der Typ stammt aus einer Inhaltserkennung, die auf application/octet-stream zurückfällt, wenn sie die Datei nicht erkennt, wie im aufgezeichneten Beispiel.
  • Eine Zuordnung nach Dateiendung liefert image/jpg für Dateien mit .jpg oder application/vnd.ms-excel für Dateien mit .csv.
  • Die Dokumentenablage enthält die ursprüngliche Word-, XML- oder ZIP-Datei und bettet sie ohne Umwandlung ein.
  • Der Inhaltstyp wird aus einem Upload-Formular oder einem HTTP-Header übernommen, der einen Parameter anhängt, etwa text/csv; charset=utf-8.

So korrigieren Sie das Dokument

  1. Ermitteln Sie das tatsächliche Format jeder angehängten Datei.
  2. Ist es PDF, PNG, JPEG, CSV, xlsx oder ods, setzen Sie mimeCode auf den exakten Wert für dieses Format, in Kleinbuchstaben, ohne Parameter und ohne Leerzeichen.
  3. Ist es etwas anderes, wandeln Sie die Datei vor dem Einbetten in eines dieser Formate um, und passen Sie die Endung in filename entsprechend an.
  4. Ordnen Sie Formate über eine feste Tabelle der sechs Werte zu statt über eine allgemeine MIME-Bibliothek, damit eine nicht unterstützte Datei den Export stoppt, statt als application/octet-stream gekennzeichnet zu werden.

Korrigierte Rechnung prüfen

Vorher und nachher

Dies sind Ausschnitte, keine vollständigen Dokumente. Die vollständigen synthetischen Dokumente, aus denen sie stammen, sind unten verlinkt.

Ausschnitt der fehlerhaften Rechnung: ein Stundenzettel als PDF, angegeben als application/octet-stream

<cac:AdditionalDocumentReference>
  <cbc:ID>TIMESHEET-001</cbc:ID>
  <cbc:DocumentDescription>Timesheet</cbc:DocumentDescription>
  <cac:Attachment>
    <cbc:EmbeddedDocumentBinaryObject mimeCode="application/octet-stream" filename="timesheet.pdf">JVBERi0xLjQK</cbc:EmbeddedDocumentBinaryObject>
  </cac:Attachment>
</cac:AdditionalDocumentReference>

Ausschnitt der korrigierten Rechnung: dieselbe Datei, angegeben als application/pdf

<cac:AdditionalDocumentReference>
  <cbc:ID>TIMESHEET-001</cbc:ID>
  <cbc:DocumentDescription>Timesheet</cbc:DocumentDescription>
  <cac:Attachment>
    <cbc:EmbeddedDocumentBinaryObject mimeCode="application/pdf" filename="timesheet.pdf">JVBERi0xLjQK</cbc:EmbeddedDocumentBinaryObject>
  </cac:Attachment>
</cac:AdditionalDocumentReference>

Nur das Attribut mimeCode unterscheidet sich: application/octet-stream in der fehlerhaften Rechnung, application/pdf in der korrigierten, bei gleichem Inhalt und gleichem Dateinamen. Das fehlerhafte Dokument meldet außerdem PEPPOL-EN16931-CL001, weil der Peppol-Prüfschritt diese Prüfung gegen dieselben sechs Werte wiederholt; die eine Korrektur behebt daher beide Befunde.

Was der Validator gemeldet hat

Aufgezeichnet mit phive 12.1.0 / phive-rules-peppol 4.5.6 / Saxon-HE 12.10, der Engine hinter dem kostenlosen Validator, mit synthetischen Daten. Ein aufgezeichnetes Ergebnis ist ein Regressionsnachweis für diese Dokumente, keine Zertifizierung.

Wo die Regel gilt

  • Gilt für Invoice und CreditNote; im Versuch meldete ein als application/octet-stream angegebener Anhang einer Gutschrift beide Regeln.
  • Dieselbe Liste wird zweimal geprüft: BR-CL-24 im Prüfschritt EN 16931 und PEPPOL-EN16931-CL001 im Peppol-Prüfschritt. Rechnen Sie mit beiden Befunden zusammen.
  • Das Attribut filename wird gesondert geprüft: Im Versuch meldete sein Fehlen UBL-DT-07.
  • Ein Anhangselement mit zulässigem MIME-Code, aber ohne Inhalt wird von PEPPOL-EN16931-R008 gemeldet, nicht von dieser Regel.

Umfang und Quelle

Geschrieben für Peppol BIS Billing 3.0.21 (May 2026), EN 16931 1.3.16, angewendet auf Invoice- und CreditNote-Dokumente in UBL 2.1. Andere Profile, Syntaxen und Releases können diese Kennung anders definieren. Version des Hinweiskatalogs 2026-09-24.1: Quelle geprüft am 2026-09-24, Erklärung zuletzt aktualisiert am 2026-09-24.

Die offizielle Definition von BR-CL-24 (auf Englisch) enthält den normativen Wortlaut und den Test. Diese Seite ist unsere Erklärung dazu, keine Kopie.

Die Erklärung ändert das Urteil der Engine nicht. Dass Sie diesen Befund beheben, heißt nicht, dass das Dokument jeden Prüfschritt besteht. Die Validierung bescheinigt keine rechtliche oder steuerliche Konformität und überträgt kein Dokument über Peppol.