Account
Nederlands

BR-CO-09: Btw-identificatienummer zonder geldig landprefix

EN 16931-kernregel · Fout · UBL, CII

StandaardEN 16931-1 (Europees semantisch model voor e-facturen)ErnstFout: de factuur wordt geweigerdSyntaxUBL, CIIBedrijfstermen
  • BT-31 Seller VAT identifier
  • BT-48 Buyer VAT identifier
  • BT-63 Seller tax representative VAT identifier
Geldt voorElke EN 16931-factuur: Peppol BIS Billing 3.0, NLCIUS, XRechnung, ZUGFeRD 2.x / Factur-X (profielen EN 16931, EXTENDED, XRECHNUNG) en andere nationale CIUS.

Officiële regeltekst

[BR-CO-09] The Seller VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48) shall have a prefix in accordance with ISO code ISO 3166-1 alpha-2 by which the country of issue may be identified. Nevertheless, Greece may use the prefix ‘EL’.

De normatieve tekst is Engels en wordt ongewijzigd geciteerd.

Waarom deze fout optreedt

Het btw-identificatienummer van de verkoper (BT-31), van de fiscaal vertegenwoordiger van de verkoper (BT-63) en van de koper (BT-48) moet beginnen met de ISO 3166-1 alpha-2-code van het land van uitgifte; Griekenland mag EL gebruiken. De regel controleert de eerste twee tekens van cac:PartyTaxScheme/cbc:CompanyID waarbij cac:TaxScheme/cbc:ID gelijk is aan VAT (UBL), of van ram:SpecifiedTaxRegistration/ram:ID met schemeID VA (CII). De regel slaat aan wanneer een nationaal belastingnummer (Duits Steuernummer, Frans SIREN) als btw-ID is ingevoerd, of wanneer het prefix ontbreekt of in kleine letters staat.

Zo lost u het op

Voer het btw-identificatienummer in zoals het is toegekend, met het tweeletterige landprefix en zonder spaties, bijvoorbeeld DE123456789, ATU12345678, NL123456789B01, EL123456789. Een Duits Steuernummer is geen btw-ID: zet het in UBL in een aparte cac:PartyTaxScheme met cac:TaxScheme/cbc:ID = FC (BT-32), in CII in ram:SpecifiedTaxRegistration/ram:ID met schemeID="FC". Als de partij geen btw-ID heeft, laat het btw-element dan weg in plaats van het met een placeholder te vullen.

Voorbeeld (geldig)

<cac:PartyTaxScheme>
  <cbc:CompanyID>DE123456789</cbc:CompanyID>
  <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
</cac:PartyTaxScheme>

Wat de validator controleert

Gecontroleerd element (context):

UBL

//cac:PartyTaxScheme[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']

Test (XPath):

( contains( ' 1A AD AE AF AG AI AL AM AO AQ AR AS AT AU AW AX AZ BA BB BD BE BF BG BH BI BJ BL BM BN BO BQ BR BS BT BV BW BY BZ CA CC CD CF CG CH CI CK CL CM CN CO CR CU CV CW CX CY CZ DE DJ DK DM DO DZ EC EE EG EH EL ER ES ET FI FJ FK FM FO FR GA GB GD GE GF GG GH GI GL GM GN GP GQ GR GS GT GU GW GY HK HM HN HR HT HU ID IE IL IM IN IO IQ IR IS IT JE JM JO JP KE KG KH KI KM KN KP KR KW KY KZ LA LB LC LI LK LR LS LT LU LV LY MA MC MD ME MF MG MH MK ML MM MN MO MP MQ MR MS MT MU MV MW MX MY MZ NA NC NE NF NG NI NL NO NP NR NU NZ OM PA PE PF PG PH PK PL PM PN PR PS PT PW PY QA RE RO RS RU RW SA SB SC SD SE SG SH SI SJ SK SL SM SN SO SR SS ST SV SX SY SZ TC TD TF TG TH TJ TK TL TM TN TO TR TT TV TW TZ UA UG UM US UY UZ VA VC VE VG VI VN VU WF WS XI YE YT ZA ZM ZW ',substring(cbc:CompanyID,1,2) ) )

CII

//ram:SpecifiedTaxRegistration/ram:ID[@schemeID='VA']

Test (XPath):

contains(' 1A AD AE AF AG AI AL AM AN AO AQ AR AS AT AU AW AX AZ BA BB BD BE BF BG BH BI BL BJ BM BN BO BQ BR BS BT BV BW BY BZ CA CC CD CF CG CH CI CK CL CM CN CO CR CU CV CW CX CY CZ DE DJ DK DM DO DZ EC EE EG EH EL ER ES ET FI FJ FK FM FO FR GA GB GD GE GF GG GH GI GL GM GN GP GQ GR GS GT GU GW GY HK HM HN HR HT HU ID IE IL IM IN IO IQ IR IS IT JE JM JO JP KE KG KH KI KM KN KP KR KW KY KZ LA LB LC LI LK LR LS LT LU LV LY MA MC MD ME MF MG MH MK ML MM MN MO MP MQ MR MS MT MU MV MW MX MY MZ NA NC NE NF NG NI NL NO NP NR NU NZ OM PA PE PF PG PH PK PL PM PN PR PS PT PW PY QA RE RO RS RU RW SA SB SC SD SE SG SH SI SJ SK SL SM SN SO SR ST SV SX SY SZ TC TD TF TG TH TJ TK TL TM TN TO TR TT TV TW TZ UA UG UM US UY UZ VA VC VE VG VI VN VU WF WS XI YE YT ZA ZM ZW ', concat(' ', substring(.,1,2), ' '))

Controleer uw factuur

Sleep uw XML of PDF naar de validator; elke overtreden regel linkt naar zijn pagina hier. Gratis, zonder account, het bestand wordt niet opgeslagen.

Controleer uw factuur →

Dezelfde controle via API:

curl -F file=@invoice.xml https://einvoicechecker.com/v1/validate

Gerelateerde regels

Veelgestelde vragen

Wat betekent BR-CO-09?

BR-CO-09 is een en 16931-kernregel: The Seller VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48) shall have a prefix in accordance with ISO code ISO 3166-1 alpha-2 by which the country of issue may be identified. Nevertheless, Greece may use the prefix ‘EL’.

Wordt mijn factuur geweigerd vanwege BR-CO-09?

Ja. BR-CO-09 is "fataal"; validators (Peppol-accesspoints, KoSIT, KSeF) weigeren de factuur totdat de fout is opgelost.

Voor welke formaten geldt BR-CO-09?

Elke EN 16931-factuur: Peppol BIS Billing 3.0, NLCIUS, XRechnung, ZUGFeRD 2.x / Factur-X (profielen EN 16931, EXTENDED, XRECHNUNG) en andere nationale CIUS. Syntax: UBL en CII.

Bron: EN 16931-1:2017 schematron (CEN TC434, via Peppol BIS 3.0.20). Catalogus gegenereerd uit de officiële regelsets op 2026-10-15.