Zum Inhalt springen

Ironfang Finance - Regelreferenz

UBL-CR-682: Die Lieferanschrift nach DeliveryLocation verschieben

Eine Warnung: cac:Delivery/cac:DeliveryAddress liegt außerhalb des Rechnungsmodells. Schreiben Sie die Lieferanschrift als cac:Delivery/cac:DeliveryLocation/cac:Address.

EN 16931Warnung: Das Dokument bleibt gültigBeteiligte und Adressen

Auf dieser Seite

Die kurze Antwort

UBL-CR-682 warnt, wenn cac:Delivery ein cac:DeliveryAddress enthält. Das Element gibt es in UBL, im Modell von EN 16931 hat es aber keinen Platz. Verschieben Sie die Anschrift nach cac:Delivery/cac:DeliveryLocation/cac:Address, wo die Lieferanschrift hingehört.

Dies ist eine Warnung, und das Dokument bleibt damit gültig. Die darin enthaltene Anschrift wird von den Regeln, die eine Lieferanschrift prüfen, allerdings nicht als Lieferanschrift behandelt.

Was die Regel prüft

Die Prüfung erfolgt einmal pro Dokument, am Wurzelelement: Sie sucht ein Kindelement cac:DeliveryAddress von cac:Delivery. Sein Inhalt spielt keine Rolle; jedes solche Element löst die Warnung aus.

Der Schweregrad ist Warnung, daher macht die Regel ein Dokument für sich allein nie ungültig. Die aufgezeichnete Rechnung mit der Warnung ist im Ergebnis gültig, mit dieser Warnung als einzigem Befund.

Regeln zur Lieferanschrift suchen nur in cac:DeliveryLocation/cac:Address. Im Versuch bestand ein cac:DeliveryAddress ganz ohne Land BR-57, und eine innergemeinschaftliche Rechnung, deren Lieferland nur in cac:DeliveryAddress stand, schlug bei BR-IC-12 fehl.

Prüfungen, die für jede Anschrift gelten, greifen trotzdem hinein: Im Versuch wurde UK als Ländercode darin von BR-CL-14 gemeldet.

BegriffBedeutungUBL-Element
BG-15Lieferanschriftcac:Delivery/cac:DeliveryLocation/cac:Address
-Lieferadresse außerhalb des Modells (das Element, das diese Regel meldet)cac:Delivery/cac:DeliveryAddress

Wie es in einer Integration dazu kommt

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

  • Das UBL wurde aus einer generischen Vorlage oder Klassenbibliothek für UBL 2.1 erzeugt, in der cac:DeliveryAddress das naheliegende Feld für eine Lieferadresse ist.
  • Die Rechnung wird aus einem Auftrags- oder Lieferdokument umgewandelt, das die Lieferanschrift direkt unter der Lieferung führt.
  • Das UBL-Schema akzeptiert beide Pfade, daher sah das Mapping korrekt aus, bis es gegen die Syntaxbindung von EN 16931 geprüft wurde.

So korrigieren Sie das Dokument

  1. Ersetzen Sie cac:DeliveryAddress durch cac:DeliveryLocation mit cac:Address darin, und übernehmen Sie die Adresselemente unverändert.
  2. Halten Sie die UBL-Reihenfolge innerhalb von cac:Delivery ein: zuerst cbc:ActualDeliveryDate, dann cac:DeliveryLocation, dann cac:DeliveryParty, falls verwendet. Im Versuch scheiterte cac:DeliveryLocation vor dem Datum am XSD-Prüfschritt.
  3. Stellen Sie sicher, dass die verschobene Anschrift cac:Country/cbc:IdentificationCode hat. Sobald sie in cac:DeliveryLocation steht, verlangt BR-57 diesen Code.
  4. Hat der Lieferort eine Kennung, etwa eine GLN, gehört sie in cac:DeliveryLocation/cbc:ID, vor cac:Address.

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 Rechnung mit der Warnung: Die Anschrift steht in DeliveryAddress, und die Rechnung ist weiterhin gültig

<cac:Delivery>
  <cbc:ActualDeliveryDate>2026-09-07</cbc:ActualDeliveryDate>
  <cac:DeliveryAddress>
    <cbc:StreetName>3 Delivery Street</cbc:StreetName>
    <cac:Country>
      <cbc:IdentificationCode>GB</cbc:IdentificationCode>
    </cac:Country>
  </cac:DeliveryAddress>
</cac:Delivery>

Ausschnitt der korrigierten Rechnung: dieselbe Anschrift innerhalb von DeliveryLocation

<cac:Delivery>
  <cbc:ActualDeliveryDate>2026-09-07</cbc:ActualDeliveryDate>
  <cac:DeliveryLocation>
    <cac:Address>
      <cbc:StreetName>3 Delivery Street</cbc:StreetName>
      <cac:Country>
        <cbc:IdentificationCode>GB</cbc:IdentificationCode>
      </cac:Country>
    </cac:Address>
  </cac:DeliveryLocation>
</cac:Delivery>

Die korrigierte Rechnung fasst dieselbe Straße und dasselbe Land in cac:DeliveryLocation/cac:Address; die andere schreibt sie in cac:DeliveryAddress. Dieses Dokument ist im Ergebnis gültig und meldet nur UBL-CR-682, eine Warnung. Das Verschieben der Anschrift beseitigt die Warnung und legt die Anschrift dorthin, wo BR-57 und die übrigen Regeln zur Lieferanschrift sie suchen.

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

  • Gutschriften erhalten dieselbe Warnung. Im Versuch war eine Gutschrift mit cac:DeliveryAddress gültig, mit UBL-CR-682 als einzigem Befund.
  • Gemeldet im Prüfschritt EN 16931, der UBL-Elemente außerhalb des Modells als Warnungen meldet. Benachbarte Warnungen decken andere ungenutzte Elemente ab, etwa UBL-CR-378 für einen Ländernamen in der Lieferanschrift.
  • Die Warnung betrifft die Stelle, an der die Anschrift geschrieben ist, nicht die Lieferung selbst. Ein cac:Delivery nur mit cbc:ActualDeliveryDate löst keine Warnung aus.

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 UBL-CR-682 (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.