Aller au contenu

Ironfang Finance - Référence des règles

UBL-CR-682 : Déplacer l'adresse de livraison dans DeliveryLocation

Un avertissement : cac:Delivery/cac:DeliveryAddress sort du modèle de facture. Écrivez l'adresse de livraison sous la forme de cac:Delivery/cac:DeliveryLocation/cac:Address.

EN 16931Avertissement : le document reste valideParties et adresses

Sur cette page

La réponse courte

UBL-CR-682 avertit lorsque cac:Delivery contient un cac:DeliveryAddress. L'élément existe en UBL mais n'a pas de place dans le modèle EN 16931. Déplacez l'adresse dans cac:Delivery/cac:DeliveryLocation/cac:Address, où l'adresse de livraison a sa place.

C'est un avertissement, et le document reste valide avec lui. L'adresse qu'il contient n'est toutefois pas traitée comme l'adresse de livraison par les règles qui en contrôlent une.

Ce que la règle vérifie

Le contrôle a lieu une fois par document, sur la racine : il cherche un enfant cac:DeliveryAddress de cac:Delivery. Son contenu n'importe pas ; tout élément de ce type déclenche l'avertissement.

La gravité est avertissement : la règle ne rend donc jamais un document non valide à elle seule. La facture enregistrée avec l'avertissement a pour résultat valide, avec ce seul constat.

Les règles sur l'adresse de livraison ne regardent que dans cac:DeliveryLocation/cac:Address. Lors d'un essai, un cac:DeliveryAddress sans aucun pays a passé BR-57, et une facture intracommunautaire dont le pays de livraison figurait seulement dans cac:DeliveryAddress a échoué à BR-IC-12.

Les contrôles qui s'appliquent à toute adresse y regardent tout de même : lors d'un essai, UK comme code pays y a été signalé par BR-CL-14.

TermeSignificationÉlément UBL
BG-15Adresse de livraisoncac:Delivery/cac:DeliveryLocation/cac:Address
-Adresse de livraison hors du modèle (l'élément que cette règle signale)cac:Delivery/cac:DeliveryAddress

Comment une intégration en arrive là

Causes possibles, déduites de la forme de la règle et non d'une utilisation mesurée :

  • L'UBL a été produit à partir d'un modèle ou d'une bibliothèque de classes UBL 2.1 générique, où cac:DeliveryAddress est le champ évident pour une adresse de livraison.
  • La facture est convertie à partir d'une commande ou d'un avis d'expédition qui porte l'adresse de livraison directement sous la livraison.
  • Le schéma UBL accepte les deux chemins : le mapping semblait donc correct jusqu'à ce qu'il soit contrôlé par rapport à la correspondance syntaxique EN 16931.

Comment corriger le document

  1. Remplacez cac:DeliveryAddress par cac:DeliveryLocation contenant cac:Address, et déplacez-y les éléments d'adresse sans les modifier.
  2. Respectez l'ordre UBL dans cac:Delivery : d'abord cbc:ActualDeliveryDate, puis cac:DeliveryLocation, puis cac:DeliveryParty s'il est utilisé. Lors d'un essai, cac:DeliveryLocation placé avant la date a échoué à l'étape XSD.
  3. Assurez-vous que l'adresse déplacée a un cac:Country/cbc:IdentificationCode. Une fois l'adresse dans cac:DeliveryLocation, BR-57 l'exige.
  4. Si le point de livraison a un identifiant, comme un GLN, il va dans cac:DeliveryLocation/cbc:ID, avant cac:Address.

Valider votre facture corrigée

Avant et après

Ce sont des extraits, pas des documents complets. Les documents synthétiques complets dont ils proviennent sont liés ci-dessous.

Fragment de la facture avec l'avertissement : l'adresse se trouve dans DeliveryAddress, et la facture reste valide

<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>

Fragment de la facture corrigée : la même adresse dans 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>

La facture corrigée enveloppe la même rue et le même pays dans cac:DeliveryLocation/cac:Address ; l'autre les écrit dans cac:DeliveryAddress. Ce document a pour résultat valide et ne signale que UBL-CR-682, un avertissement. Déplacer l'adresse supprime l'avertissement et place l'adresse là où BR-57 et les autres règles sur l'adresse de livraison la cherchent.

Ce que le validateur a signalé

Enregistré avec phive 12.1.0 / phive-rules-peppol 4.5.6 / Saxon-HE 12.10, le moteur du validateur gratuit, sur des données synthétiques. Un résultat enregistré est une preuve de non-régression pour ces documents ; ce n'est pas une certification.

Où la règle s'applique

  • Les avoirs reçoivent le même avertissement. Lors d'un essai, un avoir avec cac:DeliveryAddress était valide, avec UBL-CR-682 pour seul constat.
  • Signalé à l'étape EN 16931, qui signale comme avertissements les éléments UBL hors du modèle. Des avertissements voisins couvrent d'autres éléments inutilisés, comme UBL-CR-378 pour un nom de pays dans l'adresse de livraison.
  • L'avertissement porte sur l'endroit où l'adresse est écrite, pas sur la livraison elle-même. Un cac:Delivery avec seulement cbc:ActualDeliveryDate ne déclenche aucun avertissement.

Portée et source

Rédigé pour Peppol BIS Billing 3.0.21 (May 2026), EN 16931 1.3.16, tel qu'appliqué aux documents Invoice et CreditNote en UBL 2.1. D'autres profils, syntaxes et versions peuvent définir cet identifiant autrement. Version du catalogue d'aide 2026-09-24.1 : source vérifiée le 2026-09-24, explication mise à jour le 2026-09-24.

La définition officielle de UBL-CR-682 (en anglais) contient le texte normatif et le test. Cette page en est notre explication, pas une copie.

Cette aide ne modifie pas le verdict du moteur. Corriger ce constat ne signifie pas que le document passe toutes les étapes de validation, et la validation ne certifie pas la conformité juridique ou fiscale et ne transmet aucun document via Peppol.