# PEPPOL-EN16931-R001 Identifiant de processus métier Peppol (ProfileID) requis

Selon la règle Peppol PEPPOL-EN16931-R001, toute facture ou tout avoir Peppol BIS Billing 3.0 doit déclarer l’identifiant de processus métier dans BT-23 (cbc:ProfileID). La règle PEPPOL-EN16931-R001 contrôle la présence de cet élément ; une valeur non reconnue déclenche la règle PEPPOL-EN16931-R007. Pour la facturation standard, la valeur attendue est « urn:fdc:peppol.eu:2017:poacc:billing:01:1.0 ». Les points d’accès Peppol et les serveurs de métadonnées (SMP) s’appuient sur cet identifiant pour vérifier que le destinataire accepte ce processus.

## Description du problème

> **ERREUR**: Règle Peppol BIS Billing 3.0 (OpenPeppol)

> **Où PEPPOL-EN16931-R001 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. PEPPOL-EN16931-R001 : règle Peppol BIS Billing, étape « Règles nationales (CIUS) ».

## Contexte et importance

Un ProfileID absent fait échouer la validation Peppol : le point d’accès émetteur refuse alors d’envoyer la facture au destinataire. Le ProfileID doit aussi correspondre à un processus pour lequel le destinataire est enregistré dans le SMP. L’erreur survient surtout lorsqu’un générateur n’écrit que le CustomizationID (BT-24) et pas BT-23, par exemple quand un export XRechnung est réutilisé pour Peppol.

## Solution

Dans votre générateur XML, définissez BT-23 avec l’URN officielle : urn:fdc:peppol.eu:2017:poacc:billing:01:1.0. En UBL 2.1, insérez <cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID> directement sous <Invoice> ou <CreditNote>, juste après cbc:CustomizationID. Peppol BIS Billing 3.0 s’échange en UBL 2.1 et les artefacts de validation Peppol contrôlent la syntaxe UBL.

- [Valider le XML](/fr/xrechnung-validator?source=resource&rule=PEPPOL-EN16931-R001)
- [Convertir la facture](/fr/pdf-to-xrechnung?source=resource&rule=PEPPOL-EN16931-R001)

## Exemples valides

- BT-23 = « urn:fdc:peppol.eu:2017:poacc:billing:01:1.0 » (ProfileID officiel Peppol BIS Billing 3.0)

## Exemples invalides

- L’en-tête de facture omet totalement l’élément cbc:ProfileID
- L’en-tête ne contient que cbc:CustomizationID (BT-24) et aucun cbc:ProfileID (BT-23)
- BT-23 = « urn:cen.eu:en16931:2017 » (valeur non reconnue : signalée par PEPPOL-EN16931-R007, pas par R001)

## Exemples de code

### XML valide
```
<cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID>
```

### XML invalide
```
<cbc:CustomizationID>urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0</cbc:CustomizationID>
```

## Champs concernés

- [BT-23 Type de processus métier](/resources/xrechnung/bt-23-business-process-type-identifier)
- [BT-24 Identifiant de spécification](/resources/xrechnung/bt-24-specification-identifier)

## Règles associées

- [BR-01](/resources/kosit-validator-errors/br-01-specification-identifier-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-peppol/)
- [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.
