Sur cette page
La réponse courte
BR-61 échoue lorsqu'un cac:PaymentMeans a le code 30 (virement) ou 58 (virement SEPA) et ne contient pas de cac:PayeeFinancialAccount/cbc:ID. Ajoutez à ce moyen de paiement un cac:PayeeFinancialAccount avec le numéro de compte du vendeur, par exemple un IBAN, dans cbc:ID.
Si l'élément de compte est déjà présent et que seul son cbc:ID manque, BR-50 est également signalé. Si c'est le code lui-même qui est faux et que l'acheteur ne paiera pas par virement, changez le code au lieu d'ajouter un compte.
Ce que la règle vérifie
La règle s'exécute sur chaque cac:PaymentMeans. Une fois les espaces autour de cbc:PaymentMeansCode retirés, un code 30 ou 58 exige que le chemin cac:PayeeFinancialAccount/cbc:ID existe ; tout autre code passe.
Seule l'existence est contrôlée. Lors d'un essai, un cbc:ID de compte vide ou ne contenant que des espaces a satisfait cette règle, puis a été signalé par BR-50 et PEPPOL-EN16931-R008.
Un numéro de compte placé ailleurs ne compte pas. Lors d'un essai, avec le compte supprimé et une valeur ayant la forme d'un IBAN dans cbc:PaymentID, la règle a quand même échoué.
Les codes concernés sont exactement 30 et 58. Lors d'un essai, le code 42 (paiement sur compte bancaire) et le code 31 (transfert de débit) ont tous deux passé sans aucun compte.
Les deux règles se répartissent les cas ainsi : sans élément de compte, BR-61 seul, comme dans l'exemple enregistré ; un élément de compte sans cbc:ID donne BR-61 et BR-50 ; un cbc:ID vide donne BR-50 et PEPPOL-EN16931-R008.
| Terme | Signification | Élément UBL |
|---|---|---|
| BT-81 | Code de type de moyen de paiement | cac:PaymentMeans/cbc:PaymentMeansCode |
| BT-84 | Identifiant du compte de paiement | cac:PaymentMeans/cac:PayeeFinancialAccount/cbc:ID |
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 :
- Le virement est défini comme moyen de paiement pour toutes les factures, mais les coordonnées bancaires ne sont écrites que si un paramètre est activé pour l'entité du vendeur.
- Le vendeur tient des comptes par devise et aucun n'est configuré pour la devise de la facture, si bien que le bloc de compte est omis.
- Le numéro de compte est écrit uniquement dans la référence de paiement
cbc:PaymentIDou dans une note en texte libre. - La facture sera payée par carte ou par prélèvement, mais le code de moyen de paiement est codé en dur à
30.
Comment corriger le document
- Déterminez comment l'acheteur va payer. Pour un virement sur le compte du vendeur, gardez
30, ou58pour un virement SEPA ; pour tout autre moyen, utilisez le code de ce moyen et arrêtez-vous là. - Prenez le numéro de compte dans les coordonnées bancaires du vendeur pour cette entité et cette devise, jamais dans les données de l'acheteur.
- Ajoutez
cac:PayeeFinancialAccountdans lecac:PaymentMeans, aprèscbc:PaymentIDcomme dans la facture corrigée, avec le numéro de compte comme premier enfantcbc:ID. - Ajoutez le nom du compte dans
cbc:Nameet l'identifiant de la banque, par exemple un BIC, danscac:FinancialInstitutionBranch/cbc:IDsi vous les avez. Lors d'un essai, un compte ne contenant que soncbc:IDa passé toutes les étapes.
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 en échec : un virement avec une référence de paiement et sans compte du bénéficiaire
<cac:PaymentMeans>
<cbc:PaymentMeansCode>30</cbc:PaymentMeansCode>
<cbc:PaymentID>PAYMENT-001</cbc:PaymentID>
</cac:PaymentMeans>
<cac:PaymentTerms>
<cbc:Note>Payment within 30 days</cbc:Note>
</cac:PaymentTerms>Fragment de la facture corrigée : le compte du bénéficiaire suit la référence de paiement
<cac:PaymentMeans>
<cbc:PaymentMeansCode>30</cbc:PaymentMeansCode>
<cbc:PaymentID>PAYMENT-001</cbc:PaymentID>
<cac:PayeeFinancialAccount>
<cbc:ID>EXAMPLE-ACCOUNT-001</cbc:ID>
<cbc:Name>Example Supplier Ltd</cbc:Name>
<cac:FinancialInstitutionBranch>
<cbc:ID>EXAMPLE-BRANCH</cbc:ID>
</cac:FinancialInstitutionBranch>
</cac:PayeeFinancialAccount>
</cac:PaymentMeans>
<cac:PaymentTerms>
<cbc:Note>Payment within 30 days</cbc:Note>
</cac:PaymentTerms>La facture en échec a un moyen de paiement de code 30 avec une référence de paiement et rien d'autre ; la facture corrigée ajoute le cac:PayeeFinancialAccount complet avec identifiant, nom et agence. Le document en échec ne signale que BR-61. BR-50 reste muet, car il n'y a pas d'élément de compte à inspecter.
Ce que le validateur a signalé
- La facture en erreur signale BR-61. Le document corrigé passe toutes les étapes de validation sans constat.Télécharger le XML en erreurTélécharger le XML corrigé
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
- S'applique aussi bien à UBL
Invoicequ'àCreditNote; lors d'un essai, un avoir avec le code30et sans compte a signalé cette règle. - C'est une règle EN 16931, et l'étape Peppol passe dans l'exemple enregistré.
- Chaque moyen de paiement est contrôlé séparément. Lors d'un essai, un second
cac:PaymentMeansavec le code30et sans compte a été signalé àcac:PaymentMeans[2]. Si le second avait utilisé un autre code,UBL-SR-47apparaîtrait aussi, car tous les codes de moyen de paiement d'un document doivent être identiques. - Un code de moyen de paiement hors de la liste, comme
BACS, est signalé parBR-CL-16et échappe à cette règle même sans compte ; corriger ce code en30peut donc faire apparaître ce constat.
Règles liées
- BR-50 contrôle l'identifiant dans un élément de compte déjà présent, et se déclenche avec cette règle lorsqu'il manque
- BR-CL-16 vérifie que le code de moyen de paiement provient de UNTDID 4461
- PEPPOL-EN16931-R061 est l'équivalent pour le prélèvement et exige une référence de mandat pour les codes 49 et 59
- NL-R-007 impose aux fournisseurs néerlandais d'indiquer un moyen de paiement dès que l'acheteur a quelque chose à payer
- Parcourir toutes les règles de la référence
- Contexte (en anglais) : Understanding EN 16931 validation errors
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 BR-61 (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.

