EN 16931 business rules, explained
All 325 rules from the official EN 16931 validation artefacts — the errors behind every rejected XRechnung, Factur-X/ZUGFeRD, UBL, CII or Peppol invoice. Official text first, then what it actually means and how to fix it. Link directly to any rule, e.g. #br-co-15.
Core rules (BR)
BR-01
An Invoice shall have a Specification identifier (BT-24).
In practice: Set the specification identifier (UBL: CustomizationID, CII: GuidelineSpecifiedDocumentContextParameter). For plain EN 16931 use "urn:cen.eu:en16931:2017"; XRechnung and Peppol have their own values.
BR-02
An Invoice shall have an Invoice number (BT-1).
In practice: Every invoice needs an invoice number (BT-1). Check the field mapping in your invoicing software — this is almost always a mapping bug, not a business problem.
BR-03
An Invoice shall have an Invoice issue date (BT-2).
In practice: Add the issue date (BT-2). UBL expects YYYY-MM-DD; CII uses DateTimeString with format="102" and YYYYMMDD.
BR-04
An Invoice shall have an Invoice type code (BT-3).
In practice: Add an invoice type code (BT-3). Commercial invoice = 380, credit note = 381, corrected invoice = 384, self-billed = 389.
BR-05
An Invoice shall have an Invoice currency code (BT-5).
In practice: Add the invoice currency (BT-5) as an ISO 4217 code such as EUR.
BR-06
An Invoice shall contain the Seller name (BT-27).
In practice: The seller's legal name is missing. In UBL it lives in PartyLegalEntity/RegistrationName — PartyName alone is the trading name (BT-28), not the legal name (BT-27).
BR-07
An Invoice shall contain the Buyer name (BT-44).
In practice: The buyer's legal name is missing. Same trap as the seller: UBL wants PartyLegalEntity/RegistrationName.
BR-08
An Invoice shall contain the Seller postal address.
In practice: Add a seller postal address group — at minimum the country code.
BR-09
The Seller postal address (BG-5) shall contain a Seller country code (BT-40).
In practice: The seller address needs a country code (BT-40), two letters per ISO 3166-1 (DE, FR, SK…).
BR-10
An Invoice shall contain the Buyer postal address (BG-8).
In practice: Add a buyer postal address group — at minimum the country code.
BR-11
The Buyer postal address shall contain a Buyer country code (BT-55).
In practice: The buyer address needs a country code (BT-55).
BR-12
An Invoice shall have the Sum of Invoice line net amount (BT-106).
In practice: Add the sum of line net amounts (BT-106; UBL LineExtensionAmount in LegalMonetaryTotal, CII LineTotalAmount).
BR-13
An Invoice shall have the Invoice total amount without VAT (BT-109).
In practice: Add the invoice total without VAT (BT-109).
BR-14
An Invoice shall have the Invoice total amount with VAT (BT-112).
In practice: Add the invoice total with VAT (BT-112).
BR-15
An Invoice shall have the Amount due for payment (BT-115).
In practice: Add the amount due for payment (BT-115).
BR-16
An Invoice shall have at least one Invoice line (BG-25)
In practice: An invoice must have at least one line. If you are sending a document without lines, it is not an EN 16931 invoice.
BR-17
The Payee name (BT-59) shall be provided in the Invoice, if the Payee (BG-10) is different from the Seller (BG-4)
BR-18
The Seller tax representative name (BT-62) shall be provided in the Invoice, if the Seller (BG-4) has a Seller tax representative party (BG-11)
BR-19
The Seller tax representative postal address (BG-12) shall be provided in the Invoice, if the Seller (BG-4) has a Seller tax representative party (BG-11).
BR-20
The Seller tax representative postal address (BG-12) shall contain a Tax representative country code (BT-69), if the Seller (BG-4) has a Seller tax representative party (BG-11).
BR-21
Each Invoice line (BG-25) shall have an Invoice line identifier (BT-126).
In practice: Every line needs its own identifier (BT-126) — a simple counter (1, 2, 3…) is fine.
BR-22
Each Invoice line (BG-25) shall have an Invoiced quantity (BT-129).
In practice: Every line needs an invoiced quantity (BT-129).
BR-23
An Invoice line (BG-25) shall have an Invoiced quantity unit of measure code (BT-130).
In practice: Every line quantity needs a unit code (BT-130) from UN/ECE Recommendation 20/21. When in doubt use C62 ("one") for pieces, HUR for hours, DAY for days, KGM for kilograms.
BR-24
Each Invoice line (BG-25) shall have an Invoice line net amount (BT-131).
BR-25
Each Invoice line (BG-25) shall contain the Item name (BT-153).
In practice: Every line needs an item name (BT-153).
BR-26
Each Invoice line (BG-25) shall contain the Item net price (BT-146).
In practice: Every line needs an item net price (BT-146).
BR-27
The Item net price (BT-146) shall NOT be negative.
In practice: Unit prices must not be negative. Model discounts as allowances (line or document level) or use a negative quantity for returns — not a negative price.
BR-28
The Item gross price (BT-148) shall NOT be negative.
BR-29
If both Invoicing period start date (BT-73) and Invoicing period end date (BT-74) are given then the Invoicing period end date (BT-74) shall be later or equal to the Invoicing period start date (BT-73).
BR-30
If both Invoice line period start date (BT-134) and Invoice line period end date (BT-135) are given then the Invoice line period end date (BT-135) shall be later or equal to the Invoice line period start date (BT-134).
BR-31
Each Document level allowance (BG-20) shall have a Document level allowance amount (BT-92).
BR-32
Each Document level allowance (BG-20) shall have a Document level allowance VAT category code (BT-95).
BR-33
Each Document level allowance (BG-20) shall have a Document level allowance reason (BT-97) or a Document level allowance reason code (BT-98).
BR-36
Each Document level charge (BG-21) shall have a Document level charge amount (BT-99).
BR-37
Each Document level charge (BG-21) shall have a Document level charge VAT category code (BT-102).
BR-38
Each Document level charge (BG-21) shall have a Document level charge reason (BT-104) or a Document level charge reason code (BT-105).
BR-41
Each Invoice line allowance (BG-27) shall have an Invoice line allowance amount (BT-136).
BR-42
Each Invoice line allowance (BG-27) shall have an Invoice line allowance reason (BT-139) or an Invoice line allowance reason code (BT-140).
BR-43
Each Invoice line charge (BG-28) shall have an Invoice line charge amount (BT-141).
BR-44
Each Invoice line charge shall have an Invoice line charge reason or an invoice line allowance reason code.
BR-45
Each VAT breakdown (BG-23) shall have a VAT category taxable amount (BT-116).
BR-46
Each VAT breakdown (BG-23) shall have a VAT category tax amount (BT-117).
BR-47
Each VAT breakdown (BG-23) shall be defined through a VAT category code (BT-118).
BR-48
Each VAT breakdown (BG-23) shall have a VAT category rate (BT-119), except if the Invoice is not subject to VAT.
In practice: Every VAT breakdown row needs a rate (BT-119) — except category O, which must not have one.
BR-49
A Payment instruction (BG-16) shall specify the Payment means type code (BT-81).
In practice: Payment instructions need a payment means code (BT-81): 30 credit transfer, 58 SEPA credit transfer, 59 SEPA direct debit, 48 card.
BR-50
A Payment account identifier (BT-84) shall be present if Credit transfer (BG-17) information is provided in the Invoice.
In practice: If you provide bank account details, the account identifier (IBAN, BT-84) is mandatory.
BR-51 (warning)
In accordance with card payments security standards an invoice should never include a full card primary account number (BT-87). At the moment PCI Security Standards Council has defined that the first 6 digits and last 4 digits are the maximum number of digits to be shown.
BR-52
Each Additional supporting document (BG-24) shall contain a Supporting document reference (BT-122).
In practice: Every attached/referenced supporting document needs a reference identifier (BT-122).
BR-53
If the VAT accounting currency code (BT-6) is present, then the Invoice total VAT amount in accounting currency (BT-111) shall be provided.
In practice: If you state a VAT accounting currency (BT-6), you must also provide the VAT total in that currency (BT-111).
BR-54
Each Item attribute (BG-32) shall contain an Item attribute name (BT-160) and an Item attribute value (BT-161).
BR-55
Each Preceding Invoice reference (BG-3) shall contain a Preceding Invoice reference (BT-25).
BR-56
Each Seller tax representative party (BG-11) shall have a Seller tax representative VAT identifier (BT-63).
BR-57
Each Deliver to address (BG-15) shall contain a Deliver to country code (BT-80).
BR-61
If the Payment means type code (BT-81) means SEPA credit transfer, Local credit transfer or Non-SEPA international credit transfer, the Payment account identifier (BT-84) shall be present.
In practice: Payment means 30/58 (credit transfer) require an account identifier (BT-84) — add the IBAN.
BR-62
The Seller electronic address (BT-34) shall have a Scheme identifier.
BR-63
The Buyer electronic address (BT-49) shall have a Scheme identifier.
BR-64
The Item standard identifier (BT-157) shall have a Scheme identifier.
In practice: The item standard identifier needs a scheme (schemeID) — usually 0160 for GTIN.
BR-65
The Item classification identifier (BT-158) shall have a Scheme identifier.
BR-TMP-2 (warning)
BT-124 "External document location" muss eine absolute URL mit gültigem Schema enthalten.
BR-TMP-3
Wenn BT-149 (Item price base quantity) sowohl in GrossPriceProductTradePrice als auch in NetPriceProductTradePrice vorhanden ist, müssen die Werte identisch sein. Wenn BT-150 (unit of measure code) auf dem NetPrice-Pfad vorhanden ist, muss es auch auf dem GrossPrice-Pfad vorhanden und identisch sein.
BR-TMP-4 (warning)
BT-123 "Attached document description" (ram:Name) darf innerhalb eines "Supporting document" (BG-24) höchstens einmal vorkommen.
BR-TMP-5 (warning)
BT-125 "Attached document" (ram:AttachmentBinaryObject) darf innerhalb eines "Supporting document" (BG-24) höchstens einmal vorkommen.
BR-TMP-CVD-01
Das Bildungsschema für <name /> "Item classification identifier" (BT-158) ist aus der Codeliste UNTDID 7143 zu wählen.
VAT: reverse charge (BR-AE)
BR-AE-01
An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Reverse charge" shall contain in the VAT Breakdown (BG-23) exactly one VAT category code (BT-118) equal with "VAT reverse charge".
BR-AE-02
An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Reverse charge" shall contain the Seller VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48) and/or the Buyer legal registration identifier (BT-47).
BR-AE-03
An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Reverse charge" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48) and/or the Buyer legal registration identifier (BT-47).
BR-AE-04
An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Reverse charge" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48) and/or the Buyer legal registration identifier (BT-47).
BR-AE-05
In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Reverse charge" the Invoiced item VAT rate (BT-152) shall be 0 (zero).
BR-AE-06
In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Reverse charge" the Document level allowance VAT rate (BT-96) shall be 0 (zero).
BR-AE-07
In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Reverse charge" the Document level charge VAT rate (BT-103) shall be 0 (zero).
BR-AE-08
In a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Reverse charge" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amounts (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Reverse charge".
BR-AE-09
The VAT category tax amount (BT-117) in a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Reverse charge" shall be 0 (zero).
BR-AE-10
A VAT breakdown (BG-23) with VAT Category code (BT-118) "Reverse charge" shall have a VAT exemption reason code (BT-121), meaning "Reverse charge" or the VAT exemption reason text (BT-120) "Reverse charge" (or the equivalent standard text in another language).
In practice: Reverse-charge invoices (category AE) must carry an exemption reason saying so — text "Reverse charge" or the corresponding VATEX code.
VAT: IGIC (BR-AF)
BR-AF-01
An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "IGIC" shall contain in the VAT breakdown (BG-23) at least one VAT category code (BT-118) equal with "IGIC".
BR-AF-02
An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "IGIC" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
BR-AF-03
An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "IGIC" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
BR-AF-04
An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "IGIC" shall contain the Seller VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
BR-AF-05
In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "IGIC" the invoiced item VAT rate (BT-152) shall be 0 (zero) or greater than zero.
BR-AF-06
In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "IGIC" the Document level allowance VAT rate (BT-96) shall be 0 (zero) or greater than zero.
BR-AF-07
In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "IGIC" the Document level charge VAT rate (BT-103) shall be 0 (zero) or greater than zero.
BR-AF-08
For each different value of VAT category rate (BT-119) where the VAT category code (BT-118) is "IGIC", the VAT category taxable amount (BT-116) in a VAT breakdown (BG-23) shall equal the sum of Invoice line net amounts (BT-131) plus the sum of document level charge amounts (BT-99) minus the sum of document level allowance amounts (BT-92) where the VAT category code (BT-151, BT-102, BT-95) is "IGIC" and the VAT rate (BT-152, BT-103, BT-96) equals the VAT category rate (BT-119).
BR-AF-09
The VAT category tax amount (BT-117) in a VAT breakdown (BG-23) where VAT category code (BT-118) is "IGIC" shall equal the VAT category taxable amount (BT-116) multiplied by the VAT category rate (BT-119).
BR-AF-10
A VAT breakdown (BG-23) with VAT Category code (BT-118) "IGIC" shall not have a VAT exemption reason code (BT-121) or VAT exemption reason text (BT-120).
VAT: IPSI (BR-AG)
BR-AG-01
An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "IPSI" shall contain in the VAT breakdown (BG-23) at least one VAT category code (BT-118) equal with "IPSI".
BR-AG-02
An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "IPSI" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
BR-AG-03
An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "IPSI" shall contain the Seller VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
BR-AG-04
An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "IPSI" shall contain the Seller VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
BR-AG-05
In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "IPSI" the Invoiced item VAT rate (BT-152) shall be 0 (zero) or greater than zero.
BR-AG-06
In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "IPSI" the Document level allowance VAT rate (BT-96) shall be 0 (zero) or greater than zero.
BR-AG-07
In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "IPSI" the Document level charge VAT rate (BT-103) shall be 0 (zero) or greater than zero.
BR-AG-08
For each different value of VAT category rate (BT-119) where the VAT category code (BT-118) is "IPSI", the VAT category taxable amount (BT-116) in a VAT breakdown (BG-23) shall equal the sum of Invoice line net amounts (BT-131) plus the sum of document level charge amounts (BT-99) minus the sum of document level allowance amounts (BT-92) where the VAT category code (BT-151, BT-102, BT-95) is "IPSI" and the VAT rate (BT-152, BT-103, BT-96) equals the VAT category rate (BT-119).
BR-AG-09
The VAT category tax amount (BT-117) in a VAT breakdown (BG-23) where VAT category code (BT-118) is "IPSI" shall equal the VAT category taxable amount (BT-116) multiplied by the VAT category rate (BT-119).
BR-AG-10
A VAT breakdown (BG-23) with VAT Category code (BT-118) "IPSI" shall not have a VAT exemption reason code (BT-121) or VAT exemption reason text (BT-120).
VAT: split payment (BR-B)
BR-B-01
An Invoice where the VAT category code (BT-151, BT-95 or BT-102) is “Split payment” shall be a domestic Italian invoice.
BR-B-02
An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95, BT-118 or BT-102) is “Split payment" shall not contain an invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95, BT-118 or BT-102) is “Standard rated”.
Code lists (BR-CL)
BR-CL-01
The document type code MUST be coded by the invoice and credit note related code lists of UNTDID 1001.
In practice: Use a document type code from UNTDID 1001: 380 for invoices, 381 for credit notes. Codes like "INVOICE" or 999 are not valid.
BR-CL-03
currencyID MUST be coded using ISO code list 4217 alpha-3
In practice: Every amount's currencyID must be a valid ISO 4217 code. Watch for typos like "EURO" or lowercase "eur".
BR-CL-04
Invoice currency code MUST be coded using ISO code list 4217 alpha-3
BR-CL-05
Tax currency code MUST be coded using ISO code list 4217 alpha-3
BR-CL-06
Value added tax point date code MUST be coded using a restriction of UNTDID 2005.
BR-CL-07
Object identifier identification scheme identifier MUST be coded using a restriction of UNTDID 1153.
BR-CL-08
Invoiced note subject code shall be coded using UNCL4451
BR-CL-10
Any identifier identification scheme identifier MUST be coded using one of the ISO 6523 ICD list.
In practice: Party identifier schemeIDs must come from the ISO 6523 ICD list (e.g. 0088 GLN, 0060 DUNS, 0208 Belgian CBE). National IDs without a scheme should omit schemeID entirely.
BR-CL-11
Any registration identifier identification scheme identifier MUST be coded using one of the ISO 6523 ICD list.
BR-CL-13
Item classification identifier identification scheme identifier MUST be coded using one of the UNTDID 7143 list.
BR-CL-14
Country codes in an invoice MUST be coded using ISO code list 3166-1
In practice: Country codes are two-letter ISO 3166-1: DE, FR, SK. Greece is GR here (EL is only for VAT prefixes).
BR-CL-15
Country codes in an invoice MUST be coded using ISO code list 3166-1
BR-CL-16
Payment means in an invoice MUST be coded using UNCL4461 code list
In practice: The payment means code must come from UNTDID 4461. The safe common values: 30, 58, 59, 48, 68.
BR-CL-17
Invoice tax categories MUST be coded using UNCL5305 code list
In practice: VAT category codes come from UNCL 5305: S standard, Z zero, E exempt, AE reverse charge, K intra-community, G export, O not subject, L IGIC, M IPSI, B split payment.
BR-CL-18
Invoice tax categories MUST be coded using UNCL5305 code list
BR-CL-19
Coded allowance reasons MUST belong to the UNCL 5189 code list
BR-CL-20
Coded charge reasons MUST belong to the UNCL 7161 code list
BR-CL-21
Item standard identifier scheme identifier MUST belong to the ISO 6523 ICD code list
In practice: Item standard identifier schemeID must be an ISO 6523 ICD code — 0160 for GTIN/EAN.
BR-CL-22
Tax exemption reason code identifier scheme identifier MUST belong to the CEF VATEX code list
In practice: The exemption reason code must come from the VATEX list, uppercase (e.g. VATEX-EU-AE for reverse charge, VATEX-EU-IC for intra-community). Lowercase variants fail.
BR-CL-23
Unit code MUST be coded according to the UN/ECE Recommendation 20 with Rec 21 extension
In practice: The unit code must come from UN/ECE Rec 20/21. Common valid codes: C62 piece, HUR hour, DAY day, KGM kg, MTR metre, LTR litre, KWH kWh, MON month. "Stk", "pcs" or "hod" are not valid.
BR-CL-24
For Mime code in attribute use MIMEMediaType.
In practice: Attachment MIME type must be one of: application/pdf, image/png, image/jpeg, text/csv, and the two spreadsheet types. Other formats must be sent as external links (BT-124).
BR-CL-25
Endpoint identifier scheme identifier MUST belong to the CEF EAS code list
In practice: The electronic address schemeID must come from the EAS list — e.g. 0088 GLN, 9930 German VAT, 0208 Belgian CBE, 9944 Dutch VAT. An email address uses scheme EM.
BR-CL-26
Delivery location identifier scheme identifier MUST belong to the ISO 6523 ICD code list
Calculations & conditions (BR-CO)
BR-CO-03
Value added tax point date (BT-7) and Value added tax point date code (BT-8) are mutually exclusive.
BR-CO-04
Each Invoice line (BG-25) shall be categorized with an Invoiced item VAT category code (BT-151).
BR-CO-05
Document level allowance reason code (BT-98) and Document level allowance reason (BT-97) shall indicate the same type of allowance.
BR-CO-06
Document level charge reason code (BT-105) and Document level charge reason (BT-104) shall indicate the same type of charge.
BR-CO-07
Invoice line allowance reason code (BT-140) and Invoice line allowance reason (BT-139) shall indicate the same type of allowance reason.
BR-CO-08
Invoice line charge reason code (BT-145) and Invoice line charge reason (BT-144) shall indicate the same type of charge reason.
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’.
In practice: VAT identifiers must start with the two-letter country prefix (DE123456789, SK2021234567). Greece uses EL, Northern Ireland XI. A common failure is storing the national tax number without the prefix.
BR-CO-10
Sum of Invoice line net amount (BT-106) = Σ Invoice line net amount (BT-131).
In practice: BT-106 must equal the sum of all line net amounts, rounded to 2 decimals. Recompute the sum instead of copying a value from elsewhere.
BR-CO-11
Sum of allowances on document level (BT-107) = Σ Document level allowance amount (BT-92).
BR-CO-12
Sum of charges on document level (BT-108) = Σ Document level charge amount (BT-99).
BR-CO-13
Invoice total amount without VAT (BT-109) = Σ Invoice line net amount (BT-131) - Sum of allowances on document level (BT-107) + Sum of charges on document level (BT-108).
In practice: Total without VAT (BT-109) must equal line sum − document allowances + document charges. If you have no document-level allowances/charges, BT-109 must equal BT-106 exactly.
BR-CO-14
Invoice total VAT amount (BT-110) = Σ VAT category tax amount (BT-117).
In practice: Total VAT (BT-110) must equal the sum of the per-category VAT amounts in the breakdown. Check that every VAT breakdown row is included in the total.
BR-CO-15
Invoice total amount with VAT (BT-112) = Invoice total amount without VAT (BT-109) + Invoice total VAT amount (BT-110).
In practice: Total with VAT (BT-112) must equal BT-109 + BT-110, and the VAT total must exist in the invoice currency. The most common cause is rounding each line's VAT instead of computing VAT per category from the taxable base.
BR-CO-16
Amount due for payment (BT-115) = Invoice total amount with VAT (BT-112) -Paid amount (BT-113) +Rounding amount (BT-114).
In practice: Amount due (BT-115) must equal BT-112 − paid (BT-113) + rounding (BT-114). If nothing was prepaid, BT-115 must equal BT-112 exactly.
BR-CO-17
VAT category tax amount (BT-117) = VAT category taxable amount (BT-116) x (VAT category rate (BT-119) / 100), rounded to two decimals.
In practice: Each VAT breakdown's tax amount must equal taxable × rate (±1 unit tolerance for accumulated rounding). Compute VAT per category, not per line.
BR-CO-18
An Invoice shall at least have one VAT breakdown group (BG-23).
In practice: Add a VAT breakdown (BG-23): at least one row with taxable amount, tax amount, category code and rate — even for 0% or exempt invoices.
BR-CO-19
If Invoicing period (BG-14) is used, the Invoicing period start date (BT-73) or the Invoicing period end date (BT-74) shall be filled, or both.
BR-CO-20
If Invoice line period (BG-26) is used, the Invoice line period start date (BT-134) or the Invoice line period end date (BT-135) shall be filled, or both.
BR-CO-21
Each Document level allowance (BG-20) shall contain a Document level allowance reason (BT-97) or a Document level allowance reason code (BT-98), or both.
BR-CO-22
Each Document level charge (BG-21) shall contain a Document level charge reason (BT-104) or a Document level charge reason code (BT-105), or both.
BR-CO-23
Each Invoice line allowance (BG-27) shall contain an Invoice line allowance reason (BT-139) or an Invoice line allowance reason code (BT-140), or both.
BR-CO-24
Each Invoice line charge (BG-28) shall contain an Invoice line charge reason (BT-144) or an Invoice line charge reason code (BT-145), or both.
BR-CO-26
In order for the buyer to automatically identify a supplier, the Seller identifier (BT-29), the Seller legal registration identifier (BT-30) and/or the Seller VAT identifier (BT-31) shall be present.
In practice: The seller needs at least one machine-readable identifier: a seller ID (BT-29), legal registration ID (BT-30), or VAT ID (BT-31).
XRechnung (BR-DE)
BR-DE-1
Eine Rechnung (INVOICE) muss Angaben zu "PAYMENT INSTRUCTIONS" (BG-16) enthalten.
In practice: XRechnung invoices must state how to pay: add payment instructions (BG-16) with at least a payment means code (BT-81), typically 58 (SEPA credit transfer) plus an IBAN.
BR-DE-2
Die Gruppe "SELLER CONTACT" (BG-6) muss übermittelt werden.
In practice: Add a seller contact group: a contact person or department (BT-41), phone (BT-42) and e-mail (BT-43) are all mandatory in XRechnung.
BR-DE-3
Das Element "Seller city" (BT-37) muss übermittelt werden.
BR-DE-4
Das Element "Seller post code" (BT-38) muss übermittelt werden.
BR-DE-5
Das Element "Seller contact point" (BT-41) muss übermittelt werden.
BR-DE-6
Das Element "Seller contact telephone number" (BT-42) muss übermittelt werden.
BR-DE-7
Das Element "Seller contact email address" (BT-43) muss übermittelt werden.
BR-DE-8
Das Element "Buyer city" (BT-52) muss übermittelt werden.
BR-DE-9
Das Element "Buyer post code" (BT-53) muss übermittelt werden.
BR-DE-10
Das Element "Deliver to city" (BT-77) muss übermittelt werden, wenn die Gruppe "DELIVER TO ADDRESS" (BG-15) übermittelt wird.
BR-DE-11
Das Element "Deliver to post code" (BT-78) muss übermittelt werden, wenn die Gruppe "DELIVER TO ADDRESS" (BG-15) übermittelt wird.
BR-DE-14
Das Element "VAT category rate" (BT-119) muss übermittelt werden.
BR-DE-15
Das Element "Buyer reference" (BT-10) muss übermittelt werden.
In practice: BT-10 (buyer reference) is mandatory in XRechnung. For German public-sector buyers this is the Leitweg-ID they gave you; B2G platforms reject invoices without it.
BR-DE-16
Wenn in einer Rechnung die Steuercodes S, Z, E, AE, K, G, L oder M verwendet werden, muss mindestens eines der Elemente "Seller VAT identifier" (BT-31), "Seller tax registration identifier" (BT-32) oder "SELLER TAX REPRESENTATIVE PARTY" (BG-11) übermittelt werden.
BR-DE-17 (warning)
Mit dem Element "Invoice type code" (BT-3) sollen ausschließlich folgende Codes aus der Codeliste UNTDID 1001 übermittelt werden: 326 (Partial invoice), 380 (Commercial invoice), 384 (Corrected invoice), 389 (Self-billed invoice) und 381 (Credit note),875 (Partial construction invoice), 876 (Partial final construction invoice), 877 (Final construction invoice).
BR-DE-18
Skonto Zeilen in <name/> müssen diesem regulärem Ausdruck entsprechen: <value-of select="$XR-SKONTO-REGEX"/>. Die Informationen zur Gewährung von Skonto müssen wie folgt im Element "Payment terms" (BT-20) übermittelt werden: Anzugeben ist im ersten Segment "SKONTO", im zweiten "TAGE=n", im dritten "PROZENT=n". Prozentzahlen sind ohne Vorzeichen sowie mit Punkt getrennt von zwei Nachkommastellen anzugeben. Liegt dem zu berechnenden Betrag nicht BT-115, "fälliger Betrag" zugrunde, sondern nur ein Teil des fälligen Betrags der Rechnung, ist der Grundwert zur Berechnung von Skonto als viertes Segment "BASISBETRAG=n" gemäß dem semantischen Datentypen Amount anzugeben. Jeder Eintrag beginnt mit einer #, die Segmente sind mit einer # getrennt und eine Zeile schließt mit einer # ab. Am Ende einer vollständigen Skontoangabe muss ein XML-konformer Zeilenumbruch folgen. Alle Angaben zur Gewährung von Skonto müssen in Großbuchstaben gemacht werden. Zusätzliches Whitespace (Leerzeichen, Tabulatoren oder Zeilenumbrüche) ist nicht zulässig. Andere Zeichen oder Texte als in den oberen Vorgaben genannt sind nicht zulässig.
BR-DE-21 (warning)
Das Element "Specification identifier" (BT-24) soll syntaktisch der Kennung des Standards XRechnung entsprechen.
In practice: Use the full XRechnung customization id in BT-24, e.g. urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0.
BR-DE-22
Das "filename"-Attribut aller "EmbeddedDocumentBinaryObject"-Elemente muss eindeutig sein
BR-DE-23-a
Wenn BT-81 "Payment means type code" einen Schlüssel für Überweisungen enthält (30, 58), muss BG-17 "CREDIT TRANSFER" übermittelt werden.
In practice: Payment means 30/58 (credit transfer) require the bank account group: add the IBAN in BT-84.
BR-DE-23-b
Wenn BT-81 "Payment means type code" einen Schlüssel für Überweisungen enthält (30, 58), dürfen BG-18 und BG-19 nicht übermittelt werden.
BR-DE-24-a
Wenn BT-81 "Payment means type code" einen Schlüssel für Kartenzahlungen enthält (48, 54, 55), muss genau BG-18 "PAYMENT CARD INFORMATION" übermittelt werden.
BR-DE-24-b
Wenn BT-81 "Payment means type code" einen Schlüssel für Kartenzahlungen enthält (48, 54, 55), dürfen BG-17 und BG-19 nicht übermittelt werden.
BR-DE-25-a
Wenn BT-81 "Payment means type code" einen Schlüssel für Lastschriften enthält (59), muss genau BG-19 "DIRECT DEBIT" übermittelt werden.
BR-DE-25-b
Wenn BT-81 "Payment means type code" einen Schlüssel für Lastschriften enthält (59), dürfen BG-17 und BG-18 nicht übermittelt werden.
BR-DE-26 (warning)
Wenn im Element "Invoice type code" (BT-3) der Code 384 (Corrected invoice) übergeben wird, soll PRECEDING INVOICE REFERENCE BG-3 mind. einmal vorhanden sein.
BR-DE-27 (warning)
In BT-42 sollen mindestens drei Ziffern enthalten sein.
BR-DE-28 (warning)
In BT-43 soll genau ein @-Zeichen enthalten sein, welches nicht von einem Leerzeichen, einem Punkt, aber mindestens zwei Zeichen auf beiden Seiten flankiert werden soll. Ein Punkt sollte nicht am Anfang oder am Ende stehen.
BR-DE-30
Wenn "DIRECT DEBIT" BG-19 vorhanden ist, dann muss "Bank assigned creditor identifier" BT-90 übermittelt werden.
In practice: Direct debit (code 59) needs the SEPA creditor identifier (BT-90). In UBL it goes in the seller party identification with schemeID="SEPA".
BR-DE-31
Wenn "DIRECT DEBIT" BG-19 vorhanden ist, dann muss "Debited account identifier" BT-91 übermittelt werden.
BR-DE-CVD-01
Das Element <name /> "Contract reference" (BT-12) muss übermittelt werden.
BR-DE-CVD-02
Das Element <name /> "Tender or lot reference" (BT-17) muss übermittelt werden.
BR-DE-CVD-03
In einer Rechnung muss mindestens eine <name /> INVOICE LINE (BG-25) enthalten sein, in der der Scheme identifier von <name /> "Item classification identifier" (BT-158) den Wert 'CVD' und der <name /> "Item attribute name" (BT-160) den Wert 'cva' enthält.
BR-DE-CVD-04
Ein <name /> "Item classification identifier" (BT-158) mit dem Scheme identifier 'CVD' muss einen Wert aus der Liste der zulässigen Fahrzeugkategorien enthalten.
BR-DE-CVD-05
Wenn innerhalb von <name /> ITEM ATTRIBUTES (BG-32) der <name /> "Item attribute name" (BT-160) den Wert 'cva' hat, muss der <name /> "Item attribute value" (BT-161) einen der zulässigen Werte enthalten.
BR-DE-CVD-06-a
Wenn der Scheme identifier von <name /> "Item classification identifier" (BT-158) mit dem Wert 'CVD' angegeben ist, muss in derselben Rechnungszeile genau ein <name /> "Item attribute name" (BT-160) mit dem Wert 'cva' vorhanden sein.
BR-DE-CVD-06-b
Wenn <name /> "Item attribute name" (BT-160) mit dem Wert 'cva' angegeben ist, muss in derselben Rechnungszeile genau ein <name /> "Item classification identifier" (BT-158) mit dem Scheme identifier 'CVD' vorhanden sein.
BR-DE-TMP-32
Eine Rechnung sollte zur Angabe des Liefer-/Leistungsdatums entweder BT-72 "Actual delivery date", BG-14 "Invoicing period" oder in jeder Rechnungsposition BG-26 "Invoice line period" enthalten.
BR-DEC-01
The allowed maximum number of decimals for the Document level allowance amount (BT-92) is 2.
BR-DEC-02
The allowed maximum number of decimals for the Document level allowance base amount (BT-93) is 2.
BR-DEC-05
The allowed maximum number of decimals for the Document level charge amount (BT-99) is 2.
BR-DEC-06
The allowed maximum number of decimals for the Document level charge base amount (BT-100) is 2.
BR-DEC-09
The allowed maximum number of decimals for the Sum of Invoice line net amount (BT-106) is 2.
BR-DEC-10
The allowed maximum number of decimals for the Sum of allowanced on document level (BT-107) is 2.
BR-DEC-11
The allowed maximum number of decimals for the Sum of charges on document level (BT-108) is 2.
BR-DEC-12
The allowed maximum number of decimals for the Invoice total amount without VAT (BT-109) is 2.
BR-DEC-13
The allowed maximum number of decimals for the Invoice total VAT amount (BT-110) is 2.
BR-DEC-14
The allowed maximum number of decimals for the Invoice total amount with VAT (BT-112) is 2.
BR-DEC-15
The allowed maximum number of decimals for the Invoice total VAT amount in accounting currency (BT-111) is 2.
BR-DEC-16
The allowed maximum number of decimals for the Paid amount (BT-113) is 2.
BR-DEC-17
The allowed maximum number of decimals for the Rounding amount (BT-114) is 2.
BR-DEC-18
The allowed maximum number of decimals for the Amount due for payment (BT-115) is 2.
BR-DEC-19
The allowed maximum number of decimals for the VAT category taxable amount (BT-116) is 2.
BR-DEC-20
The allowed maximum number of decimals for the VAT category tax amount (BT-117) is 2.
BR-DEC-23
The allowed maximum number of decimals for the Invoice line net amount (BT-131) is 2.
BR-DEC-24
The allowed maximum number of decimals for the Invoice line allowance amount (BT-136) is 2.
BR-DEC-25
The allowed maximum number of decimals for the Invoice line allowance base amount (BT-137) is 2.
BR-DEC-27
The allowed maximum number of decimals for the Invoice line charge amount (BT-141) is 2.
BR-DEC-28
The allowed maximum number of decimals for the Invoice line charge base amount (BT-142) is 2.
BR-DEX-01
Das Element <name /> "Attached Document" (BT-125) benutzt einen nicht zulässigen MIME-Code: <value-of select="@mimeCode" />. Im Falle einer Extension darf zusätzlich zu der Liste der mime codes (definiert in Abschnitt 8.2, "Binary Object") der MIME-Code application/xml genutzt werden.
BR-DEX-03
Eine Sub Invoice Line (BG-DEX-01) muss genau eine "SUB INVOICE LINE VAT INFORMATION" (BG-DEX-06) enthalten.
BR-DEX-04
Any scheme identifier in <name/> MUST be coded using one of the ISO 6523 ICD list.
BR-DEX-05
Any scheme identifier in <name/> MUST be coded using one of the ISO 6523 ICD list.
BR-DEX-06
Any scheme identifier in <name/> MUST be coded using one of the ISO 6523 ICD list.
BR-DEX-07
Any scheme identifier for an Endpoint Identifier in <name/> MUST belong to the CEF EAS code list.
BR-DEX-08
Any scheme identifier for a Delivery location identifier in <name/> MUST be coded using one of the ISO 6523 ICD list.
BR-DEX-09
Amount due for payment (BT-115) = Invoice total amount with VAT (BT-112) - Paid amount (BT-113) + Rounding amount (BT-114) + Σ Third party payment amount (BT-DEX-002).
BR-DEX-10
Das Element "Third party payment type" BT-DEX-001 muss übermittelt werden, wenn die Gruppe "THIRD PARTY PAYMENT" (BG-DEX-09) übermittelt wird.
BR-DEX-11
Das Element "Third party payment amount" BT-DEX-002 muss übermittelt werden, wenn die Gruppe "THIRD PARTY PAYMENT" (BG-DEX-09) übermittelt wird.
BR-DEX-12
Das Element "Third party payment description" BT-DEX-003 muss übermittelt werden, wenn die Gruppe "THIRD PARTY PAYMENT" (BG-DEX-09) übermittelt wird.
BR-DEX-13
Die maximale Anzahl zulässiger Nachkommastellen für das Element "Third party payment amount" (BT-DEX-002) ist 2.
BR-DEX-14
Die Währungsangabe von "Third party payment amount" BT-DEX-002 muss BT-5 ("Invoice currency code") entsprechen.
BR-DEX-15 (warning)
This CII file might use the concept of Sub Invoice Lines. However XRechnung does not support this.
VAT: exempt (BR-E)
BR-E-01
An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Exempt from VAT" shall contain exactly one VAT breakdown (BG-23) with the VAT category code (BT-118) equal to "Exempt from VAT".
BR-E-02
An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Exempt from VAT" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
BR-E-03
An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Exempt from VAT" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
BR-E-04
An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Exempt from VAT" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
BR-E-05
In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Exempt from VAT", the Invoiced item VAT rate (BT-152) shall be 0 (zero).
BR-E-06
In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Exempt from VAT", the Document level allowance VAT rate (BT-96) shall be 0 (zero).
BR-E-07
In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Exempt from VAT", the Document level charge VAT rate (BT-103) shall be 0 (zero).
BR-E-08
In a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Exempt from VAT" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amounts (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Exempt from VAT".
BR-E-09
The VAT category tax amount (BT-117) In a VAT breakdown (BG-23) where the VAT category code (BT-118) equals "Exempt from VAT" shall equal 0 (zero).
BR-E-10
A VAT breakdown (BG-23) with VAT Category code (BT-118) "Exempt from VAT" shall have a VAT exemption reason code (BT-121) or a VAT exemption reason text (BT-120).
In practice: Exempt invoices (category E) must state why: add a VAT exemption reason text (BT-120) or a VATEX reason code (BT-121).
VAT: export (BR-G)
BR-G-01
An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Export outside the EU" shall contain in the VAT breakdown (BG-23) exactly one VAT category code (BT-118) equal with "Export outside the EU".
BR-G-02
An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Export outside the EU" shall contain the Seller VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63).
BR-G-03
An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Export outside the EU" shall contain the Seller VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63).
BR-G-04
An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Export outside the EU" shall contain the Seller VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63).
BR-G-05
In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Export outside the EU" the Invoiced item VAT rate (BT-152) shall be 0 (zero).
BR-G-06
In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Export outside the EU" the Document level allowance VAT rate (BT-96) shall be 0 (zero).
BR-G-07
In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Export outside the EU" the Document level charge VAT rate (BT-103) shall be 0 (zero).
BR-G-08
In a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Export outside the EU" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amounts (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Export outside the EU".
BR-G-09
The VAT category tax amount (BT-117) in a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Export outside the EU" shall be 0 (zero).
BR-G-10
A VAT breakdown (BG-23) with the VAT Category code (BT-118) "Export outside the EU" shall have a VAT exemption reason code (BT-121), meaning "Export outside the EU" or the VAT exemption reason text (BT-120) "Export outside the EU" (or the equivalent standard text in another language).
VAT: intra-community (BR-IC)
BR-IC-01
An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Intra-community supply" shall contain in the VAT breakdown (BG-23) exactly one VAT category code (BT-118) equal with "Intra-community supply".
BR-IC-02
An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Intra-community supply" shall contain the Seller VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48).
BR-IC-03
An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Intra-community supply" shall contain the Seller VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48).
BR-IC-04
An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Intra-community supply" shall contain the Seller VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48).
BR-IC-05
In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Intracommunity supply" the Invoiced item VAT rate (BT-152) shall be 0 (zero).
BR-IC-06
In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Intra-community supply" the Document level allowance VAT rate (BT-96) shall be 0 (zero).
BR-IC-07
In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Intra-community supply" the Document level charge VAT rate (BT-103) shall be 0 (zero).
BR-IC-08
In a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Intra-community supply" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amounts (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Intra-community supply".
BR-IC-09
The VAT category tax amount (BT-117) in a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Intra-community supply" shall be 0 (zero).
BR-IC-10
A VAT breakdown (BG-23) with the VAT Category code (BT-118) "Intra-community supply" shall have a VAT exemption reason code (BT-121), meaning "Intra-community supply" or the VAT exemption reason text (BT-120) "Intra-community supply" (or the equivalent standard text in another language).
BR-IC-11
In an Invoice with a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Intra-community supply" the Actual delivery date (BT-72) or the Invoicing period (BG-14) shall not be blank.
In practice: Intra-community supplies must state the delivery date (BT-72) or an invoicing period (BG-14).
BR-IC-12
In an Invoice with a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Intra-community supply" the Deliver to country code (BT-80) shall not be blank.
In practice: Intra-community supplies must state the destination: add a deliver-to address with country code (BT-80).
VAT: not subject (BR-O)
BR-O-01
An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Not subject to VAT" shall contain exactly one VAT breakdown group (BG-23) with the VAT category code (BT-118) equal to "Not subject to VAT".
In practice: "Not subject to VAT" (category O) invoices must contain exactly one VAT breakdown row with category O — and no VAT identifiers or rates anywhere.
BR-O-02
An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Not subject to VAT" shall not contain the Seller VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) or the Buyer VAT identifier (BT-48).
BR-O-03
An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Not subject to VAT" shall not contain the Seller VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) or the Buyer VAT identifier (BT-48).
BR-O-04
An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Not subject to VAT" shall not contain the Seller VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) or the Buyer VAT identifier (BT-48).
BR-O-05
An Invoice line (BG-25) where the VAT category code (BT-151) is "Not subject to VAT" shall not contain an Invoiced item VAT rate (BT-152).
BR-O-06
A Document level allowance (BG-20) where VAT category code (BT-95) is "Not subject to VAT" shall not contain a Document level allowance VAT rate (BT-96).
BR-O-07
A Document level charge (BG-21) where the VAT category code (BT-102) is "Not subject to VAT" shall not contain a Document level charge VAT rate (BT-103).
BR-O-08
In a VAT breakdown (BG-23) where the VAT category code (BT-118) is " Not subject to VAT" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amounts (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Not subject to VAT".
BR-O-09
The VAT category tax amount (BT-117) in a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Not subject to VAT" shall be 0 (zero).
BR-O-10
A VAT breakdown (BG-23) with VAT Category code (BT-118) " Not subject to VAT" shall have a VAT exemption reason code (BT-121), meaning " Not subject to VAT" or a VAT exemption reason text (BT-120) " Not subject to VAT" (or the equivalent standard text in another language).
BR-O-11
An Invoice that contains a VAT breakdown group (BG-23) with a VAT category code (BT-118) "Not subject to VAT" shall not contain other VAT breakdown groups (BG-23).
BR-O-12
An Invoice that contains a VAT breakdown group (BG-23) with a VAT category code (BT-118) "Not subject to VAT" shall not contain an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is not "Not subject to VAT".
BR-O-13
An Invoice that contains a VAT breakdown group (BG-23) with a VAT category code (BT-118) "Not subject to VAT" shall not contain Document level allowances (BG-20) where Document level allowance VAT category code (BT-95) is not "Not subject to VAT".
BR-O-14
An Invoice that contains a VAT breakdown group (BG-23) with a VAT category code (BT-118) "Not subject to VAT" shall not contain Document level charges (BG-21) where Document level charge VAT category code (BT-102) is not "Not subject to VAT".
VAT: standard rated (BR-S)
BR-S-01
An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Standard rated" shall contain in the VAT breakdown (BG-23) at least one VAT category code (BT-118) equal with "Standard rated".
BR-S-02
An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Standard rated" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
BR-S-03
An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Standard rated" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
BR-S-04
An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Standard rated" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
BR-S-05
In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Standard rated" the Invoiced item VAT rate (BT-152) shall be greater than zero.
In practice: Category S (standard rate) requires a rate greater than zero. For genuinely zero-rated supplies use category Z; for exempt supplies use E.
BR-S-06
In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Standard rated" the Document level allowance VAT rate (BT-96) shall be greater than zero.
BR-S-07
In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Standard rated" the Document level charge VAT rate (BT-103) shall be greater than zero.
BR-S-08
For each different value of VAT category rate (BT-119) where the VAT category code (BT-118) is "Standard rated", the VAT category taxable amount (BT-116) in a VAT breakdown (BG-23) shall equal the sum of Invoice line net amounts (BT-131) plus the sum of document level charge amounts (BT-99) minus the sum of document level allowance amounts (BT-92) where the VAT category code (BT-151, BT-102, BT-95) is "Standard rated" and the VAT rate (BT-152, BT-103, BT-96) equals the VAT category rate (BT-119).
In practice: For each rate under category S, the breakdown's taxable amount must equal the sum of lines (± allowances/charges) at that exact rate. Check that line rates and breakdown rates match to the decimal.
BR-S-09
The VAT category tax amount (BT-117) in a VAT breakdown (BG-23) where VAT category code (BT-118) is "Standard rated" shall equal the VAT category taxable amount (BT-116) multiplied by the VAT category rate (BT-119).
BR-S-10
A VAT breakdown (BG-23) with VAT Category code (BT-118) "Standard rate" shall not have a VAT exemption reason code (BT-121) or VAT exemption reason text (BT-120).
VAT: zero rated (BR-Z)
BR-Z-01
An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Zero rated" shall contain in the VAT breakdown (BG-23) exactly one VAT category code (BT-118) equal with "Zero rated".
In practice: Zero-rated items (category Z) need exactly one matching Z row in the VAT breakdown with tax amount 0.
BR-Z-02
An Invoice that contains an Invoice line where the Invoiced item VAT category code (BT-151) is "Zero rated" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
BR-Z-03
An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Zero rated" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
BR-Z-04
An Invoice that contains a Document level charge where the Document level charge VAT category code (BT-102) is "Zero rated" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
BR-Z-05
In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Zero rated" the Invoiced item VAT rate (BT-152) shall be 0 (zero).
BR-Z-06
In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Zero rated" the Document level allowance VAT rate (BT-96) shall be 0 (zero).
BR-Z-07
In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Zero rated" the Document level charge VAT rate (BT-103) shall be 0 (zero).
BR-Z-08
In a VAT breakdown (BG-23) where VAT category code (BT-118) is "Zero rated" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amount (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Zero rated".
BR-Z-09
The VAT category tax amount (BT-117) in a VAT breakdown (BG-23) where VAT category code (BT-118) is "Zero rated" shall equal 0 (zero).
BR-Z-10
A VAT breakdown (BG-23) with VAT Category code (BT-118) "Zero rated" shall not have a VAT exemption reason code (BT-121) or VAT exemption reason text (BT-120).
Peppol BIS Billing 3.0
PEPPOL-EN16931-CL001
Mime code must be according to subset of IANA code list.
PEPPOL-EN16931-CL002
Reason code MUST be according to subset of UNCL 5189 D.16B.
PEPPOL-EN16931-CL003
Reason code MUST be according to UNCL 7161 D.16B.
PEPPOL-EN16931-CL006
Invoice period description code must be according to UNCL 2005 D.16B.
PEPPOL-EN16931-CL007
Currency code must be according to ISO 4217:2005
PEPPOL-EN16931-CL008
Electronic address identifier scheme must be from the codelist "Electronic Address Identifier Scheme"
PEPPOL-EN16931-F001
A date MUST be formatted YYYY-MM-DD.
PEPPOL-EN16931-P0100
Invoice type code MUST be set according to the profile.
PEPPOL-EN16931-P0101
Credit note type code MUST be set according to the profile.
PEPPOL-EN16931-P0104
Tax Category G MUST be used when exemption reason code is VATEX-EU-G
PEPPOL-EN16931-P0105
Tax Category O MUST be used when exemption reason code is VATEX-EU-O
PEPPOL-EN16931-P0106
Tax Category K MUST be used when exemption reason code is VATEX-EU-IC
PEPPOL-EN16931-P0107
Tax Category AE MUST be used when exemption reason code is VATEX-EU-AE
PEPPOL-EN16931-P0108
Tax Category E MUST be used when exemption reason code is VATEX-EU-D
PEPPOL-EN16931-P0109
Tax Category E MUST be used when exemption reason code is VATEX-EU-F
PEPPOL-EN16931-P0110
Tax Category E MUST be used when exemption reason code is VATEX-EU-I
PEPPOL-EN16931-P0111
Tax Category E MUST be used when exemption reason code is VATEX-EU-J
PEPPOL-EN16931-P0112
Invoice type code 326 or 384 are only allowed when both buyer and seller are German organizations
PEPPOL-EN16931-R001
Business process MUST be provided.
PEPPOL-EN16931-R002
No more than one note is allowed on document level, unless both the buyer and seller are German organizations.
PEPPOL-EN16931-R003
A buyer reference or purchase order reference MUST be provided.
PEPPOL-EN16931-R004
Specification identifier MUST have the value 'urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0'.
PEPPOL-EN16931-R005
VAT accounting currency code MUST be different from invoice currency code when provided.
PEPPOL-EN16931-R007
Business process MUST be in the format 'urn:fdc:peppol.eu:2017:poacc:billing:NN:1.0' where NN indicates the process number.
PEPPOL-EN16931-R008
Document MUST not contain empty elements.
PEPPOL-EN16931-R010
Buyer electronic address MUST be provided
PEPPOL-EN16931-R020
Seller electronic address MUST be provided
PEPPOL-EN16931-R040
Allowance/charge amount must equal base amount * percentage/100 if base amount and percentage exists
PEPPOL-EN16931-R041
Allowance/charge base amount MUST be provided when allowance/charge percentage is provided.
PEPPOL-EN16931-R042
Allowance/charge percentage MUST be provided when allowance/charge base amount is provided.
PEPPOL-EN16931-R043
Allowance/charge ChargeIndicator value MUST equal 'true' or 'false'
PEPPOL-EN16931-R044
Charge on price level is NOT allowed. Only value 'false' allowed.
PEPPOL-EN16931-R046
Item net price MUST equal (Gross price - Allowance amount) when gross price is provided.
PEPPOL-EN16931-R051
All currencyID attributes must have the same value as the invoice currency code (BT-5), except for the invoice total VAT amount in accounting currency (BT-111).
PEPPOL-EN16931-R053
Only one tax total with tax subtotals MUST be provided.
PEPPOL-EN16931-R054
Only one tax total without tax subtotals MUST be provided when tax currency code is provided.
PEPPOL-EN16931-R055
Invoice total VAT amount and Invoice total VAT amount in accounting currency MUST have the same operational sign
PEPPOL-EN16931-R061
Mandate reference MUST be provided for direct debit.
PEPPOL-EN16931-R080
Only one project reference is allowed on document level
PEPPOL-EN16931-R100
Only one invoiced object is allowed pr line
PEPPOL-EN16931-R101
Element Document reference can only be used for Invoice line object
PEPPOL-EN16931-R110
Start date of line period MUST be within invoice period.
PEPPOL-EN16931-R111
End date of line period MUST be within invoice period.
PEPPOL-EN16931-R120
Invoice line net amount MUST equal (Invoiced quantity * (Item net price/item price base quantity) + Sum of invoice line charge amount - sum of invoice line allowance amount
PEPPOL-EN16931-R121
Base quantity MUST be a positive number above zero.
PEPPOL-EN16931-R130
Unit code of price base quantity MUST be same as invoiced quantity.
Want these checks in your own stack?
This page is generated from the einvoice-kit engine — the same ~165 rules run in the browser validator, the CLI (npx einvoice-kit validate invoice.xml) and the TypeScript library. National rule packs (XRechnung BR-DE, Peppol) are on the roadmap.