Texte officiel de la règle
[BR-CL-01] The document type code MUST be coded by the invoice and credit note related code lists of UNTDID 1001.
Le texte normatif est en anglais ; il est cité tel quel.
Pourquoi cette erreur apparaît
Le code de type de document (BT-3) doit appartenir au sous-ensemble facture ou avoir de la liste UNTDID 1001. En UBL, la règle contrôle cbc:InvoiceTypeCode par rapport à la liste des factures (par ex. 71, 80, 82, 84, 102, 130, 202, 326, 380, 384, 386, 389, 875, 876, 877) et cbc:CreditNoteTypeCode par rapport à la liste des avoirs (81, 83, 261, 262, 296, 308, 381, 396, 420, 458, 532) ; en CII, ram:TypeCode est contrôlé par rapport à l'union des deux. Elle échoue sur les codes internes (« INV », « R »), sur du texte, sur des espaces autour du code et sur 381 dans un document UBL Invoice.
Comment corriger
Faites correspondre vos types de documents internes aux codes UNTDID 1001 dans l'export : 380 facture commerciale, 384 facture rectificative, 389 autofacture, 326 facture partielle, 381 avoir. En UBL, un avoir doit être un document cn:CreditNote avec cbc:CreditNoteTypeCode 381 ; 381 n'est pas admis dans le cbc:InvoiceTypeCode d'un ubl:Invoice. En CII, renseignez rsm:ExchangedDocument/ram:TypeCode. Écrivez le code sans espace. XRechnung restreint davantage la liste (voir BR-DE-17).
Exemple (valide)
<cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>
Ce que le validateur vérifie
Élément vérifié (contexte):
UBL
cbc:InvoiceTypeCode | cbc:CreditNoteTypeCodeTest (XPath):
(self::cbc:InvoiceTypeCode and ((not(contains(normalize-space(.), ' ')) and contains(' 71 80 81 82 84 102 130 202 203 204 211 218 219 295 325 326 331 380 382 383 384 385 386 387 388 389 390 393 394 395 456 457 471 472 473 500 501 502 503 527 553 575 623 633 751 780 817 870 875 876 877 935 ', concat(' ', normalize-space(.), ' '))))) or (self::cbc:CreditNoteTypeCode and ((not(contains(normalize-space(.), ' ')) and contains(' 81 83 261 262 296 308 381 396 420 458 532 ', concat(' ', normalize-space(.), ' ')))))CII
rsm:ExchangedDocument/ram:TypeCodeTest (XPath):
((not(contains(normalize-space(.), ' ')) and contains(' 71 80 81 82 83 84 102 130 202 203 204 211 218 219 261 262 295 296 308 325 326 331 380 381 382 383 384 385 386 387 388 389 390 393 394 395 396 420 456 457 458 471 472 473 500 501 502 503 527 532 553 575 623 633 751 780 817 870 875 876 877 935 ', concat(' ', normalize-space(.), ' '))))
Corriger automatiquement
Le vérificateur corrige cette erreur dès que vous saisissez la valeur manquante : déposez le fichier et cliquez sur « Corriger automatiquement ».
La même vérification par API:
curl -F file=@invoice.xml https://einvoicechecker.com/v1/validateRègles liées
BR-CL-03Attribut currencyID non conforme à ISO 4217BR-CL-04Code devise de la facture non conforme à ISO 4217BR-CL-05Le code de devise fiscale DOIT utiliser la liste ISO 4217 alpha-3BR-CL-06Le code de date d'exigibilité de la TVA DOIT utiliser une restriction de UNTDID 2005BR-CL-07L'identifiant de schéma de l'identifiant d'objet DOIT utiliser une restriction…BR-CL-08Le code de sujet de la note doit utiliser UNCL4451BR-CL-10Schéma d'identifiant de partie non conforme à ISO 6523 ICDBR-CL-11Tout identifiant de schéma d'identifiant d'immatriculation DOIT utiliser l'une…
Questions fréquentes
Que signifie BR-CL-01 ?
BR-CL-01 est une règle de base en 16931 : The document type code MUST be coded by the invoice and credit note related code lists of UNTDID 1001.
Ma facture sera-t-elle rejetée à cause de BR-CL-01 ?
Oui. BR-CL-01 est classée « bloquante » ; les validateurs (plateformes agréées, points d'accès Peppol, KoSIT, KSeF) rejettent la facture tant qu'elle n'est pas corrigée.
À quels formats s'applique BR-CL-01 ?
Toute facture EN 16931 : Factur-X / ZUGFeRD 2.x (profils EN 16931, EXTENDED, XRECHNUNG), XRechnung, Peppol BIS Billing 3.0 et les CIUS nationales. Syntaxe : UBL et CII.
Source: EN 16931-1:2017 schematron (CEN TC434, via Peppol BIS 3.0.20). Catalogue généré à partir des jeux de règles officiels le 2026-10-15.