einvoice / EN 16931 / XRechnung rule reference

Rule index

Every EN 16931 / XRechnung business rule the einvoice engine can fire, grouped by rule family, one row per rule. The row gives you the answer most lookups actually need — engine severity, profile, the BT/BG business terms the rule touches and the XML location it points at. The rule id links to that rule's own page, which adds the one-line fix in English and German and the verbatim official Schematron assert.

297 rules in total — 284 fatal, 12 warning, 1 information — across 21 families. Family headings are the standard EN 16931 / XRechnung rule-family labels; every cell below is rendered from the remediation catalog the engine itself validates against. The bindings are not uniform: 281 of the 297 bind both invoice syntaxes, 12 of the 297 bind UBL-2.1 only and 4 of the 297 bind UN/CEFACT-CII only, as published per rule id in export/rules.json and shown in the Syntax column. Back to the overview.

Profile says which artifact asserts the rule: en16931 for the 198 rules that come from the EN 16931 UBL Schematron (they fire for any EN 16931 invoice), xrechnung for the 99 that come from the German KoSIT XRechnung Schematron (they fire only when the invoice claims an XRechnung customization). Severity is what the engine does: fatal fails the run, warning and information are reported without failing it unless you raise the threshold. Syntax is which invoice syntax the rule binds, joined on rule id from export/rules.json: a cell naming both UBL-2.1 and UN/CEFACT-CII means the rule fires against either, a cell naming one means it fires only against that one — so a shop that emits a single syntax can see which rows are its own. XML location is the element the rule is anchored to, written as the UBL/CII path fragment the report prints.

Every row has a stable anchor equal to its rule id, so https://verifyhash.com/einvoice/rules/#BR-DE-15 opens this page at that rule — usable in a support reply, a ticket or a CI log.

BR (58)

Core EN 16931 content and cardinality rules.

RuleRequirementSeverityProfileFamilySyntaxBT/BG termsXML location
BR-01An Invoice shall have a Specification identifier (BT-24).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-24cbc:CustomizationID
BR-02An Invoice shall have an Invoice number (BT-1).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-1cbc:ID
BR-03An Invoice shall have an Invoice issue date (BT-2).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-2cbc:IssueDate
BR-04An Invoice shall have an Invoice type code (BT-3).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-3cbc:InvoiceTypeCode
BR-05An Invoice shall have an Invoice currency code (BT-5).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-5cbc:DocumentCurrencyCode
BR-06An Invoice shall contain the Seller name (BT-27).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-27cac:AccountingSupplierParty/cac:Party/cac:PartyLegalEntity/cbc:RegistrationName
BR-07An Invoice shall contain the Buyer name (BT-44).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-44cac:AccountingCustomerParty/cac:Party/cac:PartyLegalEntity/cbc:RegistrationName
BR-08An Invoice shall contain the Seller postal address (BG-5).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-5cac:AccountingSupplierParty/cac:Party/cac:PostalAddress
BR-09The Seller postal address (BG-5) shall contain a Seller country code (BT-40).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-5, BT-40cac:AccountingSupplierParty/cac:Party/cac:PostalAddress
BR-10An Invoice shall contain the Buyer postal address (BG-8).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-8cac:AccountingCustomerParty/cac:Party/cac:PostalAddress
BR-11The Buyer postal address shall contain a Buyer country code (BT-55).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-55cac:AccountingCustomerParty/cac:Party/cac:PostalAddress
BR-12An Invoice shall have the Sum of Invoice line net amount (BT-106).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-106cac:LegalMonetaryTotal
BR-13An Invoice shall have the Invoice total amount without VAT (BT-109).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-109cac:LegalMonetaryTotal
BR-14An Invoice shall have the Invoice total amount with VAT (BT-112).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-112cac:LegalMonetaryTotal
BR-15An Invoice shall have the Amount due for payment (BT-115).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-115cac:LegalMonetaryTotal
BR-16An Invoice shall have at least one Invoice line (BG-25).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-25cac:InvoiceLine
BR-17The Payee name (BT-59) shall be provided in the Invoice, if the Payee (BG-10) is different from the Seller (BG-4).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-4, BG-10, BT-59cac:PayeeParty
BR-18The 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).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-4, BG-11, BT-62cac:TaxRepresentativeParty
BR-19The 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).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-4, BG-11, BG-12cac:TaxRepresentativeParty
BR-20The 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).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-4, BG-11, BG-12, BT-69cac:TaxRepresentativeParty/cac:PostalAddress
BR-21Each Invoice line shall have an Invoice line identifier (BT-126).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-25, BT-126cac:InvoiceLine
BR-22Each Invoice line shall have an Invoiced quantity (BT-129).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-25, BT-129cac:InvoiceLine
BR-23An Invoice line (BG-25) shall have an Invoiced quantity unit of measure code (BT-130).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-25, BT-130cac:InvoiceLine
BR-24Each Invoice line shall have an Invoice line net amount (BT-131).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-25, BT-131cac:InvoiceLine
BR-25Each Invoice line (BG-25) shall contain the Item name (BT-153).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-25, BT-153cac:InvoiceLine
BR-26Each Invoice line shall contain the Item net price (BT-146).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-25, BT-146cac:InvoiceLine
BR-27The Item net price (BT-146) shall NOT be negative.fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-146cac:InvoiceLine
BR-28The Item gross price (BT-148) shall NOT be negative.fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-148cac:InvoiceLine
BR-29If both Invoicing period start date (BT-73) and end date (BT-74) are given then the end date shall be later or equal to the start date.fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-73, BT-74cac:InvoicePeriod
BR-30If both Invoice line period start date (BT-134) and end date (BT-135) are given then the end date shall be later or equal to the start date.fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-134, BT-135cac:InvoiceLine/cac:InvoicePeriod
BR-31Each Document level allowance (BG-20) shall have a Document level allowance amount (BT-92).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-20, BT-92/ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = false()]
BR-32Each Document level allowance (BG-20) shall have a Document level allowance VAT category code (BT-95).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-20, BT-95/ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = false()]
BR-33Each Document level allowance (BG-20) shall have a Document level allowance reason (BT-97) or a Document level allowance reason code (BT-98).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-20, BT-97, BT-98/ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = false()]
BR-36Each Document level charge (BG-21) shall have a Document level charge amount (BT-99).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-21, BT-99/ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = true()]
BR-37Each Document level charge (BG-21) shall have a Document level charge VAT category code (BT-102).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-21, BT-102/ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = true()]
BR-38Each Document level charge (BG-21) shall have a Document level charge reason (BT-104) or a Document level charge reason code (BT-105).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-21, BT-104, BT-105/ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = true()]
BR-41Each Invoice line allowance (BG-27) shall have an Invoice line allowance amount (BT-136).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-27, BT-136//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = false()]
BR-42Each Invoice line allowance (BG-27) shall have an Invoice line allowance reason (BT-139) or an Invoice line allowance reason code (BT-140).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-27, BT-139, BT-140//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = false()]
BR-43Each Invoice line charge (BG-28) shall have an Invoice line charge amount (BT-141).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-28, BT-141//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = true()]
BR-44Each Invoice line charge (BG-28) shall have an Invoice line charge reason (BT-144) or an Invoice line charge reason code (BT-145).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-28, BT-144, BT-145//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = true()]
BR-45Each VAT breakdown (BG-23) shall have a VAT category taxable amount (BT-116).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-23, BT-116cac:TaxTotal/cac:TaxSubtotal
BR-46Each VAT breakdown (BG-23) shall have a VAT category tax amount (BT-117).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-23, BT-117cac:TaxTotal/cac:TaxSubtotal
BR-47Each VAT breakdown (BG-23) shall be defined through a VAT category code (BT-118).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-23, BT-118cac:TaxTotal/cac:TaxSubtotal
BR-48Each VAT breakdown (BG-23) shall have a VAT category rate (BT-119), except if the Invoice is not subject to VAT.fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-23, BT-119cac:TaxTotal/cac:TaxSubtotal
BR-49A Payment instruction (BG-16) shall specify the Payment means type code (BT-81).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-16, BT-81cac:PaymentMeans
BR-50A Payment account identifier (BT-84) shall be present if Credit transfer (BG-17) information is provided in the Invoice.fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-17, BT-84cac:PaymentMeans[cbc:PaymentMeansCode='30' or cbc:PaymentMeansCode='58']/cac:PayeeFinancialAccount
BR-51The last 4 to 6 digits of the Payment card primary account number (BT-87) shall be present if Payment card information (BG-18) is provided.warningen16931BRUBL-2.1 and UN/CEFACT-CIIBG-18, BT-87cac:PaymentMeans/cac:CardAccount/cbc:PrimaryAccountNumberID
BR-52Each Additional supporting document (BG-24) shall contain a Supporting document reference (BT-122).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-24, BT-122cac:AdditionalDocumentReference
BR-53If the VAT accounting currency code (BT-6) is present, then the Invoice total VAT amount in accounting currency (BT-111) shall be provided.fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-6, BT-111cbc:TaxCurrencyCode
BR-54Each Item attribute (BG-32) shall contain an Item attribute name (BT-160) and an Item attribute value (BT-161).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-32, BT-160, BT-161//cac:AdditionalItemProperty
BR-55Each Preceding Invoice reference (BG-3) shall contain a Preceding Invoice reference (BT-25).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-3, BT-25cac:BillingReference
BR-56Each Seller tax representative party (BG-11) shall have a Seller tax representative VAT identifier (BT-63).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-11, BT-63cac:TaxRepresentativeParty
BR-57Each Deliver to address (BG-15) shall contain a Deliver to country code (BT-80).fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBG-15, BT-80cac:Delivery/cac:DeliveryLocation/cac:Address
BR-61If 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.fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-81, BT-84cac:PaymentMeans
BR-62The Seller electronic address (BT-34) shall have a Scheme identifier.fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-34cac:AccountingSupplierParty/cac:Party/cbc:EndpointID
BR-63The Buyer electronic address (BT-49) shall have a Scheme identifier.fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-49cac:AccountingCustomerParty/cac:Party/cbc:EndpointID
BR-64The Item standard identifier (BT-157) shall have a Scheme identifier.fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-157cac:InvoiceLine/cac:Item/cac:StandardItemIdentification/cbc:ID
BR-65The Item classification identifier (BT-158) shall have a Scheme identifier.fatalen16931BRUBL-2.1 and UN/CEFACT-CIIBT-158cac:InvoiceLine/cac:Item/cac:CommodityClassification/cbc:ItemClassificationCode

BR-CL (23)

Code-list rules — a coded value must come from the referenced official code list.

RuleRequirementSeverityProfileFamilySyntaxBT/BG termsXML location
BR-CL-01The document type code (BT-3) MUST be coded per UNTDID 1001.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIBT-3cbc:InvoiceTypeCode
BR-CL-03CurrencyID MUST be coded using ISO 4217 alpha-3.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIcbc:Amount
BR-CL-04Invoice currency code (BT-5) MUST be coded using ISO 4217 alpha-3.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIBT-5cbc:DocumentCurrencyCode
BR-CL-05Tax currency code (BT-6) MUST be coded using ISO 4217 alpha-3.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIBT-6cbc:TaxCurrencyCode
BR-CL-06Value added tax point date code MUST be coded using a restriction of UNTDID 2005 (UBL) / UNTDID 2475 (CII).fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIcac:InvoicePeriod/cbc:DescriptionCode
BR-CL-07Object identifier identification scheme identifier MUST be coded using a restriction of UNTDID 1153.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIcac:AdditionalDocumentReference[cbc:DocumentTypeCode = '130']/cbc:ID[@schemeID]
BR-CL-08Invoice note subject code MUST be coded using UNTDID 4451.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CII/ubl:Invoice/cbc:Note
BR-CL-10Any identifier identification scheme identifier MUST be coded using one of the ISO 6523 ICD list.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIcac:PartyIdentification/cbc:ID[@schemeID]
BR-CL-11Any registration identifier identification scheme identifier MUST be coded using one of the ISO 6523 ICD list.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIcac:PartyLegalEntity/cbc:CompanyID[@schemeID]
BR-CL-13Item classification scheme identifier MUST be a UNTDID 7143 code.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIcac:CommodityClassification/cbc:ItemClassificationCode[@listID]
BR-CL-14Country codes MUST be coded using ISO 3166-1 alpha-2.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIcac:Country/cbc:IdentificationCode
BR-CL-15Item origin country codes MUST be coded using ISO 3166-1.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIcac:OriginCountry/cbc:IdentificationCode
BR-CL-16Payment means MUST be coded using the UNCL 4461 code list.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIcac:PaymentMeans/cbc:PaymentMeansCode
BR-CL-17Invoice tax categories MUST be coded using the UNCL 5305 subset.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIcac:TaxCategory/cbc:ID
BR-CL-18Invoice tax categories MUST be coded using the UNCL 5305 subset.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIcac:ClassifiedTaxCategory/cbc:ID
BR-CL-19Coded allowance reasons MUST belong to the UNCL 5189 code list.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIcac:AllowanceCharge[cbc:ChargeIndicator = false()]/cbc:AllowanceChargeReasonCode
BR-CL-20Coded charge reasons MUST belong to the UNCL 7161 code list.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIcac:AllowanceCharge[cbc:ChargeIndicator = true()]/cbc:AllowanceChargeReasonCode
BR-CL-21Item standard identifier scheme MUST be an ISO 6523 ICD code.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIcac:StandardItemIdentification/cbc:ID[@schemeID]
BR-CL-22VAT exemption reason code MUST belong to the CEF VATEX list.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIcbc:TaxExemptionReasonCode
BR-CL-23Unit code MUST be coded per UN/ECE Rec 20 with Rec 21 extension.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIcbc:InvoicedQuantity[@unitCode]
BR-CL-24For a MIME code in an attribute use the MIMEMediaType subset.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIcbc:EmbeddedDocumentBinaryObject[@mimeCode]
BR-CL-25Endpoint identifier scheme identifier MUST belong to the CEF EAS code list.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIcbc:EndpointID[@schemeID]
BR-CL-26Delivery location identifier scheme identifier MUST belong to the ISO 6523 ICD code list.fatalen16931BR-CLUBL-2.1 and UN/CEFACT-CIIcac:DeliveryLocation/cbc:ID[@schemeID]

BR-CO (19)

Calculation and consistency rules (cross-total arithmetic).

RuleRequirementSeverityProfileFamilySyntaxBT/BG termsXML location
BR-CO-03Value added tax point date (BT-7) and Value added tax point date code (BT-8) are mutually exclusive.fatalen16931BR-COUBL-2.1 and UN/CEFACT-CIIBT-7, BT-8cac:LegalMonetaryTotal
BR-CO-04Each Invoice line (BG-25) shall be categorized with an Invoiced item VAT category code (BT-151).fatalen16931BR-COUBL-2.1 and UN/CEFACT-CIIBG-25, BT-151cac:InvoiceLine
BR-CO-09The 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'.fatalen16931BR-COUBL-2.1 and UN/CEFACT-CIIBT-31, BT-48, BT-63//cac:PartyTaxScheme[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-CO-10Sum of Invoice line net amount (BT-106) = Σ line net amount (BT-131).fatalen16931BR-COUBL-2.1 and UN/CEFACT-CIIBT-106, BT-131cac:LegalMonetaryTotal
BR-CO-11Sum of allowances on document level (BT-107) = Σ Document level allowance amount (BT-92).fatalen16931BR-COUBL-2.1 and UN/CEFACT-CIIBT-92, BT-107cac:LegalMonetaryTotal
BR-CO-12Sum of charges on document level (BT-108) = Σ Document level charge amount (BT-99).fatalen16931BR-COUBL-2.1 and UN/CEFACT-CIIBT-99, BT-108cac:LegalMonetaryTotal
BR-CO-13Invoice total without VAT (BT-109) = Σ line net (BT-131) − document allowances (BT-107) + document charges (BT-108).fatalen16931BR-COUBL-2.1 and UN/CEFACT-CIIBT-107, BT-108, BT-109, BT-131cac:LegalMonetaryTotal
BR-CO-14Invoice total VAT amount (BT-110) = Σ VAT category tax amount (BT-117).fatalen16931BR-COUBL-2.1 and UN/CEFACT-CIIBT-110, BT-117/ubl:Invoice/cac:TaxTotal
BR-CO-15Invoice total with VAT (BT-112) = total without VAT (BT-109) + total VAT (BT-110).fatalen16931BR-COUBL-2.1 and UN/CEFACT-CIIBT-109, BT-110, BT-112cac:LegalMonetaryTotal
BR-CO-16Amount due for payment (BT-115) = Invoice total with VAT (BT-112) − Paid amount (BT-113) + Rounding amount (BT-114).fatalen16931BR-COUBL-2.1 and UN/CEFACT-CIIBT-112, BT-113, BT-114, BT-115cac:LegalMonetaryTotal
BR-CO-17VAT category tax amount (BT-117) = VAT category taxable amount (BT-116) x (VAT category rate (BT-119) / 100), rounded to two decimals.fatalen16931BR-COUBL-2.1 and UN/CEFACT-CIIBT-116, BT-117, BT-119cac:TaxTotal/cac:TaxSubtotal
BR-CO-18An Invoice shall at least have one VAT breakdown group (BG-23).fatalen16931BR-COUBL-2.1 and UN/CEFACT-CIIBG-23cac:TaxTotal/cac:TaxSubtotal
BR-CO-19If 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.fatalen16931BR-COUBL-2.1 and UN/CEFACT-CIIBG-14, BT-73, BT-74cac:InvoicePeriod
BR-CO-20If 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.fatalen16931BR-COUBL-2.1 and UN/CEFACT-CIIBG-26, BT-134, BT-135cac:InvoiceLine/cac:InvoicePeriod
BR-CO-21Each 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.fatalen16931BR-COUBL-2.1 and UN/CEFACT-CIIBG-20, BT-97, BT-98/ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = false()]
BR-CO-22Each 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.fatalen16931BR-COUBL-2.1 and UN/CEFACT-CIIBG-21, BT-104, BT-105/ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = true()]
BR-CO-23Each 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.fatalen16931BR-COUBL-2.1 and UN/CEFACT-CIIBG-27, BT-139, BT-140//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = false()]
BR-CO-24Each 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.fatalen16931BR-COUBL-2.1 and UN/CEFACT-CIIBG-28, BT-144, BT-145//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = true()]
BR-CO-26In 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.fatalen16931BR-COUBL-2.1 and UN/CEFACT-CIIBT-29, BT-30, BT-31cac:AccountingSupplierParty

BR-DEC (21)

Decimal-places rules — amounts must not exceed the allowed number of decimals.

RuleRequirementSeverityProfileFamilySyntaxBT/BG termsXML location
BR-DEC-01Max 2 decimals for the Document level allowance amount (BT-92).fatalxrechnungBR-DECUBL-2.1 and UN/CEFACT-CIIBT-92/ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = false()]
BR-DEC-02Max 2 decimals for the Document level allowance base amount (BT-93).fatalxrechnungBR-DECUBL-2.1 and UN/CEFACT-CIIBT-93/ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = false()]
BR-DEC-05Max 2 decimals for the Document level charge amount (BT-99).fatalxrechnungBR-DECUBL-2.1 and UN/CEFACT-CIIBT-99/ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = true()]
BR-DEC-06Max 2 decimals for the Document level charge base amount (BT-100).fatalxrechnungBR-DECUBL-2.1 and UN/CEFACT-CIIBT-100/ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = true()]
BR-DEC-09Max 2 decimals for the Sum of Invoice line net amount (BT-106).fatalxrechnungBR-DECUBL-2.1 and UN/CEFACT-CIIBT-106cac:LegalMonetaryTotal
BR-DEC-10Max 2 decimals for the Sum of allowances on document level (BT-107).fatalxrechnungBR-DECUBL-2.1 and UN/CEFACT-CIIBT-107cac:LegalMonetaryTotal
BR-DEC-11Max 2 decimals for the Sum of charges on document level (BT-108).fatalxrechnungBR-DECUBL-2.1 and UN/CEFACT-CIIBT-108cac:LegalMonetaryTotal
BR-DEC-12Max 2 decimals for the Invoice total amount without VAT (BT-109).fatalxrechnungBR-DECUBL-2.1 and UN/CEFACT-CIIBT-109cac:LegalMonetaryTotal
BR-DEC-13Max 2 decimals for the Invoice total VAT amount (BT-110).fatalxrechnungBR-DECUN/CEFACT-CIIBT-110cac:TaxTotal/cbc:TaxAmount
BR-DEC-14Max 2 decimals for the Invoice total amount with VAT (BT-112).fatalxrechnungBR-DECUBL-2.1 and UN/CEFACT-CIIBT-112cac:LegalMonetaryTotal
BR-DEC-15Max 2 decimals for the Invoice total VAT amount in accounting currency (BT-111).fatalxrechnungBR-DECUN/CEFACT-CIIBT-111cac:TaxTotal/cbc:TaxAmount
BR-DEC-16Max 2 decimals for the Paid amount (BT-113).fatalxrechnungBR-DECUBL-2.1 and UN/CEFACT-CIIBT-113cac:LegalMonetaryTotal
BR-DEC-17Max 2 decimals for the Rounding amount (BT-114).fatalxrechnungBR-DECUBL-2.1 and UN/CEFACT-CIIBT-114cac:LegalMonetaryTotal
BR-DEC-18Max 2 decimals for the Amount due for payment (BT-115).fatalxrechnungBR-DECUBL-2.1 and UN/CEFACT-CIIBT-115cac:LegalMonetaryTotal
BR-DEC-19Max 2 decimals for the VAT category taxable amount (BT-116).fatalxrechnungBR-DECUBL-2.1 and UN/CEFACT-CIIBT-116cac:TaxTotal/cac:TaxSubtotal
BR-DEC-20Max 2 decimals for the VAT category tax amount (BT-117).fatalxrechnungBR-DECUBL-2.1 and UN/CEFACT-CIIBT-117cac:TaxTotal/cac:TaxSubtotal
BR-DEC-23Max 2 decimals for the Invoice line net amount (BT-131).fatalxrechnungBR-DECUBL-2.1 and UN/CEFACT-CIIBT-131cac:InvoiceLine
BR-DEC-24Max 2 decimals for the Invoice line allowance amount (BT-136).fatalxrechnungBR-DECUBL-2.1 and UN/CEFACT-CIIBT-136//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = false()]
BR-DEC-25Max 2 decimals for the Invoice line allowance base amount (BT-137). Same line-level allowance context as BR-DEC-24, over ``cbc:BaseAmount`` (UBL) / ``../ram:BasisAmount`` (CII).fatalxrechnungBR-DECUBL-2.1 and UN/CEFACT-CIIBT-137//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = false()]
BR-DEC-27Max 2 decimals for the Invoice line charge amount (BT-141). The charge twin of BR-DEC-24 (ChargeIndicator true() / 'true').fatalxrechnungBR-DECUBL-2.1 and UN/CEFACT-CIIBT-141//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = true()]
BR-DEC-28Max 2 decimals for the Invoice line charge base amount (BT-142). The charge twin of BR-DEC-25.fatalxrechnungBR-DECUBL-2.1 and UN/CEFACT-CIIBT-142//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = true()]

BR-AE (10)

VAT breakdown rules for VAT category code AE.

RuleRequirementSeverityProfileFamilySyntaxBT/BG termsXML location
BR-AE-01'Reverse charge' (AE) items require exactly one AE VAT breakdown (BG-23) row.fatalen16931BR-AEUBL-2.1 and UN/CEFACT-CIIBG-20, BG-21, BG-23, BG-25, BT-95, BT-102, BT-118, BT-151cac:TaxCategory
BR-AE-02An Invoice with a Reverse charge (AE) Invoice line (BT-151) shall carry a Seller identifier AND a Buyer identifier.fatalen16931BR-AEUBL-2.1 and UN/CEFACT-CIIBG-25, BT-31, BT-32, BT-47, BT-48, BT-63, BT-151cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[cbc:ID='AE']
BR-AE-03An Invoice with a Reverse charge (AE) Document level allowance (BT-95) shall carry a Seller identifier AND a Buyer identifier.fatalen16931BR-AEUBL-2.1 and UN/CEFACT-CIIBG-20, BT-31, BT-32, BT-47, BT-48, BT-63, BT-95cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID='AE']
BR-AE-04An Invoice with a Reverse charge (AE) Document level charge (BT-102) shall carry a Seller identifier AND a Buyer identifier.fatalen16931BR-AEUBL-2.1 and UN/CEFACT-CIIBG-21, BT-31, BT-32, BT-47, BT-48, BT-63, BT-102cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID='AE']
BR-AE-05In a Reverse charge (AE) Invoice line the Invoiced item VAT rate (BT-152) shall be 0.fatalen16931BR-AEUBL-2.1 and UN/CEFACT-CIIBG-25, BT-151, BT-152cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'AE'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-AE-06In a Reverse charge (AE) Document level allowance the allowance VAT rate (BT-96) shall be 0.fatalen16931BR-AEUBL-2.1 and UN/CEFACT-CIIBG-20, BT-95, BT-96cac:AllowanceCharge[cbc:ChargeIndicator=false()]/cac:TaxCategory[normalize-space(cbc:ID)='AE'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-AE-07In a Reverse charge (AE) Document level charge the charge VAT rate (BT-103) shall be 0.fatalen16931BR-AEUBL-2.1 and UN/CEFACT-CIIBG-21, BT-102, BT-103cac:AllowanceCharge[cbc:ChargeIndicator=true()]/cac:TaxCategory[normalize-space(cbc:ID)='AE'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-AE-08The Reverse charge (AE) VAT breakdown taxable amount (BT-116) shall equal the exact sum of AE line nets − AE allowances + AE charges.fatalen16931BR-AEUBL-2.1 and UN/CEFACT-CIIBG-23, BT-92, BT-95, BT-99, BT-102, BT-116, BT-118, BT-131, BT-151/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'AE'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-AE-09The VAT category tax amount (BT-117) in a Reverse charge (AE) VAT breakdown shall equal 0.fatalen16931BR-AEUBL-2.1 and UN/CEFACT-CIIBG-23, BT-117, BT-118/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'AE'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-AE-10A VAT breakdown (BG-23) with a Reverse charge (AE) VAT category code (BT-118) SHALL have a VAT exemption reason code (BT-121) meaning 'Reverse charge' or the reason text (BT-120) 'Reverse charge' — the presence-required shape shared with BR-E-10.fatalen16931BR-AEUBL-2.1 and UN/CEFACT-CIIBG-23, BT-118, BT-120, BT-121/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'AE'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']

BR-AF (10)

VAT breakdown rules for VAT category code L (IGIC, Canary Islands general indirect tax).

RuleRequirementSeverityProfileFamilySyntaxBT/BG termsXML location
BR-AF-01IGIC (L) items and the VAT breakdown (BG-23) must agree.fatalen16931BR-AFUBL-2.1 and UN/CEFACT-CIIBG-20, BG-21, BG-23, BG-25, BT-95, BT-102, BT-118, BT-151cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID='L']
BR-AF-02An IGIC (L) Invoice line (BT-151) requires the Seller VAT identifier (BT-31), Seller tax registration id (BT-32) and/or Seller tax representative VAT id (BT-63) — both official disjuncts are VAT-scoped (the BR-Z/E-02 symmetric shape, not BR-S-02's scheme-agnostic tail).fatalen16931BR-AFUBL-2.1 and UN/CEFACT-CIIBG-25, BT-31, BT-32, BT-63, BT-151cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[cbc:ID='L']
BR-AF-03An IGIC (L) Document level allowance (BT-95) requires the Seller VAT identifier disjunct (same shape as BR-AF-02).fatalen16931BR-AFUBL-2.1 and UN/CEFACT-CIIBG-20, BT-31, BT-32, BT-63, BT-95cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID='L']
BR-AF-04An IGIC (L) Document level charge (BT-102) requires the Seller VAT identifier disjunct.fatalen16931BR-AFUBL-2.1 and UN/CEFACT-CIIBG-21, BT-31, BT-32, BT-63, BT-102cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID='L']
BR-AF-05In an IGIC (L) Invoice line the Invoiced item VAT rate (BT-152) shall be 0 (zero) or greater than zero.fatalen16931BR-AFUBL-2.1 and UN/CEFACT-CIIBG-25, BT-151, BT-152cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'L'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-AF-06In an IGIC (L) Document level allowance the allowance VAT rate (BT-96) shall be 0 (zero) or greater than zero.fatalen16931BR-AFUBL-2.1 and UN/CEFACT-CIIBG-20, BT-95, BT-96cac:AllowanceCharge[cbc:ChargeIndicator=false()]/cac:TaxCategory[normalize-space(cbc:ID)='L'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-AF-07In an IGIC (L) Document level charge the charge VAT rate (BT-103) shall be 0 (zero) or greater than zero.fatalen16931BR-AFUBL-2.1 and UN/CEFACT-CIIBG-21, BT-102, BT-103cac:AllowanceCharge[cbc:ChargeIndicator=true()]/cac:TaxCategory[normalize-space(cbc:ID)='L'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-AF-08For 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) shall equal the sum of Invoice line net amounts (BT-131) plus document level charge amounts (BT-99) minus document level allowance amounts (BT-92) where the VAT category code is 'IGIC' and the VAT rate equals BT-119.fatalen16931BR-AFUBL-2.1BG-23, BT-92, BT-95, BT-96, BT-99, BT-102, BT-103, BT-116, BT-118, BT-119, BT-131, BT-151, BT-152/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'L'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-AF-09The VAT category tax amount (BT-117) in an IGIC (L) VAT breakdown shall equal the VAT category taxable amount (BT-116) multiplied by the VAT category rate (BT-119).fatalen16931BR-AFUBL-2.1BG-23, BT-116, BT-117, BT-118, BT-119/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'L'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-AF-10A VAT breakdown (BG-23) with an IGIC (L) VAT category code (BT-118) shall not have a VAT exemption reason code (BT-121) or VAT exemption reason text (BT-120).fatalen16931BR-AFUBL-2.1 and UN/CEFACT-CIIBG-23, BT-118, BT-120, BT-121/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'L'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']

BR-AG (10)

VAT breakdown rules for VAT category code M (IPSI, tax for Ceuta and Melilla).

RuleRequirementSeverityProfileFamilySyntaxBT/BG termsXML location
BR-AG-01IPSI (M) items and the VAT breakdown (BG-23) must agree.fatalen16931BR-AGUBL-2.1 and UN/CEFACT-CIIBG-20, BG-21, BG-23, BG-25, BT-95, BT-102, BT-118, BT-151cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID='M']
BR-AG-02An IPSI (M) Invoice line (BT-151) requires the Seller VAT identifier (BT-31), Seller tax registration id (BT-32) and/or Seller tax representative VAT id (BT-63) — both official disjuncts are VAT-scoped (the BR-Z/E/AF-02 symmetric shape, not BR-S-02's scheme-agnostic tail).fatalen16931BR-AGUBL-2.1 and UN/CEFACT-CIIBG-25, BT-31, BT-32, BT-63, BT-151cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[cbc:ID='M']
BR-AG-03An IPSI (M) Document level allowance (BT-95) requires the Seller VAT identifier disjunct (same shape as BR-AG-02).fatalen16931BR-AGUBL-2.1 and UN/CEFACT-CIIBG-20, BT-31, BT-32, BT-63, BT-95cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID='M']
BR-AG-04An IPSI (M) Document level charge (BT-102) requires the Seller VAT identifier disjunct.fatalen16931BR-AGUBL-2.1 and UN/CEFACT-CIIBG-21, BT-31, BT-32, BT-63, BT-102cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID='M']
BR-AG-05In an IPSI (M) Invoice line the Invoiced item VAT rate (BT-152) shall be 0 (zero) or greater than zero.fatalen16931BR-AGUBL-2.1 and UN/CEFACT-CIIBG-25, BT-151, BT-152cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'M'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-AG-06In an IPSI (M) Document level allowance the allowance VAT rate (BT-96) shall be 0 (zero) or greater than zero.fatalen16931BR-AGUBL-2.1 and UN/CEFACT-CIIBG-20, BT-95, BT-96cac:AllowanceCharge[cbc:ChargeIndicator=false()]/cac:TaxCategory[normalize-space(cbc:ID)='M'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-AG-07In an IPSI (M) Document level charge the charge VAT rate (BT-103) shall be 0 (zero) or greater than zero.fatalen16931BR-AGUBL-2.1 and UN/CEFACT-CIIBG-21, BT-102, BT-103cac:AllowanceCharge[cbc:ChargeIndicator=true()]/cac:TaxCategory[normalize-space(cbc:ID)='M'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-AG-08For 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) shall equal the sum of Invoice line net amounts (BT-131) plus document level charge amounts (BT-99) minus document level allowance amounts (BT-92) where the VAT category code is 'IPSI' and the VAT rate equals BT-119.fatalen16931BR-AGUBL-2.1BG-23, BT-92, BT-95, BT-96, BT-99, BT-102, BT-103, BT-116, BT-118, BT-119, BT-131, BT-151, BT-152/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'M'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-AG-09The VAT category tax amount (BT-117) in an IPSI (M) VAT breakdown shall equal the VAT category taxable amount (BT-116) multiplied by the VAT category rate (BT-119).fatalen16931BR-AGUBL-2.1BG-23, BT-116, BT-117, BT-118, BT-119/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'M'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-AG-10A VAT breakdown (BG-23) with an IPSI (M) VAT category code (BT-118) shall not have a VAT exemption reason code (BT-121) or VAT exemption reason text (BT-120).fatalen16931BR-AGUBL-2.1 and UN/CEFACT-CIIBG-23, BT-118, BT-120, BT-121/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'M'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']

BR-B (2)

VAT breakdown rules for VAT category code B (Italian split payment).

RuleRequirementSeverityProfileFamilySyntaxBT/BG termsXML location
BR-B-01An Invoice where the VAT category code (BT-151, BT-95 or BT-102) is 'Split payment' shall be a domestic Italian invoice.fatalen16931BR-BUBL-2.1 and UN/CEFACT-CIIBT-95, BT-102, BT-151cbc:IdentificationCode
BR-B-02An Invoice with a 'Split payment' (B) VAT category code (BT-151, BT-95, BT-118 or BT-102) shall not also contain a 'Standard rated' (S) VAT category code.fatalen16931BR-BUBL-2.1 and UN/CEFACT-CIIBG-20, BG-21, BG-25, BT-95, BT-102, BT-118, BT-151cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID

BR-E (10)

VAT breakdown rules for VAT category code E.

RuleRequirementSeverityProfileFamilySyntaxBT/BG termsXML location
BR-E-01'Exempt from VAT' (E) items require exactly one E VAT breakdown (BG-23) row.fatalen16931BR-EUBL-2.1 and UN/CEFACT-CIIBG-20, BG-21, BG-23, BG-25, BT-95, BT-102, BT-118, BT-151cac:TaxCategory
BR-E-02An Exempt (E) Invoice line (BT-151) requires the Seller VAT identifier / tax registration id / tax representative VAT id.fatalen16931BR-EUBL-2.1 and UN/CEFACT-CIIBG-25, BT-31, BT-32, BT-63, BT-151cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[cbc:ID='E']
BR-E-03An Exempt (E) Document level allowance (BT-95) requires the Seller VAT identifier disjunct.fatalen16931BR-EUBL-2.1 and UN/CEFACT-CIIBG-20, BT-31, BT-32, BT-63, BT-95cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID='E']
BR-E-04An Exempt (E) Document level charge (BT-102) requires the Seller VAT identifier disjunct.fatalen16931BR-EUBL-2.1 and UN/CEFACT-CIIBG-21, BT-31, BT-32, BT-63, BT-102cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID='E']
BR-E-05In an Exempt (E) Invoice line the Invoiced item VAT rate (BT-152) shall be 0.fatalen16931BR-EUBL-2.1 and UN/CEFACT-CIIBG-25, BT-151, BT-152cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'E'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-E-06In an Exempt (E) Document level allowance the allowance VAT rate (BT-96) shall be 0.fatalen16931BR-EUBL-2.1 and UN/CEFACT-CIIBG-20, BT-95, BT-96cac:AllowanceCharge[cbc:ChargeIndicator=false()]/cac:TaxCategory[normalize-space(cbc:ID)='E'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-E-07In an Exempt (E) Document level charge the charge VAT rate (BT-103) shall be 0.fatalen16931BR-EUBL-2.1 and UN/CEFACT-CIIBG-21, BT-102, BT-103cac:AllowanceCharge[cbc:ChargeIndicator=true()]/cac:TaxCategory[normalize-space(cbc:ID)='E'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-E-08The Exempt (E) VAT breakdown taxable amount (BT-116) shall equal the sum of E line net amounts − E allowances + E charges (exact on UBL; the ±1 band around the round2 bucket sums on CII — see :func:`_breakdown_taxable_sum_mismatch`).fatalen16931BR-EUBL-2.1 and UN/CEFACT-CIIBG-23, BT-92, BT-95, BT-99, BT-102, BT-116, BT-118, BT-131, BT-151/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'E'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-E-09The VAT category tax amount (BT-117) in an Exempt (E) VAT breakdown shall equal 0.fatalen16931BR-EUBL-2.1 and UN/CEFACT-CIIBG-23, BT-117, BT-118/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'E'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-E-10A VAT breakdown (BG-23) with an Exempt from VAT (E) VAT category code (BT-118) SHALL have a VAT exemption reason code (BT-121) or text (BT-120) — the presence-required mirror image of BR-Z-10/BR-S-10.fatalen16931BR-EUBL-2.1 and UN/CEFACT-CIIBG-23, BT-118, BT-120, BT-121/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'E'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']

BR-G (10)

VAT breakdown rules for VAT category code G.

RuleRequirementSeverityProfileFamilySyntaxBT/BG termsXML location
BR-G-01'Export outside the EU' (G) items require exactly one G VAT breakdown (BG-23) row.fatalen16931BR-GUBL-2.1 and UN/CEFACT-CIIBG-20, BG-21, BG-23, BG-25, BT-95, BT-102, BT-118, BT-151cac:TaxCategory
BR-G-02An Invoice with an Export outside the EU (G) Invoice line (BT-151) shall carry a VAT-scoped Seller identifier (BT-31/BT-63).fatalen16931BR-GUBL-2.1 and UN/CEFACT-CIIBG-25, BT-31, BT-63, BT-151cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[cbc:ID='G']
BR-G-03An Invoice with an Export outside the EU (G) Document level allowance (BT-95) shall carry a VAT-scoped Seller identifier.fatalen16931BR-GUBL-2.1 and UN/CEFACT-CIIBG-20, BT-31, BT-63, BT-95cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID='G']
BR-G-04An Invoice with an Export outside the EU (G) Document level charge (BT-102) shall carry a VAT-scoped Seller identifier.fatalen16931BR-GUBL-2.1 and UN/CEFACT-CIIBG-21, BT-31, BT-63, BT-102cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID='G']
BR-G-05In an Export outside the EU (G) Invoice line the Invoiced item VAT rate (BT-152) shall be 0.fatalen16931BR-GUBL-2.1 and UN/CEFACT-CIIBG-25, BT-151, BT-152cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'G'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-G-06In an Export outside the EU (G) Document level allowance the allowance VAT rate (BT-96) shall be 0.fatalen16931BR-GUBL-2.1 and UN/CEFACT-CIIBG-20, BT-95, BT-96cac:AllowanceCharge[cbc:ChargeIndicator=false()]/cac:TaxCategory[normalize-space(cbc:ID)='G'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-G-07In an Export outside the EU (G) Document level charge the charge VAT rate (BT-103) shall be 0.fatalen16931BR-GUBL-2.1 and UN/CEFACT-CIIBG-21, BT-102, BT-103cac:AllowanceCharge[cbc:ChargeIndicator=true()]/cac:TaxCategory[normalize-space(cbc:ID)='G'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-G-08The Export outside the EU (G) VAT breakdown taxable amount (BT-116) shall equal the sum of G line nets − G allowances + G charges (exact on UBL; the ±1 band around the round2 bucket sums on CII — see :func:`_breakdown_taxable_sum_mismatch`).fatalen16931BR-GUBL-2.1 and UN/CEFACT-CIIBG-23, BT-92, BT-95, BT-99, BT-102, BT-116, BT-118, BT-131, BT-151/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'G'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-G-09The VAT category tax amount (BT-117) in an Export outside the EU (G) VAT breakdown shall equal 0.fatalen16931BR-GUBL-2.1 and UN/CEFACT-CIIBG-23, BT-117, BT-118/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'G'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-G-10A VAT breakdown (BG-23) with an Export outside the EU (G) VAT category code (BT-118) SHALL have a VAT exemption reason code (BT-121) or text (BT-120) — the presence-required shape shared with BR-E-10.fatalen16931BR-GUBL-2.1 and UN/CEFACT-CIIBG-23, BT-118, BT-120, BT-121/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'G'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']

BR-IC (12)

VAT breakdown rules for the intra-community VAT category.

RuleRequirementSeverityProfileFamilySyntaxBT/BG termsXML location
BR-IC-01'Intra-community supply' (K) items require exactly one K VAT breakdown (BG-23) row.fatalen16931BR-ICUBL-2.1 and UN/CEFACT-CIIBG-20, BG-21, BG-23, BG-25, BT-95, BT-102, BT-118, BT-151cac:TaxCategory
BR-IC-02An Invoice with an Intra-community supply (K) Invoice line (BT-151) shall carry a VAT-scoped Seller identifier AND the Buyer VAT identifier.fatalen16931BR-ICUBL-2.1 and UN/CEFACT-CIIBG-25, BT-31, BT-48, BT-63, BT-151cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[cbc:ID='K']
BR-IC-03An Invoice with an Intra-community supply (K) Document level allowance (BT-95) shall carry a VAT-scoped Seller identifier AND the Buyer VAT identifier.fatalen16931BR-ICUBL-2.1 and UN/CEFACT-CIIBG-20, BT-31, BT-48, BT-63, BT-95cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID='K']
BR-IC-04An Invoice with an Intra-community supply (K) Document level charge (BT-102) shall carry a VAT-scoped Seller identifier AND the Buyer VAT identifier.fatalen16931BR-ICUBL-2.1 and UN/CEFACT-CIIBG-21, BT-31, BT-48, BT-63, BT-102cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID='K']
BR-IC-05In an Intra-community supply (K) Invoice line the Invoiced item VAT rate (BT-152) shall be 0.fatalen16931BR-ICUBL-2.1 and UN/CEFACT-CIIBG-25, BT-151, BT-152cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'K'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-IC-06In an Intra-community supply (K) Document level allowance the allowance VAT rate (BT-96) shall be 0.fatalen16931BR-ICUBL-2.1 and UN/CEFACT-CIIBG-20, BT-95, BT-96cac:AllowanceCharge[cbc:ChargeIndicator=false()]/cac:TaxCategory[normalize-space(cbc:ID)='K'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-IC-07In an Intra-community supply (K) Document level charge the charge VAT rate (BT-103) shall be 0.fatalen16931BR-ICUBL-2.1 and UN/CEFACT-CIIBG-21, BT-102, BT-103cac:AllowanceCharge[cbc:ChargeIndicator=true()]/cac:TaxCategory[normalize-space(cbc:ID)='K'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-IC-08The Intra-community supply (K) VAT breakdown taxable amount (BT-116) shall equal the exact sum of K line nets − K allowances + K charges.fatalen16931BR-ICUBL-2.1 and UN/CEFACT-CIIBG-23, BT-92, BT-95, BT-99, BT-102, BT-116, BT-118, BT-131, BT-151/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'K'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-IC-09The VAT category tax amount (BT-117) in an Intra-community supply (K) VAT breakdown shall equal 0.fatalen16931BR-ICUBL-2.1 and UN/CEFACT-CIIBG-23, BT-117, BT-118/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'K'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-IC-10A VAT breakdown (BG-23) with the VAT category code (BT-118) "Intra-community supply" (K) SHALL have a VAT exemption reason code (BT-121) or text (BT-120) — the K twin of BR-E-10 / BR-AE-10.fatalen16931BR-ICUBL-2.1 and UN/CEFACT-CIIBG-23, BT-118, BT-120, BT-121/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'K'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-IC-11In an Invoice with an Intra-community supply (K) VAT breakdown (BG-23) the Actual delivery date (BT-72) or the Invoicing period (BG-14) shall not be blank.fatalen16931BR-ICUBL-2.1 and UN/CEFACT-CIIBG-14, BG-23, BT-72, BT-118cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory
BR-IC-12In an Invoice with an Intra-community supply (K) VAT breakdown (BG-23) the Deliver to country code (BT-80) shall not be blank.fatalen16931BR-ICUBL-2.1 and UN/CEFACT-CIIBG-23, BT-80, BT-118cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory

BR-O (14)

VAT breakdown rules for VAT category code O.

RuleRequirementSeverityProfileFamilySyntaxBT/BG termsXML location
BR-O-01'Not subject to VAT' (O) items require exactly one O VAT breakdown (BG-23) row.fatalen16931BR-OUBL-2.1 and UN/CEFACT-CIIBG-20, BG-21, BG-23, BG-25, BT-95, BT-102, BT-118, BT-151cac:TaxCategory
BR-O-02An Invoice with a 'Not subject to VAT' (O) Invoice line (BT-151) shall NOT contain a Seller/tax-representative/Buyer VAT identifier.fatalen16931BR-OUBL-2.1 and UN/CEFACT-CIIBG-25, BT-31, BT-48, BT-63, BT-151cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[cbc:ID='O']
BR-O-03An Invoice with a 'Not subject to VAT' (O) Document level allowance (BT-95) shall NOT contain any VAT identifier.fatalen16931BR-OUBL-2.1 and UN/CEFACT-CIIBG-20, BT-31, BT-48, BT-63, BT-95cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID='O']
BR-O-04An Invoice with a 'Not subject to VAT' (O) Document level charge (BT-102) shall NOT contain any VAT identifier.fatalen16931BR-OUBL-2.1 and UN/CEFACT-CIIBG-21, BT-31, BT-48, BT-63, BT-102cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID='O']
BR-O-05A 'Not subject to VAT' (O) Invoice line shall NOT contain an Invoiced item VAT rate (BT-152) — ``not(cbc:Percent)``.fatalen16931BR-OUBL-2.1 and UN/CEFACT-CIIBG-25, BT-151, BT-152cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'O'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-O-06A 'Not subject to VAT' (O) Document level allowance shall NOT contain a Document level allowance VAT rate (BT-96).fatalen16931BR-OUBL-2.1 and UN/CEFACT-CIIBG-20, BT-95, BT-96cac:AllowanceCharge[cbc:ChargeIndicator=false()]/cac:TaxCategory[normalize-space(cbc:ID)='O'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-O-07A 'Not subject to VAT' (O) Document level charge shall NOT contain a Document level charge VAT rate (BT-103).fatalen16931BR-OUBL-2.1 and UN/CEFACT-CIIBG-21, BT-102, BT-103cac:AllowanceCharge[cbc:ChargeIndicator=true()]/cac:TaxCategory[normalize-space(cbc:ID)='O'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-O-08The 'Not subject to VAT' (O) VAT breakdown taxable amount (BT-116) shall equal the exact sum of O line nets − O allowances + O charges.fatalen16931BR-OUBL-2.1 and UN/CEFACT-CIIBG-23, BT-92, BT-95, BT-99, BT-102, BT-116, BT-118, BT-131, BT-151/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'O'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-O-09The VAT category tax amount (BT-117) in a 'Not subject to VAT' (O) VAT breakdown shall equal 0.fatalen16931BR-OUBL-2.1 and UN/CEFACT-CIIBG-23, BT-117, BT-118/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'O'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-O-10A VAT breakdown (BG-23) with a 'Not subject to VAT' (O) VAT category code (BT-118) SHALL have a VAT exemption reason code (BT-121) or text (BT-120).fatalen16931BR-OUBL-2.1 and UN/CEFACT-CIIBG-23, BT-118, BT-120, BT-121/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'O'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-O-11An Invoice with a 'Not subject to VAT' (O) VAT breakdown (BG-23) shall NOT contain any other VAT breakdown group.fatalen16931BR-OUBL-2.1 and UN/CEFACT-CIIBG-23, BT-118cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory
BR-O-12An Invoice with a 'Not subject to VAT' (O) VAT breakdown (BG-23) shall NOT contain an Invoice line (BG-25) whose Invoiced item VAT category code (BT-151) is not 'Not subject to VAT'.fatalen16931BR-OUBL-2.1 and UN/CEFACT-CIIBG-23, BG-25, BT-118, BT-151cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory
BR-O-13An Invoice with a 'Not subject to VAT' (O) VAT breakdown (BG-23) shall NOT contain a Document level allowance (BG-20) whose VAT category code (BT-95) is not 'Not subject to VAT'.fatalen16931BR-OUBL-2.1 and UN/CEFACT-CIIBG-20, BG-23, BT-95, BT-118cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory
BR-O-14An Invoice with a 'Not subject to VAT' (O) VAT breakdown (BG-23) shall NOT contain a Document level charge (BG-21) whose VAT category code (BT-102) is not 'Not subject to VAT'.fatalen16931BR-OUBL-2.1 and UN/CEFACT-CIIBG-21, BG-23, BT-102, BT-118cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory

BR-S (10)

VAT breakdown rules for VAT category code S.

RuleRequirementSeverityProfileFamilySyntaxBT/BG termsXML location
BR-S-01Standard-rated (S) items and the VAT breakdown must agree.fatalen16931BR-SUBL-2.1 and UN/CEFACT-CIIBG-20, BG-21, BG-23, BG-25, BT-95, BT-102, BT-118, BT-151cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID='S']
BR-S-02An Invoice with a Standard-rated (S) Invoice line (BT-151) shall contain the Seller VAT Identifier (BT-31), Seller tax registration id (BT-32) and/or Seller tax representative VAT id (BT-63).fatalen16931BR-SUBL-2.1 and UN/CEFACT-CIIBG-25, BT-31, BT-32, BT-63, BT-151cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[cbc:ID='S']
BR-S-03An Invoice with a Standard-rated (S) Document level allowance (BT-95) shall contain the Seller VAT id / tax registration id / tax rep VAT id (same seller disjunct as BR-S-02).fatalen16931BR-SUBL-2.1 and UN/CEFACT-CIIBG-20, BT-31, BT-32, BT-63, BT-95cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID='S']
BR-S-04An Invoice with a Standard-rated (S) Document level charge (BT-102) shall contain the Seller VAT id / tax registration id / tax rep VAT id (same seller disjunct as BR-S-02).fatalen16931BR-SUBL-2.1 and UN/CEFACT-CIIBG-21, BT-31, BT-32, BT-63, BT-102cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID='S']
BR-S-05In an Invoice line where the Invoiced item VAT category code (BT-151) is 'Standard rated' the Invoiced item VAT rate (BT-152) shall be greater than zero.fatalen16931BR-SUBL-2.1 and UN/CEFACT-CIIBG-25, BT-151, BT-152cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'S'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-S-06In a Document level allowance where the allowance VAT category code (BT-95) is 'Standard rated' the allowance VAT rate (BT-96) shall be greater than zero.fatalen16931BR-SUBL-2.1 and UN/CEFACT-CIIBG-20, BT-95, BT-96cac:AllowanceCharge[cbc:ChargeIndicator=false()]/cac:TaxCategory[normalize-space(cbc:ID)='S'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-S-07In a Document level charge where the charge VAT category code (BT-102) is 'Standard rated' the charge VAT rate (BT-103) shall be greater than zero.fatalen16931BR-SUBL-2.1 and UN/CEFACT-CIIBG-21, BT-102, BT-103cac:AllowanceCharge[cbc:ChargeIndicator=true()]/cac:TaxCategory[normalize-space(cbc:ID)='S'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-S-08For 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) shall equal the sum of Invoice line net amounts (BT-131) plus document level charge amounts (BT-99) minus document level allowance amounts (BT-92) where the VAT category code is "Standard rated" and the VAT rate equals BT-119.fatalen16931BR-SUBL-2.1 and UN/CEFACT-CIIBG-23, BT-92, BT-95, BT-96, BT-99, BT-102, BT-103, BT-116, BT-118, BT-119, BT-131, BT-151, BT-152/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'S'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-S-09The VAT category tax amount (BT-117) in a Standard-rated (S) VAT breakdown shall equal the VAT category taxable amount (BT-116) x the VAT category rate (BT-119).fatalen16931BR-SUBL-2.1 and UN/CEFACT-CIIBG-23, BT-116, BT-117, BT-118, BT-119/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'S'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-S-10A VAT breakdown (BG-23) with a Standard rated (S) VAT category code (BT-118) shall not have a VAT exemption reason text (BT-120) or code (BT-121).fatalen16931BR-SUBL-2.1 and UN/CEFACT-CIIBG-23, BT-118, BT-120, BT-121/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'S'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']

BR-Z (10)

VAT breakdown rules for VAT category code Z.

RuleRequirementSeverityProfileFamilySyntaxBT/BG termsXML location
BR-Z-01If any line/allowance/charge is Zero rated (Z), the VAT breakdown must contain exactly one Zero rated category.fatalen16931BR-ZUBL-2.1 and UN/CEFACT-CIIBG-20, BG-21, BG-23, BG-25, BT-95, BT-102, BT-118, BT-151cac:TaxCategory
BR-Z-02A Zero-rated (Z) Invoice line (BT-151) requires the Seller VAT identifier / tax registration id / tax representative VAT id.fatalen16931BR-ZUBL-2.1 and UN/CEFACT-CIIBT-31, BT-32, BT-63, BT-151cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[cbc:ID='Z']
BR-Z-03A Zero-rated (Z) Document level allowance (BT-95) requires the Seller VAT identifier disjunct.fatalen16931BR-ZUBL-2.1 and UN/CEFACT-CIIBG-20, BT-31, BT-32, BT-63, BT-95cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID='Z']
BR-Z-04A Zero-rated (Z) Document level charge (BT-102) requires the Seller VAT identifier disjunct.fatalen16931BR-ZUBL-2.1 and UN/CEFACT-CIIBT-31, BT-32, BT-63, BT-102cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID='Z']
BR-Z-05In a Zero-rated (Z) Invoice line the Invoiced item VAT rate (BT-152) shall be 0.fatalen16931BR-ZUBL-2.1 and UN/CEFACT-CIIBG-25, BT-151, BT-152cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'Z'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-Z-06In a Zero-rated (Z) Document level allowance the allowance VAT rate (BT-96) shall be 0.fatalen16931BR-ZUBL-2.1 and UN/CEFACT-CIIBG-20, BT-95, BT-96cac:AllowanceCharge[cbc:ChargeIndicator=false()]/cac:TaxCategory[normalize-space(cbc:ID)='Z'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-Z-07In a Zero-rated (Z) Document level charge the charge VAT rate (BT-103) shall be 0.fatalen16931BR-ZUBL-2.1 and UN/CEFACT-CIIBG-21, BT-102, BT-103cac:AllowanceCharge[cbc:ChargeIndicator=true()]/cac:TaxCategory[normalize-space(cbc:ID)='Z'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-Z-08The Zero-rated (Z) VAT breakdown taxable amount (BT-116) shall equal the exact sum of Z line net amounts − Z allowances + Z charges.fatalen16931BR-ZUBL-2.1 and UN/CEFACT-CIIBG-23, BT-92, BT-95, BT-99, BT-102, BT-116, BT-118, BT-131, BT-151/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'Z'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-Z-09The VAT category tax amount (BT-117) in a Zero-rated (Z) VAT breakdown shall equal 0.fatalen16931BR-ZUBL-2.1 and UN/CEFACT-CIIBG-23, BT-117, BT-118/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'Z'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']
BR-Z-10A VAT breakdown (BG-23) with a Zero rated (Z) VAT category code (BT-118) shall not have a VAT exemption reason text (BT-120) or code (BT-121).fatalen16931BR-ZUBL-2.1 and UN/CEFACT-CIIBG-23, BT-118, BT-120, BT-121/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'Z'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']

BR-DE (31)

German XRechnung national CIUS rules (KoSIT).

RuleRequirementSeverityProfileFamilySyntaxBT/BG termsXML location
BR-DE-1An invoice must contain PAYMENT INSTRUCTIONS (BG-16).fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBG-16cac:PaymentMeans
BR-DE-2SELLER CONTACT (BG-6) must be transmitted.fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBG-6/ubl:Invoice/cac:AccountingSupplierParty
BR-DE-3Seller city (BT-37) must be transmitted (non-empty).fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBT-37/ubl:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PostalAddress
BR-DE-4Seller post code (BT-38) must be transmitted (non-empty).fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBT-38/ubl:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PostalAddress
BR-DE-5Seller contact point (BT-41) must be transmitted (non-empty).fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBT-41/ubl:Invoice/cac:AccountingSupplierParty/cac:Party/cac:Contact
BR-DE-6Seller contact telephone number (BT-42) must be transmitted.fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBT-42/ubl:Invoice/cac:AccountingSupplierParty/cac:Party/cac:Contact
BR-DE-7Seller contact email address (BT-43) must be transmitted.fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBT-43/ubl:Invoice/cac:AccountingSupplierParty/cac:Party/cac:Contact
BR-DE-8Buyer city (BT-52) must be transmitted (non-empty).fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBT-52/ubl:Invoice/cac:AccountingCustomerParty/cac:Party/cac:PostalAddress
BR-DE-9Buyer post code (BT-53) must be transmitted (non-empty).fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBT-53/ubl:Invoice/cac:AccountingCustomerParty/cac:Party/cac:PostalAddress
BR-DE-10Deliver to city (BT-77) must be transmitted when DELIVER TO ADDRESS (BG-15) is present.fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBG-15, BT-77/ubl:Invoice/cac:Delivery/cac:DeliveryLocation/cac:Address
BR-DE-11Deliver to post code (BT-78) must be transmitted when DELIVER TO ADDRESS (BG-15) is present.fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBG-15, BT-78/ubl:Invoice/cac:Delivery/cac:DeliveryLocation/cac:Address
BR-DE-14VAT category rate (BT-119) must be transmitted (non-empty) in every top-level VAT breakdown row.fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBT-119/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal
BR-DE-15Buyer reference (BT-10) must be transmitted (non-empty).fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBT-10cbc:BuyerReference
BR-DE-16If VAT category codes S/Z/E/AE/K/G/L/M are used, one of Seller VAT identifier (BT-31), Seller tax registration identifier (BT-32) or SELLER TAX REPRESENTATIVE PARTY (BG-11) must be present.fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBG-11, BT-31, BT-32cac:TaxRepresentativeParty
BR-DE-17BT-3 should be one of 326, 380, 384, 389, 381, 875, 876, 877.warningxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBT-3cbc:InvoiceTypeCode
BR-DE-18Skonto (cash-discount) lines in Payment terms (BT-20).fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBT-20, BT-115cac:PaymentTerms/cbc:Note
BR-DE-19With payment means code 58 (SEPA credit transfer), BT-84 should be a correct IBAN (official regex + mod-97 transcription).warningxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBT-81, BT-84/ubl:Invoice/cac:PaymentMeans[normalize-space(cbc:PaymentMeansCode) = ('30','58')]
BR-DE-20With payment means code 59 (SEPA direct debit), BT-91 should be a correct IBAN.warningxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBT-81, BT-91/ubl:Invoice/cac:PaymentMeans[normalize-space(cbc:PaymentMeansCode) = '59']
BR-DE-21BT-24 should be the XRechnung specification identifier (CIUS, extension or CVD variant) — untrimmed string equality.warningxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBT-24cbc:CustomizationID
BR-DE-22The filename attribute of all EmbeddedDocumentBinaryObject elements must be unique (across cac:AdditionalDocumentReference).fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIcac:AdditionalDocumentReference
BR-DE-23-aCodes 30/58 (credit transfer) require CREDIT TRANSFER (BG-17).fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBG-17, BT-81/ubl:Invoice/cac:PaymentMeans[normalize-space(cbc:PaymentMeansCode) = ('30','58')]
BR-DE-23-bCodes 30/58 forbid PAYMENT CARD (BG-18) and DIRECT DEBIT (BG-19).fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBG-18, BG-19, BT-81/ubl:Invoice/cac:PaymentMeans[normalize-space(cbc:PaymentMeansCode) = ('30','58')]
BR-DE-24-aCodes 48/54/55 (card) require PAYMENT CARD INFORMATION (BG-18).fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBG-18, BT-81/ubl:Invoice/cac:PaymentMeans[normalize-space(cbc:PaymentMeansCode) = ('48','54','55')]
BR-DE-24-bCodes 48/54/55 forbid CREDIT TRANSFER (BG-17) and DIRECT DEBIT (BG-19).fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBG-17, BG-19, BT-81/ubl:Invoice/cac:PaymentMeans[normalize-space(cbc:PaymentMeansCode) = ('48','54','55')]
BR-DE-25-aCode 59 (direct debit) requires DIRECT DEBIT (BG-19).fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBG-19, BT-81/ubl:Invoice/cac:PaymentMeans[normalize-space(cbc:PaymentMeansCode) = '59']
BR-DE-25-bCode 59 forbids CREDIT TRANSFER (BG-17) and PAYMENT CARD (BG-18).fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBG-17, BG-18, BT-81/ubl:Invoice/cac:PaymentMeans[normalize-space(cbc:PaymentMeansCode) = '59']
BR-DE-26Type code 384 (Corrected invoice) should carry a PRECEDING INVOICE REFERENCE (BG-3).warningxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBG-3, BT-3cbc:InvoiceTypeCode
BR-DE-27BT-42 should contain at least three digits. Evaluated per seller Contact; an ABSENT telephone normalizes to '' and fires too.warningxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBT-42/ubl:Invoice/cac:AccountingSupplierParty/cac:Party/cac:Contact
BR-DE-28BT-43 should look like an email address (exactly one '@', flanked per the official regex).warningxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBT-43/ubl:Invoice/cac:AccountingSupplierParty/cac:Party/cac:Contact
BR-DE-30DIRECT DEBIT (BG-19) requires the Bank assigned creditor identifier (BT-90: a SEPA-scheme PartyIdentification of the seller or payee).fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBG-19, BT-90cac:PaymentMeans/cac:PaymentMandate
BR-DE-31DIRECT DEBIT (BG-19) requires the Debited account identifier (BT-91).fatalxrechnungBR-DEUBL-2.1 and UN/CEFACT-CIIBG-19, BT-91cac:PaymentMeans/cac:PaymentMandate

BR-DE-TMP (1)

German XRechnung national rules (BR-DE-TMP).

RuleRequirementSeverityProfileFamilySyntaxBT/BG termsXML location
BR-DE-TMP-32An invoice should state the delivery/service date via BT-72 (Actual delivery date), BG-14 (Invoicing period) or a BG-26 (Invoice line period) on EVERY line.informationxrechnungBR-DE-TMPUBL-2.1 and UN/CEFACT-CIIBG-14, BG-26, BT-72cac:Delivery/cbc:ActualDeliveryDate

BR-DEX (15)

German XRechnung extension-layer rules (BR-DEX).

RuleRequirementSeverityProfileFamilySyntaxBT/BG termsXML location
BR-DEX-01Every 'Attached Document' binary object (BT-125) must use an Extension-allowed MIME code. Context is cbc:EmbeddedDocumentBinaryObject anywhere in the document; the extra allowance over EN 8.2 is application/xml. An absent @mimeCode also fires (empty node-set).fatalxrechnungBR-DEXUBL-2.1 and UN/CEFACT-CIIBT-125cbc:EmbeddedDocumentBinaryObject
BR-DEX-02The 'Invoice line net amount' (BT-131) of an INVOICE LINE (BG-25) or a SUB INVOICE LINE (BG-DEX-01) should equal the sum of the directly nested SUB INVOICE LINEs' net amounts.warningxrechnungBR-DEXUBL-2.1BG-25, BG-DEX-01, BT-131cac:InvoiceLine
BR-DEX-03A SUB INVOICE LINE (BG-DEX-01) must carry exactly one SUB INVOICE LINE VAT INFORMATION (BG-DEX-06) — i.e. its Item must have exactly one cac:ClassifiedTaxCategory. Fires if any sub-line item has 0 or >1.fatalxrechnungBR-DEXUBL-2.1BG-DEX-01, BG-DEX-06cac:SubInvoiceLine/cac:Item
BR-DEX-04Any scheme identifier on a Party identifier (cac:Party Identification/cbc:ID) must be an ISO 6523 ICD (extension) code — or 'SEPA' when the identifier belongs to the Seller or the Payee.fatalxrechnungBR-DEXUBL-2.1 and UN/CEFACT-CIIcac:PartyIdentification/cbc:ID[@schemeID and $isExtension]
BR-DEX-05Any scheme identifier on a legal registration identifier (cac:PartyLegalEntity/cbc:CompanyID, BT-30/BT-47) must be an ISO 6523 ICD (extension) code.fatalxrechnungBR-DEXUBL-2.1 and UN/CEFACT-CIIBT-30, BT-47cac:PartyLegalEntity/cbc:CompanyID[@schemeID and $isExtension]
BR-DEX-06Any scheme identifier on an item standard identifier (cac:StandardItemIdentification/cbc:ID, BT-157) must be an ISO 6523 ICD (extension) code.fatalxrechnungBR-DEXUBL-2.1 and UN/CEFACT-CIIBT-157cac:StandardItemIdentification/cbc:ID[@schemeID and $isExtension]
BR-DEX-07Any scheme identifier on an Endpoint identifier (cbc:Endpoint ID, BT-34/BT-49) must belong to the CEF EAS (extension) code list.fatalxrechnungBR-DEXUBL-2.1 and UN/CEFACT-CIIBT-34, BT-49cbc:EndpointID[@schemeID and $isExtension]
BR-DEX-08Any scheme identifier on a Deliver-to location identifier (cac:DeliveryLocation/cbc:ID, BT-71) must be an ISO 6523 ICD (extension) code.fatalxrechnungBR-DEXUBL-2.1 and UN/CEFACT-CIIBT-71cac:DeliveryLocation/cbc:ID[@schemeID and $isExtension]
BR-DEX-09Amount 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).fatalxrechnungBR-DEXUBL-2.1BT-112, BT-113, BT-114, BT-115, BT-DEX-002cac:LegalMonetaryTotal
BR-DEX-10'Third party payment type' (BT-DEX-001, cbc:ID) must be present (non-empty) in every THIRD PARTY PAYMENT group (BG-DEX-09).fatalxrechnungBR-DEXUBL-2.1BG-DEX-09, BT-DEX-001/ubl:Invoice/cac:PrepaidPayment
BR-DEX-11'Third party payment amount' (BT-DEX-002, cbc:PaidAmount) must be present (non-empty) in every THIRD PARTY PAYMENT group (BG-DEX-09).fatalxrechnungBR-DEXUBL-2.1BG-DEX-09, BT-DEX-002/ubl:Invoice/cac:PrepaidPayment
BR-DEX-12'Third party payment description' (BT-DEX-003, cbc:InstructionID) must be present (non-empty) in every THIRD PARTY PAYMENT group (BG-DEX-09).fatalxrechnungBR-DEXUBL-2.1BG-DEX-09, BT-DEX-003/ubl:Invoice/cac:PrepaidPayment
BR-DEX-13'Third party payment amount' (BT-DEX-002) may carry at most 2 fractional digits: string-length(substring-after(cbc:PaidAmount, '.')) <= 2 (no '.' -> '' -> length 0 -> holds).fatalxrechnungBR-DEXUBL-2.1BT-DEX-002/ubl:Invoice/cac:PrepaidPayment
BR-DEX-14The currency of 'Third party payment amount' (BT-DEX-002) must equal BT-5 (Invoice currency code): cbc:PaidAmount/@currencyID = parent::node()/cbc:DocumentCurrencyCode. A missing @currencyID or a missing DocumentCurrencyCode makes the node-set comparison false -> fires.fatalxrechnungBR-DEXUBL-2.1BT-5, BT-DEX-002/ubl:Invoice/cac:PrepaidPayment
BR-DEX-15A CII file should not use the concept of Sub Invoice Lines (ram:ParentLineID) — XRechnung does not support them (warning).warningxrechnungBR-DEXUN/CEFACT-CII/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ram:AssociatedDocumentLineDocument

BR-DE-CVD (7)

German XRechnung Clean-Vehicle-Directive profile rules — applied only when the invoice carries the CVD specification identifier (BT-24 ending in …xrechnung:cvd_0.9); they require the contract and tender references plus the vehicle-classification data (BT-158 'CVD' + BT-160 'cva') that Clean Vehicle Directive reporting needs.

RuleRequirementSeverityProfileFamilySyntaxBT/BG termsXML location
BR-DE-CVD-01A CVD invoice must transmit the 'Contract reference' (BT-12, cac:ContractDocumentReference/cbc:ID, non-empty).fatalxrechnungBR-DE-CVDUBL-2.1 and UN/CEFACT-CIIBT-12cac:ContractDocumentReference/cbc:ID
BR-DE-CVD-02A CVD invoice must transmit the 'Tender or lot reference' (BT-17, cac:OriginatorDocumentReference/cbc:ID, non-empty).fatalxrechnungBR-DE-CVDUBL-2.1 and UN/CEFACT-CIIBT-17cac:OriginatorDocumentReference/cbc:ID
BR-DE-CVD-03A CVD invoice must contain at least one INVOICE LINE (BG-25) whose Item carries an 'Item classification identifier' (BT-158) with scheme identifier 'CVD' AND an 'Item attribute name' (BT-160) with the value 'cva' — both on the SAME cac:Item.fatalxrechnungBR-DE-CVDUBL-2.1 and UN/CEFACT-CIIBG-25, BT-158, BT-160cac:InvoiceLine/cac:Item
BR-DE-CVD-04In a CVD invoice, an 'Item classification identifier' (BT-158) with scheme identifier 'CVD' must contain one of the permitted vehicle categories M1, M2, M3, N1, N2, N3 (normalize-space comparison, per the official test).fatalxrechnungBR-DE-CVDUBL-2.1 and UN/CEFACT-CIIBT-158/ubl:Invoice/cac:InvoiceLine/cac:Item/cac:CommodityClassification/cbc:ItemClassificationCode
BR-DE-CVD-05In a CVD invoice, when the 'Item attribute name' (BT-160) within ITEM ATTRIBUTES (BG-32) is 'cva', the 'Item attribute value' (BT-161) must be one of 'clean', 'zero-emission', 'other' (normalize-space comparison; an absent cbc:Value normalizes to '' and fires).fatalxrechnungBR-DE-CVDUBL-2.1 and UN/CEFACT-CIIBG-32, BT-160, BT-161/ubl:Invoice/cac:InvoiceLine/cac:Item/cac:AdditionalItemProperty[cbc:Name = 'cva']
BR-DE-CVD-06-aIn a CVD invoice line whose Item carries an 'Item classification identifier' (BT-158) with scheme identifier 'CVD', exactly one 'Item attribute name' (BT-160) with the value 'cva' must be present on that Item.fatalxrechnungBR-DE-CVDUBL-2.1 and UN/CEFACT-CIIBT-158, BT-160/ubl:Invoice/cac:InvoiceLine/cac:Item
BR-DE-CVD-06-bIn a CVD invoice line whose Item carries an 'Item attribute name' (BT-160) with the value 'cva', exactly one 'Item classification identifier' (BT-158) with scheme identifier 'CVD' must be present on that Item.fatalxrechnungBR-DE-CVDUBL-2.1 and UN/CEFACT-CIIBT-158, BT-160/ubl:Invoice/cac:InvoiceLine/cac:Item

BR-TMP (2)

German XRechnung temporary rules (KoSIT BR-TMP): BR-TMP-2 checks that an external document location (BT-124) is an absolute URL with a valid scheme; BR-TMP-3 exists only in the CII syntax binding and checks gross/net item-price base-quantity (BT-149/BT-150) consistency.

RuleRequirementSeverityProfileFamilySyntaxBT/BG termsXML location
BR-TMP-2The 'External document location' (BT-124) must be an absolute URL with a valid scheme.warningxrechnungBR-TMPUBL-2.1 and UN/CEFACT-CIIBT-124/ubl:Invoice/cac:AdditionalDocumentReference/cac:Attachment/cac:ExternalReference
BR-TMP-3When the 'Item price base quantity' (BT-149) is present in BOTH GrossPriceProductTradePrice and NetPriceProductTradePrice of a line, the values must be identical, and when both carry a unit of measure code (BT-150) the unit codes must be identical too.fatalxrechnungBR-TMPUN/CEFACT-CIIBT-149, BT-150/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem

BR-TMP-CVD (1)

German XRechnung Clean-Vehicle-Directive code-list rule — the BT-158 scheme identifier must come from UNTDID 7143 (extended with 'CVD').

RuleRequirementSeverityProfileFamilySyntaxBT/BG termsXML location
BR-TMP-CVD-01In a CVD invoice, the scheme identifier of every 'Item classification identifier' (BT-158) must come from the code list UNTDID 7143 (extended with 'CVD'). Official membership test is contains() over the space-flanked official list — see :func:`_untdid_7143_cvd_ok`.fatalxrechnungBR-TMP-CVDUBL-2.1 and UN/CEFACT-CIIBT-158/ubl:Invoice/cac:InvoiceLine/cac:Item/cac:CommodityClassification/cbc:ItemClassificationCode

PEPPOL-EN16931 (21)

Peppol-derived rules as vendored inside the official KoSIT XRechnung Schematron artifact — the KoSIT-vendored subset only, NOT full Peppol BIS Billing 3.0 support.

RuleRequirementSeverityProfileFamilySyntaxBT/BG termsXML location
PEPPOL-EN16931-R001Business process MUST be provided.fatalxrechnungPEPPOL-EN16931UBL-2.1 and UN/CEFACT-CIIcbc:ProfileID
PEPPOL-EN16931-R005VAT accounting currency code MUST be different from invoice currency code when provided.fatalxrechnungPEPPOL-EN16931UBL-2.1 and UN/CEFACT-CIIcbc:TaxCurrencyCode
PEPPOL-EN16931-R008Document MUST not contain empty elements.fatalxrechnungPEPPOL-EN16931UBL-2.1 and UN/CEFACT-CII//*[not(*) and not(normalize-space())]
PEPPOL-EN16931-R010Buyer electronic address MUST be provided.fatalxrechnungPEPPOL-EN16931UBL-2.1 and UN/CEFACT-CIIcac:AccountingCustomerParty/cac:Party/cbc:EndpointID
PEPPOL-EN16931-R020Seller electronic address MUST be provided.fatalxrechnungPEPPOL-EN16931UBL-2.1 and UN/CEFACT-CIIcac:AccountingSupplierParty/cac:Party/cbc:EndpointID
PEPPOL-EN16931-R040Allowance/charge amount must equal base amount * percentage/100 if base amount and percentage exists.fatalxrechnungPEPPOL-EN16931UBL-2.1 and UN/CEFACT-CII/ubl:Invoice/cac:AllowanceCharge
PEPPOL-EN16931-R041Allowance/charge base amount MUST be provided when allowance/charge percentage is provided.fatalxrechnungPEPPOL-EN16931UBL-2.1 and UN/CEFACT-CII/ubl:Invoice/cac:AllowanceCharge[cbc:MultiplierFactorNumeric and not(cbc:BaseAmount)]
PEPPOL-EN16931-R042Allowance/charge percentage MUST be provided when allowance/charge base amount is provided.fatalxrechnungPEPPOL-EN16931UBL-2.1 and UN/CEFACT-CII/ubl:Invoice/cac:AllowanceCharge[not(cbc:MultiplierFactorNumeric) and cbc:BaseAmount]
PEPPOL-EN16931-R043Allowance/charge ChargeIndicator value MUST equal 'true' or 'false'.fatalxrechnungPEPPOL-EN16931UBL-2.1 and UN/CEFACT-CII/ubl:Invoice/cac:AllowanceCharge
PEPPOL-EN16931-R044Charge on price level is NOT allowed. Only value 'false' allowed.fatalxrechnungPEPPOL-EN16931UBL-2.1 and UN/CEFACT-CIIcac:Price/cac:AllowanceCharge
PEPPOL-EN16931-R046Item net price MUST equal (Gross price - Allowance amount) when gross price is provided.fatalxrechnungPEPPOL-EN16931UBL-2.1 and UN/CEFACT-CIIcac:Price/cac:AllowanceCharge
PEPPOL-EN16931-R053Only one tax total with tax subtotals MUST be provided.fatalxrechnungPEPPOL-EN16931UBL-2.1 and UN/CEFACT-CIIcac:TaxTotal
PEPPOL-EN16931-R054Only one tax total without tax subtotals MUST be provided when tax currency code is provided.fatalxrechnungPEPPOL-EN16931UBL-2.1 and UN/CEFACT-CIIcac:TaxTotal
PEPPOL-EN16931-R055Invoice total VAT amount and Invoice total VAT amount in accounting currency MUST have the same operational sign.fatalxrechnungPEPPOL-EN16931UBL-2.1 and UN/CEFACT-CIIcac:TaxTotal/cbc:TaxAmount
PEPPOL-EN16931-R061Mandate reference MUST be provided for direct debit.fatalxrechnungPEPPOL-EN16931UBL-2.1 and UN/CEFACT-CIIcac:PaymentMeans[some $code in tokenize('49 59', '\s') satisfies normalize-space(cbc:PaymentMeansCode) = $code]/cac:PaymentMandate/cbc:ID
PEPPOL-EN16931-R101Element Document reference can only be used for Invoice line object.fatalxrechnungPEPPOL-EN16931UBL-2.1 and UN/CEFACT-CIIcac:InvoiceLine/cac:DocumentReference
PEPPOL-EN16931-R110Start date of line period MUST be within invoice period. (Line start >= document invoice-period start.)fatalxrechnungPEPPOL-EN16931UBL-2.1 and UN/CEFACT-CII/ubl:Invoice[cac:InvoicePeriod/cbc:StartDate]/cac:InvoiceLine/cac:InvoicePeriod/cbc:StartDate
PEPPOL-EN16931-R111End date of line period MUST be within invoice period. (Line end <= document invoice-period end.)fatalxrechnungPEPPOL-EN16931UBL-2.1 and UN/CEFACT-CII/ubl:Invoice[cac:InvoicePeriod/cbc:EndDate]/cac:InvoiceLine/cac:InvoicePeriod/cbc:EndDate
PEPPOL-EN16931-R120Invoice 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.warningxrechnungPEPPOL-EN16931UBL-2.1 and UN/CEFACT-CIIcac:InvoiceLine/cbc:LineExtensionAmount
PEPPOL-EN16931-R121Base quantity MUST be a positive number above zero.fatalxrechnungPEPPOL-EN16931UBL-2.1 and UN/CEFACT-CIIcac:InvoiceLine/cac:Price/cbc:BaseQuantity
PEPPOL-EN16931-R130Unit code of price base quantity MUST be same as invoiced quantity.fatalxrechnungPEPPOL-EN16931UBL-2.1 and UN/CEFACT-CIIcac:Price/cbc:BaseQuantity[@unitCode]