# BR-CO-06 Le motif et le code des frais au niveau du document doivent concorder

Le code du motif des frais au niveau du document (BT-105) et le motif des frais au niveau du document (BT-104) doivent désigner le même type de frais.

## Description du problème

> **ERREUR**: Règle de calcul et de cohérence EN 16931 (BR-CO)

## Contexte et importance

Cette règle de la norme EN 16931 exige que le motif en texte libre et le code de motif désignent les mêmes frais, mais son sens n’est pas contrôlable par machine. Les artefacts de validation EN 16931 pour UBL et CII utilisés par le validateur KoSIT ne contiennent pour BR-CO-06 qu’un contrôle factice toujours satisfait : BR-CO-06 n’apparaît donc jamais dans un rapport de validation. L’incohérence reste une erreur de contenu : l’acheteur comptabilise les frais d’après le code (BT-105) et lit le motif (BT-104). Une paire contradictoire, par exemple le code FC (service de fret) avec « Escompte pour paiement anticipé », entraîne une vérification manuelle ou une contestation des frais.

## Solution

Alignez le motif en texte libre (BT-104) sur le code de motif (BT-105) pour qu’ils décrivent les mêmes frais, par exemple le code FC (service de fret) avec le motif « Frais de transport ». Choisissez d’abord le code UNCL 7161, puis un texte conforme à sa signification.

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

## Exemples valides

- BT-105 = FC (service de fret) avec BT-104 = « Frais de transport »

## Exemples invalides

- BT-105 = FC (service de fret) avec BT-104 = « Escompte pour paiement anticipé »

## Exemples de code

### XML valide
```
<cac:AllowanceCharge>
  <cbc:ChargeIndicator>true</cbc:ChargeIndicator>
  <cbc:AllowanceChargeReasonCode>FC</cbc:AllowanceChargeReasonCode>
  <cbc:AllowanceChargeReason>Freight charge</cbc:AllowanceChargeReason>
  <cbc:Amount currencyID="EUR">15.00</cbc:Amount>
  <cac:TaxCategory>
    <cbc:ID>S</cbc:ID>
    <cbc:Percent>19</cbc:Percent>
    <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
  </cac:TaxCategory>
</cac:AllowanceCharge>
```

### XML invalide
```
<cac:AllowanceCharge>
  <cbc:ChargeIndicator>true</cbc:ChargeIndicator>
  <cbc:AllowanceChargeReasonCode>FC</cbc:AllowanceChargeReasonCode>
  <cbc:AllowanceChargeReason>Early payment discount</cbc:AllowanceChargeReason>
  <cbc:Amount currencyID="EUR">15.00</cbc:Amount>
  <cac:TaxCategory>
    <cbc:ID>S</cbc:ID>
    <cbc:Percent>19</cbc:Percent>
    <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
  </cac:TaxCategory>
</cac:AllowanceCharge>
```

## Champs concernés

- [BT-104 Motif des frais au niveau du document](/resources/xrechnung/bt-104-document-level-charge-reason)
- [BT-105 Code du motif des frais au niveau du document](/resources/xrechnung/bt-105-document-level-charge-reason-code)

## Règles associées

- [BR-CO-05](/resources/kosit-validator-errors/br-co-05-allowance-reason-code-match)
- [BR-CO-22](/resources/kosit-validator-errors/br-co-22-document-charge-reason-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://docs.peppol.eu/poacc/billing/3.0/rules/ubl-tc434/)
- [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.
