# BR-DE-31 Le prélèvement requiert l’identifiant du compte débité

Conformément à la règle BR-DE-31 du profil allemand XRechnung, l’identifiant du compte débité dans BT-91 (IBAN du débiteur) est obligatoire dès que la facture contient le groupe de prélèvement BG-19, pour le code moyen de paiement 49 comme pour le code 59. BG-19 est présent lorsque la facture contient des données de prélèvement : en UBL un cac:PaymentMandate (par exemple la seule référence de mandat BT-89), en CII l’un des éléments BT-89, BT-90 ou BT-91. Le code moyen de paiement seul ne déclenche ni ne supprime la règle. Le réseau bancaire SEPA ne peut exécuter le prélèvement sans identifier le compte autorisé par le mandat signé.

## Description du problème

> **ERREUR**: Règle nationale allemande XRechnung (KoSIT, BR-DE) · XRechnung 3.0

> **Où BR-DE-31 est contrôlée**
>
> Un validateur contrôle une facture électronique par étapes. D’abord, le fichier doit être un XML bien formé conforme au schéma UBL ou CII (XSD). Viennent ensuite les règles métier de l’EN 16931 : règles de base BR, calculs BR-CO, listes de codes BR-CL, décimales BR-DEC et règles par catégorie de TVA comme BR-S. Puis les règles nationales ou de réseau sélectionnées par BT-24 : BR-DE pour XRechnung, PEPPOL-EN16931 pour Peppol BIS Billing. Le rapport liste chaque règle en échec : une erreur signifie rejet, des avertissements seuls signifient toujours acceptation. BR-DE-31 : règle XRechnung (Allemagne), étape « Règles nationales (CIUS) ».

## Contexte et importance

BR-DE-31 vérifie la présence de BG-19, et non le code moyen de paiement utilisé : le code 49 avec une référence de mandat BT-89 échoue de la même manière que le code 59. Sans BT-91, les instructions de prélèvement ne peuvent pas être converties en fichiers bancaires pain.008.

## Solution

Dans la fiche client de votre ERP, renseignez les coordonnées bancaires (IBAN) du débiteur. En UBL 2.1, insérez <cac:PaymentMeans><cac:PaymentMandate><cac:PayerFinancialAccount><cbc:ID>DE89370400440532013000</cbc:ID></cac:PayerFinancialAccount></cac:PaymentMandate></cac:PaymentMeans>. En CII, insérez <ram:PayerPartyDebtorFinancialAccount><ram:IBANID>. Si la facture n’est pas réglée par prélèvement, supprimez toutes les données de prélèvement qui forment BG-19 (BT-89, BT-90 et BT-91) et utilisez un code de virement tel que 58 ou 30. Tant que BG-19 subsiste, modifier uniquement BT-81 ne corrige pas l’erreur.

- [Valider le XML](/fr/xrechnung-validator?source=resource&rule=BR-DE-31)
- [Convertir la facture](/fr/pdf-to-xrechnung?source=resource&rule=BR-DE-31)

## Exemples valides

- Prélèvement (BT-81 = 59) avec référence de mandat BT-89 et compte débité BT-91 = « DE89370400440532013000 »
- Prélèvement (BT-81 = 49) avec référence de mandat BT-89 et compte autrichien BT-91 = « AT611904300234573201 »

## Exemples invalides

- Code moyen de paiement 49 ou 59 avec un PaymentMandate (BG-19) sans élément PayerFinancialAccount/ID
- Facture CII avec référence de mandat BT-89 (ram:DirectDebitMandateID) mais sans ram:PayerPartyDebtorFinancialAccount/ram:IBANID

## Exemples de code

### XML valide
```
<cac:PaymentMeans>
  <cbc:PaymentMeansCode>59</cbc:PaymentMeansCode>
  <cac:PaymentMandate>
    <cbc:ID>MANDATE-2026-001</cbc:ID>
    <cac:PayerFinancialAccount>
      <cbc:ID>DE89370400440532013000</cbc:ID>
    </cac:PayerFinancialAccount>
  </cac:PaymentMandate>
</cac:PaymentMeans>
```

### XML invalide
```
<cac:PaymentMeans>
  <cbc:PaymentMeansCode>59</cbc:PaymentMeansCode>
  <cac:PaymentMandate>
    <cbc:ID>MANDATE-2026-001</cbc:ID>
  </cac:PaymentMandate>
</cac:PaymentMeans>
```

## Champs concernés

- [BG-19 Prélèvement](/resources/xrechnung/bt-89-mandate-reference-identifier)
- [BT-91 Identifiant du compte débité](/resources/xrechnung/bt-91-debited-account-identifier)
- [BT-81 Code du type de moyen de paiement](/resources/xrechnung/bt-81-payment-means-type-code)

## Règles associées

- [BR-DE-20](/resources/kosit-validator-errors/br-de-20-sepa-debited-account-must-be-valid-iban)
- [BR-DE-30](/resources/kosit-validator-errors/br-de-30-direct-debit-requires-creditor-identifier)
- [BR-61](/resources/kosit-validator-errors/br-61-credit-transfer-account-required)

## Outils de validation

- [Validateur KoSIT officiel](https://github.com/itplr-kosit/validator): Exécutez le validateur officiel du KoSIT avec la configuration XRechnung pour contrôler les règles EN 16931 et XRechnung.
- [Convertir un PDF en XRechnung](/pdf-to-xrechnung): Repérez les erreurs de validation pendant la conversion et vérifiez chaque correction.

## Ressources associées

- [Spécification officielle](https://xeinkauf.de/xrechnung/)
- [Suite de tests](https://github.com/itplr-kosit/xrechnung-testsuite)
- [Toutes les erreurs de validation](/resources/kosit-validator-errors): Vue d’ensemble des règles de validation EN 16931, XRechnung et Peppol expliquées ici.
