Upload
vuongtruc
View
233
Download
5
Embed Size (px)
Citation preview
Count of Rule RleENeffectRleBISBusEffect cius ext (empty)Total Resultaverage 2 14 16majorminor 78 44 122(empty) 40 40Total Result 80 58 40 178
Rules and validation from EN16931Rule Text EN validationBR-1
BR-10
BR-11
BR-12
BR-13
BR-14
BR-15
BR-16
BR-17
BR-18
BR-19
BR-2
BR-20
An Invoice shall have a Specification identification.
[BR-01]-An Invoice shall have a Specification identification.
An Invoice shall contain the Buyer postal address.
[BR-10]-An Invoice shall contain the Buyer postal address.
A Buyer postal address shall contain a Buyer country code
[BR-11]-A Buyer postal address shall contain a Buyer country code
An Invoice shall have the Sum of Invoice line net amount.
[BR-12]-An Invoice shall have the Sum of Invoice line net amount.
An Invoice shall have the Invoice total amount without VAT.
[BR-13]-An Invoice shall have the Invoice total amount without VAT.
An Invoice shall have the Invoice total amount with VAT.
[BR-14]-An Invoice shall have the Invoice total amount with VAT.
An Invoice shall have the Amount due for payment.
[BR-15]-An Invoice shall have the Amount due for payment.
An Invoice shall have at least one Invoice line.
[BR-16]-An Invoice shall have at least one Invoice line.
The Payee name shall be provided in the Invoice, if the Payee is different from the Seller.
[BR-17]-The Payee name shall be provided in the Invoice, if the Payee is different from the Seller.
The Seller tax representative name shall be provided in the Invoice, if the Seller has a tax representative party.
[BR-18]-The Seller tax representative name shall be provided in the Invoice, if the Seller has a tax representative party.
The Seller tax representative postal address shall be provided in the Invoice, if the Seller has a tax representative party.
[BR-19]-The Seller tax representative postal address shall be provided in the Invoice, if the Seller has a tax representative party.
An Invoice shall have an Invoice number.
[BR-02]-An Invoice shall have an Invoice number.
The Seller tax representative postal address shall contain a Tax representative country code, if the Seller has a tax representative party.
[BR-20]-The Seller tax representative postal address shall contain a Tax representative country code, if the Seller has a tax representative party.
BR-21
BR-22
BR-23
BR-24
BR-25
BR-26
BR-27
BR-28
BR-29
BR-3
BR-30
Each Invoice line shall have an Invoice line identifier.
[BR-21]-Each Invoice line shall have an Invoice line identifier.
Each Invoice line shall have an Invoiced quantity.
[BR-22]-Each Invoice line shall have an Invoiced quantity.
An invoice line shall have an Invoice quantity unit of measure.
[BR-23]-An invoiced quantity shall have an Invoice quantity unit of measure.
Each Invoice line shall have an Invoice line net amount.
[BR-24]-Each Invoice line shall have an Invoice line net amount.
Each Invoice line shall contain the Item name.
[BR-25]-Each Invoice line shall contain the Item name.
Each Invoice line shall contain the Item net price.
[BR-26]-Each Invoice line shall contain the Item net price.
The Item net price shall NOT be negative.
[BR-27]-The item net price shall NOT be negative.
Invoice line item gross price shall NOT be negative.
[BR-28]-Invoice line item gross price shall NOT be negative.
If both Invoicing period start date and Invoicing period end date are given then the Invoicing period end date shall be later or equal to the Invoicing period start date.
[BR-29]-If both invoicing period start date and invoicing period end date are given then the invoicing period end date shall be later or equal to the invoicing period start date.
An Invoice shall have an Invoice issue date.
[BR-03]-An Invoice shall have an Invoice issue date.
If both Invoice line period start date and Invoice line period end date are given then the Invoice line period end date shall be later or equal to the Invoice line period start date.
[BR-30]-If both Invoice line period start date and Invoice line period end date are given then the Invoice line period end date shall be later or equal to the Invoice line period start date.
BR-31
BR-32
BR-33
BR-36
Each document level allowance shall have a Document level allowance amount.
[BR-31]-Each document level allowance shall have a Document level allowance amount.
Each document level allowance shall have a Document level allowance VAT category code.
[BR-32]-Each document level allowance shall have a Document level allowance VAT category code.
Each document level allowance shall have a Document level allowance reason or a Document level allowance reason code.
[BR-33]-Each document level allowance shall have a Document level allowance reason or a document level allowance reason code.
Each document level charge shall have a Document level charge amount.
[BR-36]-Each document level charge shall have a Document level charge amount.
BR-37
BR-38
BR-4
BR-41
Each document level charge shall have a Document level charge VAT category code.
[BR-37]-Each document level charge shall have a Document level charge VAT category code.
Each document level charge shall have a Document level charge reason or a Document level charge reason code.
[BR-38]-Each document level charge shall have a Document level charge reason or a Document level charge reason code.
An Invoice shall have an Invoice type code.
[BR-04]-An Invoice shall have an Invoice type code.
Each Invoice line allowance shall have an Invoice line allowance amount.
[BR-41]-Each Invoice line allowance shall have an Invoice line allowance amount.
BR-42
BR-43
BR-44
BR-45
BR-46
BR-47
Each Invoice line allowance shall have an Invoice line allowance reason or an Invoice line allowance reason code.
[BR-42]-Each Invoice line allowance shall have an Invoice line allowance reason or an Invoice line allowance reason code.
Each Invoice line charge shall have an Invoice line charge amount.
[BR-43]-Each Invoice line charge shall have an Invoice line charge amount.
Each Invoice line charge shall have an Invoice line charge reason or an Invoice line charge reason code.
[BR-44]-Each Invoice line charge shall have an Invoice line charge reason or an invoice line allowance reason code.
Each VAT breakdown shall have a VAT category taxable amount.
[BR-45]-Each VAT breakdown shall have a VAT category taxable amount.
Each VAT breakdown shall have a VAT category tax amount.
[BR-46]-Each VAT breakdown shall have a VAT category tax amount.
Each VAT breakdown shall be defined through a VAT category code.
[BR-47]-Each VAT breakdown shall be defined through a VAT category code.
BR-48
BR-49
BR-5
BR-50
BR-51
BR-52
BR-53
BR-54
BR-55
BR-56
BR-57
BR-6
An Invoice shall contain Seller name. [BR-06]-An Invoice shall contain Seller name.
Each VAT breakdown shall have a VAT category rate, except if the Invoice is not subject to VAT.
[BR-48]-Each VAT breakdown shall have a VAT category rate, except if the Invoice is not subject to VAT.
A payment instruction shall specify the Payment means type code.
[BR-49]-A payment instruction shall specify the Payment means type code.
An Invoice shall have an Invoice currency code.
[BR-05]-An Invoice shall have an Invoice currency code.
A Payment account identifier shall be present if Credit transfer information is provided in the Invoice.
[BR-50]-A payment account identifier shall be present if Credit Transfer identification information is provided in the Invoice.
The last 4 to 6 digits of the Payment card primary account number shall be present if Payment card information is provided in the Invoice.
[BR-51]-The last 4 to 6 digits of the Payment card primary account number shall be present if payment card information is provided in the Invoice.
Each additional supporting document shall contain a Supporting document identifier.
[BR-52]-Each additional supporting document shall contain a Supporting document identifier.
If the VAT accounting currency code is present, then the Invoice total VAT amount in accounting currency shall be provided.
[BR-53]-If the VAT accounting currency code is present, then the Invoice total VAT amount in accounting currency shall be provided.
Each Item attribute shall contain an Item attribute name and an Item attribute value.
[BR-54]-Each Item attribute shall contain an Item attribute name and an Item attribute value.
Each Preceding invoice reference shall contain a preceding invoice number.
[BR-55]-Each Preceding invoice reference shall contain a preceding invoice number.
Each Seller tax representative shall have a Seller tax representative VAT identifier
[BR-56]-Each Seller tax representative shall have a Seller tax representative VAT identifier
Each Deliver to address shall contain a Deliver to country code
[BR-57]-Each Deliver to address shall contain a Deliver to country code
BR-61
BR-62
BR-63
BR-64
BR-65
BR-7
An Invoice shall contain Buyer name. [BR-07]-An Invoice shall contain Buyer name.
If the Payment means type is SEPA credit transfer, Local credit transfer or Non-SEPA international credit transfer, the Payment account identifier shall be present.
[BR-61]-If the Payment means type is SEPA credit transfer, Local credit transfer or Non-SEPA international credit transfer, the Payment account identifier shall be present.
The Seller electronic address shall have a Scheme identifier
[BR-62]-The Seller electronic address shall have a Scheme identifier
The Buyer electronic address shall have a Scheme identifier
[BR-63]-The Buyer electronic address shall have a Scheme identifier
The Item standard identifier shall have a Scheme identifier
[BR-64]-The Item standard identifier shall have a Scheme identifier
The Item classification identifier shall have a Scheme identifier
[BR-65]-The Item classification identifier shall have a Scheme identifier
BR-8
BR-9
BR-AE-1
BR-AE-10
An Invoice shall contain the Seller postal address.
[BR-08]-An Invoice shall contain the Seller postal address.
A Seller postal address shall contain a Seller country code
[BR-09]-A Seller postal address shall contain a Seller country code
An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item VAT category code (BT-151, BT-95 or BT-102) is “VAT reverse charge” shall contain in the VAT breakdown (BG-23) exactly one VAT category code (BT-118) equal with "VAT reverse charge".
[BR-AE-01]-An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item 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 "Reverse charge".
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).
[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).
BR-AE-2
BR-AE-3
BR-AE-4
An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is “Exempt from VAT” shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier or the Buyer tax registration identifier.
[BR-AE-02]-An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is "Reverse charge" shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier or the Buter tax registration identifier.
An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is “Exempt from VAT” shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier or the Buyer tax registration identifier.
[BR-AE-03]-An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is "Reverse charge" shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier or the Buyer tax registration identifier.
An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is “Exempt from VAT” shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48).
[BR-AE-04]-An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is "Reverse charge" shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48).
BR-AE-5 [BR-AE-05]-In an Invoice line where the Invoic
BR-AE-6 [BR-AE-06]-In a document level allowance wher
BR-AE-7 [BR-AE-07]-In a document level charge where t
BR-AE-8
In an Invoice line where the Invoice item VAT category code (BT-151) is "Reverse charge" the Invoiced item VAT rate (BT-152) shall be 0 (zero).
In a document level allowance where the Invoice item VAT category code (BT-95) is "Reverse charge" the Invoiced item VAT rate (BT-96) shall be 0 (zero).
In a document level charge where the Invoice item VAT category code (BT-102) is "Reverse charge" the Invoiced item VAT rate (BT-103) shall be 0 (zero).
In a VAT breakdown (BG-23) where 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 document level allowance amounts (BT-92) plus document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are “Reverse charge".
[BR-AE-08]-In a VAT breakdown (BG-23) where 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 document level allowance amounts (BT-92) plus document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Reverse charge".
BR-AE-9
BR-CO-10
BR-CO-11
BR-CO-12
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-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).
Sum of Invoice line net amount = ∑ Invoice line net amount.
[BR-CO-10]-Sum of Invoice line net amount = Σ Invoice line net amount.
Sum of allowances on document level = ∑ Document level allowance amount.
[BR-CO-11]-Sum of allowances on document level = Σ Document level allowance amount.
Sum of charges on document level = ∑ Document level charge amount.
[BR-CO-12]-Sum of charges on document level = Σ Document level charge amount.
BR-CO-13
BR-CO-14
BR-CO-15
Invoice total amount without VAT = ∑ Invoice line net amount - Sum of allowances on document level + Sum of charges on document level.
[BR-CO-13]-Invoice total amount without VAT = Σ Invoice line net amount - Sum of allowances on document level + Sum of charges on document level.
Invoice total VAT amount = ∑ VAT category tax amount.
[BR-CO-14]-Invoice total VAT amount = Σ VAT category tax amount.
Invoice total amount with VAT = Invoice total amount without VAT + Invoice total VAT amount.
[BR-CO-15]-Invoice total amount with VAT = Invoice total amount without VAT + Invoice total VAT amount.
BR-CO-16
BR-CO-17
BR-CO-18
BR-CO-19
BR-CO-20
Amount due for payment = Invoice total VAT amount-Paid amount + Rounding amount (BT-114).
[BR-CO-16]-Amount due for payment = Invoice total VAT amount-Paid amount + Rounding amount (BT-114).
VAT category tax amount = VAT category taxable amount x (VAT category rate / 100), rounded to two decimals.
[BR-CO-17]-VAT category tax amount = VAT category taxable amount x (VAT category rate / 100), rounded to two decimals.
An invoice shall at least have one VAT breakdown group (BG-23)
[BR-CO-18]-An invoice shall at least have one VAT breakdown group (BG-23)
If Delivery or invoice period (BG-14) is used, the Delivery period start date or the Delivery period end date shall be filled, or both.
[BR-CO-19]-If Delivery or invoice period (BG-14) is used, the Delivery period start date or the Delivery period end date shall be filled, or both.
If Invoice line period (BG-26) is used, the Invoice line period start date or the Invoice line period end date shall be filled, or both.
[BR-CO-20]-If Invoice line period (BG-26) is used, the Invoice line period start date or the Invoice line period end date shall be filled, or both.
BR-CO-21
BR-CO-22
BR-CO-23
BR-CO-24
Each Document level allowance (BG-20) shall contain a Document level allowance reason or a Document level allowance reason code, or both.
[BR-CO-21]-Each Document level allowance (BG-20) shall contain a Document level allowance reason or a Document level allowance reason code, or both.
Each Document level charge (BG-21) shall contain a Document level charge reason or a Document level charge reason code, or both.
[BR-CO-22]-Each Document level charge (BG-21) shall contain a Document level charge reason or a Document level charge reason code, or both.
Each Invoice line allowance (BG-27) shall contain an Invoice line allowance reason or an Invoice line allowance reason code, or both.
[BR-CO-23]-Each Invoice line allowance (BG-27) shall contain an Invoice line allowance reason or an Invoice line allowance reason code, or both.
Each Invoice line charge (BG-28) shall contain an Invoice line charge reason or an Invoice line charge reason code, or both.
[BR-CO-24]-Each Invoice line charge (BG-28) shall contain an Invoice line charge reason or an Invoice line charge reason code, or both.
BR-CO-25
BR-CO-26
BR-CO-3
BR-CO-4
BR-CO-5
BR-CO-6
BR-CO-7
BR-CO-8
In case the Amount due for payment (BT-115) is positive, either the Payment due date (BT-9) or the Payment terms (BT-20) shall be present.
[BR-CO-25]-In case the Amount due for payment (BT-115) is positive, either the Payment due date (BT-9) or the Payment terms (BT-20) shall be present.
In order for the Buyer to automatically identify a supplier, the Seller identifier (BT-29), the Seller legal registration identifier (BT-30) or the Seller VAT identifier (BT-31) shall be present.
[BR-CO-26]-In order for the Buyer to automatically identify a supplier, either the Seller identifier (BT-29), the Seller legal registration identifier (BT-30) or the Seller VAT identifier (BT-31) shall be present.
Value added tax point date and Value added tax point date code are mutually exclusive.
[BR-CO-03]-Value added tax point date and Value added tax point date code are mutually exclusive.
Each Invoice line shall be categorized with an Invoiced item VAT category code.
[BR-CO-04]-Each Invoice line shall be categorized with an Invoiced item VAT category code.
Document level allowance reason code and Document level allowance reason shall indicate the same type of allowance.
Not existing in Validation rules, cannot be validated
Document level charge reason code and Document level charge reason shall indicate the same type of charge.
Not existing in Validation rules, cannot be validated
Invoice line allowance reason code and Invoice line allowance reason shall indicate the same type of allowance reason.
Not existing in Validation rules, cannot be validated
Invoice line charge reason code and Invoice line charge reason shall indicate the same type of charge reason.
Not existing in Validation rules, cannot be validated
BR-CO-9
BR-E-1
BR-E-10
The Seller VAT identifier, Seller tax representative VAT identifier, Buyer VAT identifier 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’.
[BR-CO-09]-The Seller VAT identifier, Seller tax representative VAT identifier, Buyer VAT identifier 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 %E2%80%98EL%E2%80%99.
An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item VAT category code (BT-151, BT-95 or BT-102) is “Exempt from VAT” shall contain exactly one a VAT breakdown (BG-23) with VAT category code (BT-118) equal to "Exempt from VAT".
[BR-E-01]-An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item VAT category code (BT-151, BT-95 or BT-102) is "Exempt from VAT" shall contain exactly one a VAT breakdown (BG-23) with VAT category code (BT-118) equal to "Exempt from VAT".
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).
[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).
BR-E-2
BR-E-3
BR-E-4
An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is “Exempt from VAT” shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
[BR-E-02]-An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is "Exempt from VAT" shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is “Exempt from VAT” shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
[BR-E-03]-An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is "Exempt from VAT" shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is “Exempt from VAT” shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
[BR-E-04]-An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is "Exempt from VAT" shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
BR-E-5
BR-E-6
BR-E-7
In an Invoice line where the Invoice item VAT category code (BT-151) is "Exempt from VAT", the Invoiced item VAT rate (BT-152) shall be 0 (zero).
[BR-E-05]-In an Invoice line where the Invoice item VAT category code (BT-151) is "Exempt from VAT", the Invoiced item VAT rate (BT-152) shall be 0 (zero).
In a document level allowance where the Invoice item VAT category code (BT-95) is "Exempt from VAT", the Invoiced item VAT rate (BT-96) shall be 0 (zero).
[BR-E-06]-In a document level allowance where the Invoice item VAT category code (BT-95) is "Exempt from VAT", the Invoiced item VAT rate (BT-96) shall be 0 (zero).
In a document level charge where the Invoice item VAT category code (BT-102) is "Exempt from VAT", the Invoiced item VAT rate (BT-103) shall be 0 (zero).
[BR-E-07]-In a document level charge where the Invoice item VAT category code (BT-102) is "Exempt from VAT", the Invoiced item VAT rate (BT-103) shall be 0 (zero).
BR-E-8
BR-E-9
BR-G-1
In a VAT breakdown (BG-23) where 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 document level allowance amounts (BT-92) plus document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are “Exempt from VAT".
[BR-E-08]-In a VAT breakdown (BG-23) where 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 document level allowance amounts (BT-92) plus document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Exempt from VAT".
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-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).
An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item 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-01]-An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item 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-10
BR-G-2
BR-G-3
BR-G-4
A VAT Breakdown (BG-23) with 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).
[BR-G-10]-A VAT Breakdown (BG-23) with 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).
An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is “Export outside the EU” shall contain the Sellers VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63).
[BR-G-02]-An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is "Export outside the EU" shall contain the Sellers VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63).
An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is “Export outside the EU” shall contain the Sellers VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63).
[BR-G-03]-An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is "Export outside the EU" shall contain the Sellers VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63).
An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is “Export outside the EU” shall contain the Sellers VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63).
[BR-G-04]-An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is "Export outside the EU" shall contain the Sellers VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63).
BR-G-5
BR-G-6
BR-G-7
In an Invoice line where the Invoice item VAT category code (BT-151) is "Export outside the EU" the Invoiced item VAT rate (BT-152) shall be 0 (zero).
[BR-G-05]-In an Invoice line where the Invoice item VAT category code (BT-151) is "Export outside the EU" the Invoiced item VAT rate (BT-152) shall be 0 (zero).
In a document level allowance where the Invoice item VAT category code (BT-95) is "Export outside the EU" the Invoiced item VAT rate (BT-96) shall be 0 (zero).
[BR-G-06]-In a document level allowance where the Invoice item VAT category code (BT-95) is "Export outside the EU" the Invoiced item VAT rate (BT-96) shall be 0 (zero).
In a document level charge where the Invoice item VAT category code (BT-102) is "Export outside the EU" the Invoiced item VAT rate (BT-103) shall be 0 (zero).
[BR-G-07]-In a document level charge where the Invoice item VAT category code (BT-102) is "Export outside the EU" the Invoiced item VAT rate (BT-103) shall be 0 (zero).
BR-G-8
BR-G-9
BR-IC-1
In a VAT breakdown (BG-23) where 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 document level allowance amounts (BT-92) plus document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are “Export outside the EU".
[BR-G-08]-In a VAT breakdown (BG-23) where 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 document level allowance amounts (BT-92) plus document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Export outside the EU".
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-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).
An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item 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-01]-An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item 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-10
BR-IC-11
BR-IC-12
BR-IC-2
A VAT Breakdown (BG-23) with 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-10]-A VAT Breakdown (BG-23) with 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).
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 delivery period (BG-14) shall not be blank.
[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 delivery period (BG-14) shall not be blank.
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.
[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.
An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is “Intra-community supply” shall contain the Sellers VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier.
[BR-IC-02]-An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is "Intra-community supply" shall contain the Sellers VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier.
BR-IC-3
BR-IC-4
BR-IC-5
An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is “Intra-community supply” shall contain the Sellers VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier.
[BR-IC-03]-An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is "Intra-community supply" shall contain the Sellers VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier.
An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is “Intra-community supply” shall contain the Sellers 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 where the Invoiced item VAT category code (BT-102) is "Intra-community supply" shall contain the Sellers VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48).
In an Invoice line where the Invoice item VAT category code (BT-151) is "Intra-community supply" the invoiced item VAT rate (BT-152) shall be 0 (zero).
[BR-IC-05]-In an Invoice line where the Invoice item VAT category code (BT-151) is "Intra-community supply" the invoiced item VAT rate (BT-152) shall be 0 (zero).
BR-IC-6
BR-IC-7
BR-IC-8
In a document level allowance where the Invoice item VAT category code (BT-95) is "Intra-community supply" the invoiced item VAT rate (BT-96) shall be 0 (zero).
[BR-IC-06]-In a document level allowance where the Invoice item VAT category code (BT-95) is "Intra-community supply" the invoiced item VAT rate (BT-96) shall be 0 (zero).
In a document level charge where the Invoice item VAT category code (BT-102) is "Intra-community supply" the invoiced item VAT rate (BT-103) shall be 0 (zero).
[BR-IC-07]-In a document level charge where the Invoice item VAT category code (BT-102) is "Intra-community supply" the invoiced item VAT rate (BT-103) shall be 0 (zero).
In a VAT breakdown (BG-23) where 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 document level allowance amounts (BT-92) plus document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are “Intra-community supply".
[BR-IC-08]-In a VAT breakdown (BG-23) where 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 document level allowance amounts (BT-92) plus document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Intra-community supply".
BR-IC-9
BR-IG-1
BR-IG-10
BR-IG-2
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-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).
An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item 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-L-01]-An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item 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".
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).
[BR-L-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).
An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is “IGIC” shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
[BR-L-02]-An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is "IGIC" shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
BR-IG-3
BR-IG-4
BR-IG-5
An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is “IGIC” shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
[BR-L-03]-An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is "IGIC" shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is “IGIC” shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
[BR-L-04]-An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is "IGIC" shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
In an Invoice line where the Invoice item VAT category code (BT-151) is "IGIC" the invoiced item VAT rate (BT-152) shall be 0 (zero) or greater than zero.
[BR-L-05]-In an Invoice line where the Invoice item VAT category code (BT-151) is "IGIC" the invoiced item VAT rate (BT-152) shall be 0 (zero) or greater than zero.
BR-IG-6
BR-IG-7
BR-IG-8
In a document level allowance where the Invoice item VAT category code (BT-95) is "IGIC" the invoiced item VAT rate (BT-96) shall be 0 (zero) or greater than zero.
[BR-L-06]-In a document level allowance where the Invoice item VAT category code (BT-95) is "IGIC" the invoiced item VAT rate (BT-96) shall be 0 (zero) or greater than zero.
In a document level charge where the Invoice item VAT category code (BT-102) is "IGIC" the invoiced item VAT rate (BT-103) shall be 0 (zero) or greater than zero.
[BR-L-07]-In a document level charge where the Invoice item VAT category code (BT-102) is "IGIC" the invoiced item VAT rate (BT-103) shall be 0 (zero) or greater than zero.
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-L-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-IG-9
BR-IP-1
BR-IP-10
BR-IP-2
The VAT category tax amount (BT-117) in 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-L-09]-The VAT category tax amount (BT-117) in 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).
An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item 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-M-01]-An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item 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".
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).
[BR-M-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).
An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is “IPSI” shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
[BR-M-02]-An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is "IPSI" shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
BR-IP-3
BR-IP-4
BR-IP-5
An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is “IPSI” shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
[BR-M-03]-An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is "IPSI" shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is “IPSI” shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
[BR-M-04]-An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is "IPSI" shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
In an Invoice line where the Invoice item VAT category code (BT-151) is "IPSI" the invoiced item VAT rate (BT-152) shall be 0 (zero) or greater than zero.
[BR-M-05]-In an Invoice line where the Invoice item VAT category code (BT-151) is "IPSI" the invoiced item VAT rate (BT-152) shall be 0 (zero) or greater than zero.
BR-IP-6
BR-IP-7
BR-IP-8
In a document level allowance where the Invoice item VAT category code (BT-95) is "IPSI" the invoiced item VAT rate (BT-96) shall be 0 (zero) or greater than zero.
[BR-M-06]-In a document level allowance where the Invoice item VAT category code (BT-95) is "IPSI" the invoiced item VAT rate (BT-96) shall be 0 (zero) or greater than zero.
In a document level charge where the Invoice item VAT category code (BT-102) is "IPSI" the invoiced item VAT rate (BT-103) shall be 0 (zero) or greater than zero.
[BR-M-07]-In a document level charge where the Invoice item VAT category code (BT-102) is "IPSI" the invoiced item VAT rate (BT-103) shall be 0 (zero) or greater than zero.
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-M-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-IP-9
BR-O-1
BR-O-10
BR-O-11
BR-O-12
The VAT category tax amount (BT-117) in 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-M-09]-The VAT category tax amount (BT-117) in 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).
An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item 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 category code (BT-118) equal to "Not subject to VAT".
[BR-O-01]-An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item 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 category code (BT-118) equal to "Not subject to VAT".
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-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).
An Invoice that contains a VAT breakdown group (BG-23) with a VAT category code (BT-118) as "Not subject to VAT" shall not contain other VAT breakdown groups (BG-23).
[BR-O-11]-An Invoice that contains a VAT breakdown group (BG-23) with a VAT category code (BT-118) as "Not subject to VAT" shall not contain other VAT breakdown groups (BG-23).
An Invoice that contains a VAT breakdown group (BG-23) with a VAT category code (BT-118) "Not subject to VAT" shall not contain lines where the Invoiced item VAT category code (BT-151) is not "Not subject to VAT".
[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 lines where the Invoiced item VAT category code (BT-151) is not "Not subject to VAT".
BR-O-13
BR-O-14
BR-O-2
BR-O-3
An Invoice that contains a VAT breakdown group (BG-23) with a VAT category code (BT-118) "Not subject to VAT" shall not contain a document level allowances group (BG-20) where document level allowance VAT category code (BT-95) 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 a document level allowances group (BG-20) where document level allowance VAT category code (BT-95) is not "Not subject to VAT".
An Invoice that contains a VAT breakdown group (BG-23) with a VAT category code (BT-118) "Not subject to VAT" shall not contain a document Level charge group (BG-21) where document level charge VAT category code (BT-102) 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 a document Level charge group (BG-21) where document level charge VAT category code (BT-102) is not "Not subject to VAT".
An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is “Not subject to VAT” shall not contain the Seller's VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) or the Buyer's VAT identifier (BT-46).
[BR-O-02]-An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is "Not subject to VAT" shall not contain the Seller's VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) or the Buyer's VAT identifier (BT-46).
An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is “Not subject to VAT” shall not contain the Seller's VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) or the Buyer's VAT identifier (BT-48).
[BR-O-03]-An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is "Not subject to VAT" shall not contain the Seller's VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) or the Buyer's VAT identifier (BT-48).
BR-O-4
BR-O-5
BR-O-6
BR-O-7
An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is “Not subject to VAT” shall not contain the Seller's VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) or the Buyer's VAT identifier (BT-48).
[BR-O-04]-An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is "Not subject to VAT" shall not contain the Seller's VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) or the Buyer's VAT identifier (BT-48).
An Invoice line where VAT category code (BT-151) is "Not subject to VAT" shall not contain an invoiced item VAT rate (BT-152).
[BR-O-05]-An Invoice line where VAT category code (BT-151) is "Not subject to VAT" shall not contain an invoiced item VAT rate (BT-152).
A document level allowance where VAT category code (BT-95) is "Not subject to VAT" shall not contain an invoiced item VAT rate (BT-96).
[BR-O-06]-A document level allowance where VAT category code (BT-95) is "Not subject to VAT" shall not contain an invoiced item VAT rate (BT-96).
A document level charge where VAT category code (BT-102) is "Not subject to VAT" shall not contain an invoiced item VAT rate (BT-103).
[BR-O-07]-A document level charge where VAT category code (BT-102) is "Not subject to VAT" shall not contain an invoiced item VAT rate (BT-103).
BR-O-8
BR-O-9
In a VAT breakdown (BG-23) where 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 document level allowance amounts (BT-92) plus document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are “Not subject to VAT".
[BR-O-08]-In a VAT breakdown (BG-23) where 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 document level allowance amounts (BT-92) plus document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Not subject to VAT".
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-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-S-1
BR-S-10
BR-S-2
An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item 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-01]-An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item 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".
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).
[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).
An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is “Standard rated” shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
[BR-S-02]-An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is "Standard rated" shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
BR-S-3
BR-S-4
BR-S-5
An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is “Standard rated” shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
[BR-S-03]-An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is "Standard rated" shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is “Standard rated” shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
[BR-S-04]-An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is "Standard rated" shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
In an Invoice line where the Invoice item VAT category code (BT-151) is "Standard rated" the Invoiced item VAT rate (BT-152) shall be greater than zero.
[BR-S-05]-In an Invoice line where the Invoice item VAT category code (BT-151) is "Standard rated" the Invoiced item VAT rate (BT-152) shall be greater than zero.
BR-S-6
BR-S-7
BR-S-8
In a document level allowance where the Invoice item VAT category code (BT-95) is "Standard rated" the Invoiced item VAT rate (BT-96) shall be greater than zero.
[BR-S-06]-In a document level allowance where the Invoice item VAT category code (BT-95) is "Standard rated" the Invoiced item VAT rate (BT-96) shall be greater than zero.
In a document level charge where the Invoice item VAT category code (BT-102) is "Standard rated" the Invoiced item VAT rate (BT-103) shall be greater than zero.
[BR-S-07]-In a document level charge where the Invoice item VAT category code (BT-102) is "Standard rated" the Invoiced item VAT rate (BT-103) shall be greater than zero.
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).
[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).
BR-S-9
BR-Z-1
BR-Z-10
BR-Z-2
BR-Z-3
The VAT category tax amount (BT-117) in 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-09]-The VAT category tax amount (BT-117) in 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).
An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item 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".
[BR-Z-01]-An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item 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".
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).
[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).
An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is “Zero rated” shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
[BR-Z-02]-An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is "Zero rated" shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is “Zero rated” shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
[BR-Z-03]-An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is "Zero rated" shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
BR-Z-4
BR-Z-5
BR-Z-6
BR-Z-7
An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is “Zero rated” shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
[BR-Z-04]-An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is "Zero rated" shall contain the Sellers VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) or the Seller tax representative VAT identifier (BT-63).
In an Invoice line where the Invoice item VAT category code (BT-151) is "Zero rated" the Invoiced item VAT rate (BT-152) shall be 0 (zero).
[BR-Z-05]-In an Invoice line where the Invoice item VAT category code (BT-151) is "Zero rated" the Invoiced item VAT rate (BT-152) shall be 0 (zero).
In a document level allowance where the Invoice item VAT category code (BT-95) is "Zero rated" the Invoiced item VAT rate (BT-96) shall be 0 (zero).
[BR-Z-06]-In a document level allowance where the Invoice item VAT category code (BT-95) is "Zero rated" the Invoiced item VAT rate (BT-96) shall be 0 (zero).
In a document level charge where the Invoice item VAT category code (BT-102) is "Zero rated" the Invoiced item VAT rate (BT-103) shall be 0 (zero).
[BR-Z-07]-In a document level charge where the Invoice item VAT category code (BT-102) is "Zero rated" the Invoiced item VAT rate (BT-103) shall be 0 (zero).
BR-Z-8
BR-Z-9
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 amounts (BT-131) minus document level allowance amounts (BT-92) plus document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are “Zero rated".
[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 amounts (BT-131) minus document level allowance amounts (BT-92) plus document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Zero rated".
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-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).
Rules are not explicitly listed in EN16931 with rule ID's, but EN16931 states the codelist to be used in chapter 6.
[BR-CL-03]-currencyID MUST be coded using ISO code list 4217 alpha-3
Rules are not explicitly listed in EN16931 with rule ID's, but EN16931 states the codelist to be used in chapter 6.
[BR-CL-04]-Invoice currency code MUST be coded using ISO code list 4217 alpha-3
Rules are not explicitly listed in EN16931 with rule ID's, but EN16931 states the codelist to be used in chapter 6.
[BR-CL-05]-Tax currency code MUST be coded using ISO code list 4217 alpha-3
Rules are not explicitly listed in EN16931 with rule ID's, but EN16931 states the codelist to be used in chapter 6.
[BR-CL-06]-Country codes in an invoice MUST be coded using ISO code list 3166-1
[BR-CL-08]-Payment means in an invoice MUST
[BR-CL-09]-Invoice tax categories MUST be co
[BR-CL-10]-Invoice tax categories MUST be co
Rules are not explicitly listed in EN16931 with rule ID's, but EN16931 states the codelist to be used in chapter 6.
[BR-CL-07]-Country codes in an invoice MUST be coded using ISO code list 3166-1
Rules are not explicitly listed in EN16931 with rule ID's, but EN16931 states the codelist to be used in chapter 6.
Rules are not explicitly listed in EN16931 with rule ID's, but EN16931 states the codelist to be used in chapter 6.
Rules are not explicitly listed in EN16931 with rule ID's, but EN16931 states the codelist to be used in chapter 6.
[BR-CL-12]-For Mime code in attribute use
[BR-CL-13]-Coded allowance reasons SHOULD b
[BR-CL-14]-Coded allowance and charge reaso
Rules are not explicitly listed in EN16931 with rule ID's, but EN16931 states the codelist to be used in chapter 6.
Rules are not explicitly listed in EN16931 with rule ID's, but EN16931 states the codelist to be used in chapter 6.
Rules are not explicitly listed in EN16931 with rule ID's, but EN16931 states the codelist to be used in chapter 6.
Rules and validation from EN16931 DifferencesContext Test SKOS
exists(cbc:CustomizationID) exactMatch
exactMatch
missing
exists(cbc:LineExtensionAmount) exactMatch
exists(cbc:TaxExclusiveAmount) exactMatch
exists(cbc:TaxInclusiveAmount) exactMatch
exists(cbc:PayableAmount) exactMatch
exactMatch
cac:PayeeParty exists(cac:PartyName/cbc:Name) missing
exists(cac:PartyName/cbc:Name) missing
exists(cac:PostalAddress) missing
exists(cbc:ID) exactMatch
missing
//ubl:Invoice | //cn:CreditNote//ubl:Invoice | //cn:CreditNote
exists(cac:AccountingCustomerParty/cac:Party/cac:PostalAddress)
cac:AccountingCustomerParty/cac:Party/cac:PostalAddress
exists(cac:Country/cbc:IdentificationCode)
cac:LegalMonetaryTotal
cac:LegalMonetaryTotal
cac:LegalMonetaryTotal
cac:LegalMonetaryTotal//ubl:Invoice | //cn:CreditNote
exists(cac:InvoiceLine) or exists(cac:CreditNoteLine)
cac:TaxRepresentativeParty
cac:TaxRepresentativeParty
//ubl:Invoice | //cn:CreditNotecac:TaxRepresentativeParty/cac:PostalAddress
exists(cac:Country/cbc:IdentificationCode)
exists(cbc:ID) exactMatch
exactMatch
exactMatch
exists(cbc:LineExtensionAmount) exactMatch
exists(cac:Item/cbc:Name) broadMatch
exists(cac:Price/cbc:PriceAmount) missing
(cac:Price/cbc:PriceAmount) >= 0 exactMatch
missing
exactMatch
exists(cbc:IssueDate) exactMatch
broadMatch
cac:InvoiceLine | cac:CreditNoteLine
cac:InvoiceLine | cac:CreditNoteLine
exists(cbc:InvoicedQuantity) or exists(cbc:CreditedQuantity)
cac:InvoiceLine | cac:CreditNoteLine
exists(cbc:InvoicedQuantity/@unitCode) or exists(cbc:CreditedQuantity/@unitCode)
cac:InvoiceLine | cac:CreditNoteLine
cac:InvoiceLine | cac:CreditNoteLine
cac:InvoiceLine | cac:CreditNoteLine
cac:InvoiceLine | cac:CreditNoteLine
cac:InvoiceLine | cac:CreditNoteLine
(cac:Price/cac:AllowanceCharge/cbc:BaseAmount) >= 0 or not(exists(cac:Price/cac:AllowanceCharge/cbc:BaseAmount))
cac:InvoicePeriod
(exists(cbc:EndDate) and exists(cbc:StartDate) and (cbc:EndDate) >= (cbc:StartDate)) or not(exists(cbc:StartDate)) or not(exists(cbc:EndDate))
//ubl:Invoice | //cn:CreditNotecac:InvoiceLine/cac:InvoicePeriod | cac:CreditNoteLine/cac:InvoicePeriod
(exists(cbc:EndDate) and exists(cbc:StartDate) and (cbc:EndDate) >= (cbc:StartDate)) or not(exists(cbc:StartDate)) or not(exists(cbc:EndDate))
exists(cbc:Amount) missing
exists(cac:TaxCategory/cbc:ID) closeMatch
closeMatch
exists(cbc:Amount) missing
//ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = 'false'] | //cn:CreditNote/cac:AllowanceCharge[cbc:ChargeIndicator = 'false']
//ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = 'false'] | //cn:CreditNote/cac:AllowanceCharge[cbc:ChargeIndicator = 'false']
//ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = 'false'] | //cn:CreditNote/cac:AllowanceCharge[cbc:ChargeIndicator = 'false']
exists(cbc:AllowanceChargeReason) or exists(cbc:AllowanceChargeReasonCode)
//ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = 'true'] | //cn:CreditNote/cac:AllowanceCharge[cbc:ChargeIndicator = 'true']
exists(cac:TaxCategory/cbc:ID) closeMatch
closeMatch
exactMatch
exists(cbc:Amount) missing
//ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = 'true'] | //cn:CreditNote/cac:AllowanceCharge[cbc:ChargeIndicator = 'true']
//ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = 'true'] | //cn:CreditNote/cac:AllowanceCharge[cbc:ChargeIndicator = 'true']
exists(cbc:AllowanceChargeReason) or exists(cbc:AllowanceChargeReasonCode)
//ubl:Invoice | //cn:CreditNote
exists(cbc:InvoiceTypeCode) or exists(cbc:CreditNoteTypeCode)
//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = 'false'] | //cac:CreditNoteLine/cac:AllowanceCharge[cbc:ChargeIndicator = 'false']
missing
exists(cbc:Amount) missing
missing
exists(cbc:TaxableAmount) exactMatch
exists(cbc:TaxAmount) exactMatch
exists(cac:TaxCategory/cbc:ID) exactMatch
//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = 'false'] | //cac:CreditNoteLine/cac:AllowanceCharge[cbc:ChargeIndicator = 'false']
exists(cbc:AllowanceChargeReason) or exists(cbc:AllowanceChargeReasonCode)
//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = 'true'] | //cac:CreditNoteLine/cac:AllowanceCharge[cbc:ChargeIndicator = 'true']
//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = 'true'] | //cac:CreditNoteLine/cac:AllowanceCharge[cbc:ChargeIndicator = 'true']
exists(cbc:AllowanceChargeReason) or exists(cbc:AllowanceChargeReasonCode)
cac:TaxTotal/cac:TaxSubtotal
cac:TaxTotal/cac:TaxSubtotal
cac:TaxTotal/cac:TaxSubtotal
closeMatch
exists(cbc:PaymentMeansCode) exactMatch
exists(cbc:DocumentCurrencyCode) exactMatch
exists(cbc:ID) missing
missing
exists(cbc:ID) missing
closeMatch
exists(cbc:Name) and exists(cbc:Value) missing
missing
missing
missing
exactMatch
cac:TaxTotal/cac:TaxSubtotal
exists(cac:TaxCategory/cbc:Percent) or (cac:TaxCategory/cbc:ID='O')
cac:PaymentMeans//ubl:Invoice | //cn:CreditNotecac:PaymentMeans/cac:PayeeFinancialAccount
cac:PaymentMeans/cac:CardAccount
string-length(cbc:PrimaryAccountNumberID)>=4 and string-length(cbc:PrimaryAccountNumberID)<=6
cac:AdditionalDocumentReference
//ubl:Invoice | //cn:CreditNote
every $taxcurrency in cbc:TaxCurrencyCode satisfies exists(//cac:TaxTotal/cbc:TaxAmount[@currencyID=$taxcurrency])
//cac:AdditionalItemProperty
cac:BillingReference
exists(cac:InvoiceDocumentReference/cbc:ID)
cac:TaxRepresentativeParty
exists(cac:PartyTaxScheme/cbc:CompanyID)
cac:Delivery/cac:DeliveryLocation/cac:Address
exists(cac:Country/cbc:IdentificationCode)
//ubl:Invoice | //cn:CreditNote
exists(cac:AccountingSupplierParty/cac:Party/cac:PartyLegalEntity/cbc:RegistrationName)
missing
exists(@schemeID) exactMatch
exists(@schemeID) exactMatch
exists(@schemeID) exactMatch
exists(@listID) exactMatch
exactMatch
cac:PaymentMeans
(exists(cac:PayeeFinancialAccount/cbc:ID) and ((normalize-space(cbc:PaymentMeansCode) = '30') or (normalize-space(cbc:PaymentMeansCode) = '57') )) or ((normalize-space(cbc:PaymentMeansCode) != '30') and (normalize-space(cbc:PaymentMeansCode) != '57'))
cac:AccountingSupplierParty/cac:Party/cbc:EndpointIDcac:AccountingCustomerParty/cac:Party/cbc:EndpointID
cac:InvoiceLine/cac:Item/cac:StandardItemIdentification/cbc:ID | cac:CreditNoteLine/cac:Item/cac:StandardItemIdentification/cbc:ID
cac:InvoiceLine/cac:Item/cac:CommodityClassification/cbc:ItemClassificationCode | cac:CreditNoteLine/cac:Item/cac:CommodityClassification/cbc:ItemClassificationCode
//ubl:Invoice | //cn:CreditNote
exists(cac:AccountingCustomerParty/cac:Party/cac:PartyLegalEntity/cbc:RegistrationName)
exactMatch
missing
missing
missing
closeMatch
//ubl:Invoice | //cn:CreditNote
exists(cac:AccountingSupplierParty/cac:Party/cac:PostalAddress)
cac:AccountingSupplierParty/cac:Party/cac:PostalAddress
exists(cac:Country/cbc:IdentificationCode)
//ubl:Invoice | //cn:CreditNote
((exists(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'AE']) or exists(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'AE'])) and (count(//cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID) = 1) and (count(//cac:TaxCategory/cbc:ID[. != 'AE']) = 0 and count(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) != 'AE'])=0)) or (count(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'AE']) = 0 and count(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'AE'])=0)"
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'AE']
exists(cbc:TaxExemptionReason) or exists(cbc:TaxExemptionReasonCode)"
closeMatch
closeMatch
closeMatch
//ubl:Invoice | //cn:CreditNote
(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'AE']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID)) and (exists(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'AE']))
//ubl:Invoice | //cn:CreditNote
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID) = 'AE']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID)) and (exists(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID) = 'AE']))
//ubl:Invoice | //cn:CreditNote
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID) = 'AE']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID)) and (exists(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID) = 'AE']))
cac:InvoiceLine/(cbc:Percent = 0)" closeMatch
cac:AllowanceCh(cbc:Percent = 0)" closeMatch
cac:AllowanceCh(cbc:Percent = 0)" closeMatch
missingcac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'AE']
../cbc:TaxableAmount = ((sum(../../../cac:InvoiceLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='AE']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='AE']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='AE']/xs:decimal(cbc:Amount))) or (sum(../../../cac:CreditNoteLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='AE']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='AE']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='AE']/xs:decimal(cbc:Amount))))"
../cbc:TaxAmount = 0 exactMatchmissing
exactMatch
exactMatch
exactMatch
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'AE']
cac:LegalMonetaryTotal
((cbc:LineExtensionAmount) = (round(sum(//cac:InvoiceLine/xs:decimal(cbc:LineExtensionAmount)) * 10 * 10) div 100)) or ((cbc:LineExtensionAmount) = (round(sum(//cac:CreditNoteLine/xs:decimal(cbc:LineExtensionAmount)) * 10 * 10) div 100))
cac:LegalMonetaryTotal
cbc:AllowanceTotalAmount = (round(sum(../cac:AllowanceCharge[cbc:ChargeIndicator='false']/xs:decimal(cbc:Amount)) * 10 * 10) div 100) or not(cbc:AllowanceTotalAmount)
cac:LegalMonetaryTotal
cbc:ChargeTotalAmount = (round(sum(../cac:AllowanceCharge[cbc:ChargeIndicator='true']/xs:decimal(cbc:Amount)) * 10 * 10) div 100) or not(cbc:ChargeTotalAmount)
exactMatch
exactMatchCloseMatch
cac:LegalMonetaryTotal
((cbc:ChargeTotalAmount) and (cbc:AllowanceTotalAmount) and ((cbc:TaxExclusiveAmount) = round(((cbc:LineExtensionAmount) + (cbc:ChargeTotalAmount) - (cbc:AllowanceTotalAmount)) * 10 * 10) div 100 )) or (not(cbc:ChargeTotalAmount) and (cbc:AllowanceTotalAmount) and ((cbc:TaxExclusiveAmount) = round(((cbc:LineExtensionAmount) - (cbc:AllowanceTotalAmount)) * 10 * 10 ) div 100)) or ((cbc:ChargeTotalAmount) and not(cbc:AllowanceTotalAmount) and ((cbc:TaxExclusiveAmount) = round(((cbc:LineExtensionAmount) + (cbc:ChargeTotalAmount)) * 10 * 10 ) div 100)) or (not(cbc:ChargeTotalAmount) and not(cbc:AllowanceTotalAmount) and ((cbc:TaxExclusiveAmount) = (cbc:LineExtensionAmount)))
//ubl:Invoice/cac:TaxTotal | //cn:CreditNote/cac:Taxtotal
((child::cbc:TaxAmount)= round((sum(//cac:TaxSubtotal/xs:decimal(cbc:TaxAmount)) * 10 * 10)) div 100) or not(cac:TaxSubtotal)
//ubl:Invoice | //cn:CreditNote
every $Currency in cbc:DocumentCurrencyCode satisfies cac:LegalMonetaryTotal/cbc:TaxInclusiveAmount = round( (cac:LegalMonetaryTotal/cbc:TaxExclusiveAmount + cac:TaxTotal/xs:decimal(cbc:TaxAmount[@currencyID=$Currency])) * 10 * 10) div 100
CloseMatch
exactMatchexists(cac:TaxTotal/cac:TaxSubtotal) CloseMatch
CloseMatch
CloseMatch
cac:LegalMonetaryTotal
((cbc:PrepaidAmount) and not(cbc:PayableRoundingAmount) and ((cbc:PayableAmount) = (round((cbc:TaxInclusiveAmount - cbc:PrepaidAmount) * 10 * 10) div 100))) or (not(cbc:PrepaidAmount) and not(cbc:PayableRoundingAmount) and (cbc:PayableAmount) = (cbc:TaxInclusiveAmount)) or ((cbc:PrepaidAmount) and (cbc:PayableRoundingAmount) and ((round((cbc:PayableAmount - cbc:PayableRoundingAmount) * 10 * 10) div 100) = (round((cbc:TaxInclusiveAmount - cbc:PrepaidAmount) * 10 * 10) div 100))) or (not(cbc:PrepaidAmount) and (cbc:PayableRoundingAmount) and ((round((cbc:PayableAmount - cbc:PayableRoundingAmount) * 10 * 10) div 100) = (cbc:TaxInclusiveAmount)))
cac:TaxTotal/cac:TaxSubtotal
(round(cac:TaxCategory/cbc:Percent) = 0 and (round(cbc:TaxAmount) = 0)) or (round(cac:TaxCategory/cbc:Percent) != 0 and (cbc:TaxAmount = round(cbc:TaxableAmount * (cac:TaxCategory/cbc:Percent div 100) * 10 * 10) div 100 ))
//ubl:Invoice | //cn:CreditNotecac:InvoicePeriod
exists(cbc:StartDate) or exists(cbc:EndDate)
cac:InvoiceLine/cac:InvoicePeriod | cac:CreditNoteLine/cac:InvoicePeriod
exists(cbc:StartDate) or exists(cbc:EndDate)
Duplicate?
Duplicate?
missing
missing
//ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = 'false'] | //cn:CreditNote/cac:AllowanceCharge[cbc:ChargeIndicator = 'false']
exists(cbc:AllowanceChargeReason) or exists(cbc:AllowanceChargeReasonCode)
//ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = 'true'] | //cn:CreditNote/cac:AllowanceCharge[cbc:ChargeIndicator = 'true']
exists(cbc:AllowanceChargeReason) or exists(cbc:AllowanceChargeReasonCode)
//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = 'false'] | //cac:CreditNoteLine/cac:AllowanceCharge[cbc:ChargeIndicator = 'false']
exists(cbc:AllowanceChargeReason) or exists(cbc:AllowanceChargeReasonCode)
//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = 'true'] | //cac:CreditNoteLine/cac:AllowanceCharge[cbc:ChargeIndicator = 'true']
exists(cbc:AllowanceChargeReason) or exists(cbc:AllowanceChargeReasonCode)
missing
closeMatch
missing
closeMatch
missing
missing
missing
missing
cac:LegalMonetaryTotal/cbc:PayableAmount
((. > 0) and (exists(//cbc:DueDate) or exists(//cac:PaymentTerms/cbc:Note))) or (. <= 0)
cac:AccountingSupplierParty
exists(cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(cac:Party/cac:PartyIdentification/cbc:ID) or exists(cac:Party/cac:PartyLegalEntity/cbc:CompanyID)
//ubl:Invoice | //cn:CreditNote
(exists(cbc:TaxPointDate) and not(cac:InvoicePeriod/cbc:DescriptionCode)) or (not(cbc:TaxPointDate) and exists(cac:InvoicePeriod/cbc:DescriptionCode)) or (not(cbc:TaxPointDate) and not(cac:InvoicePeriod/cbc:DescriptionCode))
cac:InvoiceLine | cac:CreditNoteLine
(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)
closeMatch
closeMatch
narrowMAtch
//cac:PartyTaxScheme
not(//cac:TaxTotal/*/*/*/cbc:ID = 'VAT') or ( contains( 'AD AE AF AG AI AL AM AN AO AQ AR AS AT AU AW AX AZ BA BB BD BE BF BG BH BI BL BJ BM BN BO BR BS BT BV BW BY BZ CA CC CD CF CG CH CI CK CL CM CN CO CR CU CV CX CY CZ DE DJ DK DM DO DZ EC EE EG EH EL ER ES ET FI FJ FK FM FO FR GA GB GD GE GF GG GH GI GL GM GN GP GQ GR GS GT GU GW GY HK HM HN HR HT HU ID IE IL IM IN IO IQ IR IS IT JE JM JO JP KE KG KH KI KM KN KP KR KW KY KZ LA LB LC LI LK LR LS LT LU LV LY MA MC MD ME MF MG MH MK ML MM MN MO MP MQ MR MS MT MU MV MW MX MY MZ NA NC NE NF NG NI NL NO NP NR NU NZ OM PA PE PF PG PH PK PL PM PN PR PS PT PW PY QA RO RS RU RW SA SB SC SD SE SG SH SI SJ SK SL SM SN SO SR ST SV SY SZ TC TD TF TG TH TJ TK TL TM TN TO TR TT TV TW TZ UA UG UM US UY UZ VA VC VE VG VI VN VU WF WS YE YT ZA ZM ZW',substring(cbc:CompanyID,1,2) ) )
//ubl:Invoice | //cn:CreditNote
((exists(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'E']) or exists(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'E'])) and (count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'E']) = 1)) or (not(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'E']) and not(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'E']))"
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'E']
exists(cbc:TaxExemptionReason) or exists(cbc:TaxExemptionReasonCode)"
closeMatch
closeMatch
closeMatch
//ubl:Invoice | //cn:CreditNote
(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'E']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'E']))
//ubl:Invoice | //cn:CreditNote
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='E']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID[@schemeID != 'VAT']) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='E']))
//ubl:Invoice | //cn:CreditNote
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='E']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID)or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID[@schemeID != 'VAT']) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='E']))
(cbc:Percent = 0)" closeMatch
(cbc:Percent = 0)" closeMatch
(cbc:Percent = 0)" closeMatch
cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'E'] | cac:CreditNoteLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'E']
cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='E']
cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='E']
missing
../cbc:TaxAmount = 0" closeMatch
closeMatch
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'E']
../cbc:TaxableAmount = ((sum(../../../cac:InvoiceLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='E']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][cac:TaxCategory/cbc:ID='E']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='E']/xs:decimal(cbc:Amount))) or (sum(../../../cac:CreditNoteLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='E']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][cac:TaxCategory/cbc:ID='E']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='E']/xs:decimal(cbc:Amount))))"
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'E']
//ubl:Invoice | //cn:CreditNote
((exists(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'G']) or exists(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'G'])) and (count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'G']) = 1)) or (not(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'G']) and not(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'G']))"
missing
closeMatch
closeMatch
closeMatch
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'G']
exists(cbc:TaxExemptionReason) or exists(cbc:TaxExemptionReasonCode)"
//ubl:Invoice | //cn:CreditNote
(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'G']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'G']))
//ubl:Invoice | //cn:CreditNote
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='G']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='G']))
//ubl:Invoice | //cn:CreditNote
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='G']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='G']))
(cbc:Percent = 0)" closeMatch
(cbc:Percent = 0)" closeMatch
(cbc:Percent = 0)" closeMatch
cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'G'] | cac:CreditNoteLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'G']
cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='G']
cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='G']
missing
../cbc:TaxAmount = 0 closeMatch
closeMatch
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'G']
../cbc:TaxableAmount = ((sum(../../../cac:InvoiceLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='G']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='G']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='G']/xs:decimal(cbc:Amount))) or (sum(../../../cac:CreditNoteLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='G']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='G']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='G']/xs:decimal(cbc:Amount))))"
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'G']
//ubl:Invoice | //cn:CreditNote
((exists(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'IC']) or exists(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'IC'])) and (count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'IC']) = 1)) or (not(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'IC']) and not(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'IC']))"
missing
missing
missing
closeMatch
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'IC']
exists(cbc:TaxExemptionReason) or exists(cbc:TaxExemptionReasonCode)"
//ubl:Invoice | //cn:CreditNote
(exists(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'IC']) and (string-length(cac:Delivery/cbc:ActualDeliveryDate) > 1 or (cac:InvoicePeriod/*))) or (not(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'IC']))"
//ubl:Invoice | //cn:CreditNote
(exists(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'IC']) and (string-length(cac:Delivery/cac:DeliveryLocation/cac:Address/cac:Country/cbc:IdentificationCode) >1)) or (not(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'IC']))"
//ubl:Invoice | //cn:CreditNote
(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'IC']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID)) and (exists(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID))) or not(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'IC'])
closeMatch
closeMatch
(cbc:Percent = 0)" closeMatch
//ubl:Invoice | //cn:CreditNote
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID) = 'IC']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID)) and (exists(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID) = 'IC']))
//ubl:Invoice | //cn:CreditNote
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID) = 'IC']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID)) and (exists(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID) = 'IC']))
cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'IC'] | cac:CreditNoteLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'IC']
(cbc:Percent = 0)" closeMatch
(cbc:Percent = 0)" closeMatch
missing
cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='IC']
cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='IC']
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'IC']
../cbc:TaxableAmount = ((sum(../../../cac:InvoiceLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='IC']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='IC']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='IC']/xs:decimal(cbc:Amount))) or (sum(../../../cac:CreditNoteLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='IC']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='IC']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='IC']/xs:decimal(cbc:Amount))))"
../cbc:TaxAmount = 0 closeMatch
closeMatch
missing
closeMatch
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'IC']
//ubl:Invoice | //cn:CreditNote
((count(//cac:AllowanceCharge/cac:TaxCategory[normalize-space(cbc:ID) = 'L']) + count(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'L'])) > 0 and count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID = 'L']) > 0) or ((count(//cac:AllowanceCharge/cac:TaxCategory[normalize-space(cbc:ID) = 'L']) + count(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'L'])) = 0 and count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'L']) = 0)"
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'L']
not(cbc:TaxExemptionReason) and not(cbc:TaxExemptionReasonCode)"
//ubl:Invoice | //cn:CreditNote
(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'L']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyLegalEntity/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'L']))
closeMatch
closeMatch
(cbc:Percent) >= 0" closeMatch
//ubl:Invoice | //cn:CreditNote
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='L']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyLegalEntity/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='L']))
//ubl:Invoice | //cn:CreditNote
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[cbc:ID='L']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyLegalEntity/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[cbc:ID='L']))
cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'L']| cac:CreditNoteLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'L']
(cbc:Percent) >= 0" closeMatch
(cbc:Percent) >= 0" closeMatch
missing
cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='L']
cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='L']
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'L']
every $rate in round(cbc:Percent) satisfies (../cbc:TaxableAmount = ((sum(../../../cac:InvoiceLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='L'][cac:Item/cac:ClassifiedTaxCategory/round(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='L'][cac:TaxCategory/round(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='L'][cac:TaxCategory/round(cbc:Percent) = $rate]/xs:decimal(cbc:Amount))) or (sum(../../../cac:CreditNoteLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='L'][cac:Item/cac:ClassifiedTaxCategory/round(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='L'][cac:TaxCategory/round(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='L']
exactMatchcloseMatch
missing
closeMatch
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'L']
../cbc:TaxAmount = round(((../cbc:TaxableAmount) * (cbc:Percent div 100)) * 10 * 10) div 100"
//ubl:Invoice | //cn:CreditNote
((count(//cac:AllowanceCharge/cac:TaxCategory[normalize-space(cbc:ID) = 'M']) + count(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'M'])) > 0 and count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID = 'M']) > 0) or ((count(//cac:AllowanceCharge/cac:TaxCategory[normalize-space(cbc:ID) = 'M']) + count(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'M'])) = 0 and count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'M']) = 0)"
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'M']
not(cbc:TaxExemptionReason) and not(cbc:TaxExemptionReasonCode)"
//ubl:Invoice | //cn:CreditNote
(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'M']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyLegalEntity/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'M']))
closeMatch
closeMatch
(cbc:Percent) >= 0" closeMatch
//ubl:Invoice | //cn:CreditNote
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='M']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyLegalEntity/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='M']))
//ubl:Invoice | //cn:CreditNote
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='M']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyLegalEntity/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='M']))
cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'M']| cac:CreditNoteLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'M']
(cbc:Percent) >= 0" closeMatch
(cbc:Percent) >= 0" closeMatch
missing
cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='M']
cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='M']
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'M']
every $rate in round(cbc:Percent) satisfies (../cbc:TaxableAmount = ((sum(../../../cac:InvoiceLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='M'][cac:Item/cac:ClassifiedTaxCategory/round(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='M'][cac:TaxCategory/round(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='M'][cac:TaxCategory/round(cbc:Percent) = $rate]/xs:decimal(cbc:Amount))) or (sum(../../../cac:CreditNoteLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='M'][cac:Item/cac:ClassifiedTaxCategory/round(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='M'][cac:TaxCategory/round(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='M']
exactMatchcloseMatch
missing
missing
missing
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'M']
../cbc:TaxAmount = round(((../cbc:TaxableAmount) * (cbc:Percent div 100)) * 10 * 10) div 100"
//ubl:Invoice | //cn:CreditNote
((exists(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'O']) or exists(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'O'])) and (count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'O']) = 1)) or (not(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'O']) and not(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'O']))
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'O']
exists(cbc:TaxExemptionReason) or exists(cbc:TaxExemptionReasonCode)"
//ubl:Invoice | //cn:CreditNote
(exists(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'O']) and count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) != 'O']) = 0) or not(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'O'])"
//ubl:Invoice | //cn:CreditNote
(exists(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'O']) and count(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) != 'O']) = 0) or not(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'O'])"
missing
missing
closeMatch
closeMatch
//ubl:Invoice | //cn:CreditNote
(exists(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'O']) and count(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID) != 'O']) = 0) or not(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'O'])"
//ubl:Invoice | //cn:CreditNote
(exists(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'O']) and count(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID) != 'O']) = 0) or not(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'O'])"
//ubl:Invoice | //cn:CreditNote
(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'O']) and (not(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) and not(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID) and not(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID))) or not(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'O'])
//ubl:Invoice | //cn:CreditNote
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID) = 'O']) and (not(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) and not(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID) and not(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID) = 'O']))
closeMatch
not(cbc:Percent)" closeMatch
not(cbc:Percent)" closeMatch
not(cbc:Percent)" closeMatch
//ubl:Invoice | //cn:CreditNote
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID) = 'O']) and (not(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) and not(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID) and not(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID) = 'O']))
cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'O'] | cac:CreditNoteLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'O']
cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='O']
cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='O']
missing
../cbc:TaxAmount = 0 closeMatch
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'O']
../cbc:TaxableAmount = ((sum(../../../cac:InvoiceLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='O']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='O']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='O']/xs:decimal(cbc:Amount))) or (sum(../../../cac:CreditNoteLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='O']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='O']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='O']/xs:decimal(cbc:Amount))))"
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'O']
closeMatch
missing
closeMatch
//ubl:Invoice | //cn:CreditNote
((count(//cac:AllowanceCharge/cac:TaxCategory[normalize-space(cbc:ID) = 'S']) + count(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'S'])) > 0 and count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'S']) > 0) or ((count(//cac:AllowanceCharge/cac:TaxCategory[normalize-space(cbc:ID) = 'S']) + count(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'S'])) = 0 and count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'S']) = 0)"
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'S']
not(cbc:TaxExemptionReason) and not(cbc:TaxExemptionReasonCode)"
//ubl:Invoice | //cn:CreditNote
(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'S']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyLegalEntity/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'S']))
closeMatch
closeMatch
(cbc:Percent) > 0" closeMatch
//ubl:Invoice | //cn:CreditNote
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='S']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='S']))
//ubl:Invoice | //cn:CreditNote
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='S']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxSchemey/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='S']))
cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'S'] | cac:CreditNoteLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'S']
(cbc:Percent) > 0" closeMatch
(cbc:Percent) > 0" closeMatch
missing
cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='S']
cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='S']
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'S']
every $rate in round(cbc:Percent) satisfies ((../cbc:TaxableAmount = (sum(../../../cac:InvoiceLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='S'][cac:Item/cac:ClassifiedTaxCategory/round(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='S'][cac:TaxCategory/round(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='S'][cac:TaxCategory/round(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)))) or ../cbc:TaxableAmount = (sum(../../../cac:InvoiceLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='S'][cac:Item/cac:ClassifiedTaxCategory/round(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='S'][cac:TaxCategory/round(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-
exactMatchcloseMatch
missing
closeMatch
closeMatch
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'S']
../cbc:TaxAmount = round(((../cbc:TaxableAmount) * (cbc:Percent div 100)) * 10 * 10) div 100"
//ubl:Invoice | //cn:CreditNote
((exists(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'Z']) or exists(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'Z'])) and (count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'Z']) = 1)) or (not(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'Z']) and not(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'Z']))"
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'Z']
not(cbc:TaxExemptionReason) or not(cbc:TaxExemptionReasonCode)"
//ubl:Invoice | //cn:CreditNote
(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'Z']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'Z']))
//ubl:Invoice | //cn:CreditNote
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='Z']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:TaxCategory[normalize-space(cbc:ID) = 'Z']))
closeMatch
(cbc:Percent = 0)" closeMatch
(cbc:Percent = 0)" closeMatch
(cbc:Percent = 0)" closeMatch
//ubl:Invoice | //cn:CreditNote
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='Z']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID)or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:TaxCategory[normalize-space(cbc:ID) = 'Z']))
cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'Z'] | cac:CreditNoteLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'Z']
cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='Z']
cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='Z']
missing
../cbc:TaxAmount = 0" closeMatch
missing
missing
missing
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'Z']
../cbc:TaxableAmount = ((sum(../../../cac:InvoiceLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='Z']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='Z']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='Z']/xs:decimal(cbc:Amount))) or (sum(../../../cac:CreditNoteLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='Z']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='Z']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='Z']/xs:decimal(cbc:Amount))))"
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'Z']
@currencyID
exactMatch
((not(contains(normalize-space(.), ' ')) and contains('AED AFN ALL AMD ANG AOA ARS AUD AWG AZN BAM BBD BDT BGN BHD BIF BMD BND BOB BOV BRL BSD BTN BWP BYR BZD CAD CDF CHE CHF CHW CLF CLP CNY COP COU CRC CUP CVE CZK DJF DKK DOP DZD EEK EGP ERN ETB EUR FJD FKP GBP GEL GHS GIP GMD GNF GTQ GWP GYD HKD HNL HRK HTG HUF IDR ILS INR IQD IRR ISK JMD JOD JPY KES KGS KHR KMF KPW KRW KWD KYD KZT LAK LBP LKR LRD LSL LTL LVL LYD MAD MDL MGA MKD MMK MNT MOP MRO MUR MVR MWK MXN MXV MYR MZN NAD NGN NIO NOK NPR NZD OMR PAB PEN PGK PHP PKR PLN PYG QAR RON RSD RUB RWF SAR SBD SCR SDG SEK SGD SHP SKK SLL SOS SRD STD SVC SYP SZL THB TJS TMM TND TOP TRY TTD TWD TZS UAH UGX USD USN USS UYI UYU UZS VEF VND VUV WST XAF XAG XAU XBA XBB XBC XBD XCD XDR XFU XOF XPD XPF XTS XXX YER ZAR ZMK ZWR ZWD', concat(' ', normalize-space(.), ' '))))
exactMatch
cbc:DocumentCurrencyCode
((not(contains(normalize-space(.), ' ')) and contains('AED AFN ALL AMD ANG AOA ARS AUD AWG AZN BAM BBD BDT BGN BHD BIF BMD BND BOB BOV BRL BSD BTN BWP BYR BZD CAD CDF CHE CHF CHW CLF CLP CNY COP COU CRC CUP CVE CZK DJF DKK DOP DZD EEK EGP ERN ETB EUR FJD FKP GBP GEL GHS GIP GMD GNF GTQ GWP GYD HKD HNL HRK HTG HUF IDR ILS INR IQD IRR ISK JMD JOD JPY KES KGS KHR KMF KPW KRW KWD KYD KZT LAK LBP LKR LRD LSL LTL LVL LYD MAD MDL MGA MKD MMK MNT MOP MRO MUR MVR MWK MXN MXV MYR MZN NAD NGN NIO NOK NPR NZD OMR PAB PEN PGK PHP PKR PLN PYG QAR RON RSD RUB RWF SAR SBD SCR SDG SEK SGD SHP SKK SLL SOS SRD STD SVC SYP SZL THB TJS TMM TND TOP TRY TTD TWD TZS UAH UGX USD USN USS UYI UYU UZS VEF VND VUV WST XAF XAG XAU XBA XBB XBC XBD XCD XDR XFU XOF XPD XPF XTS XXX YER ZAR ZMK ZWR ZWD', concat(' ', normalize-space(.), ' '))))
exactMatch
cbc:TaxCurrencyCode
((not(contains(normalize-space(.), ' ')) and contains('AED AFN ALL AMD ANG AOA ARS AUD AWG AZN BAM BBD BDT BGN BHD BIF BMD BND BOB BOV BRL BSD BTN BWP BYR BZD CAD CDF CHE CHF CHW CLF CLP CNY COP COU CRC CUP CVE CZK DJF DKK DOP DZD EEK EGP ERN ETB EUR FJD FKP GBP GEL GHS GIP GMD GNF GTQ GWP GYD HKD HNL HRK HTG HUF IDR ILS INR IQD IRR ISK JMD JOD JPY KES KGS KHR KMF KPW KRW KWD KYD KZT LAK LBP LKR LRD LSL LTL LVL LYD MAD MDL MGA MKD MMK MNT MOP MRO MUR MVR MWK MXN MXV MYR MZN NAD NGN NIO NOK NPR NZD OMR PAB PEN PGK PHP PKR PLN PYG QAR RON RSD RUB RWF SAR SBD SCR SDG SEK SGD SHP SKK SLL SOS SRD STD SVC SYP SZL THB TJS TMM TND TOP TRY TTD TWD TZS UAH UGX USD USN USS UYI UYU UZS VEF VND VUV WST XAF XAG XAU XBA XBB XBC XBD XCD XDR XFU XOF XPD XPF XTS XXX YER ZAR ZMK ZWR ZWD', concat(' ', normalize-space(.), ' '))))
exactMatch
cac:Country//cbc:IdentificationCode
((not(contains(normalize-space(.), ' ')) and contains('AD AE AF AG AI AL AM AN AO AQ AR AS AT AU AW AX AZ BA BB BD BE BF BG BH BI BL BJ BM BN BO BR BS BT BV BW BY BZ CA CC CD CF CG CH CI CK CL CM CN CO CR CU CV CX CY CZ DE DJ DK DM DO DZ EC EE EG EH EL ER ES ET FI FJ FK FM FO FR GA GB GD GE GF GG GH GI GL GM GN GP GQ GR GS GT GU GW GY HK HM HN HR HT HU ID IE IL IM IN IO IQ IR IS IT JE JM JO JP KE KG KH KI KM KN KP KR KW KY KZ LA LB LC LI LK LR LS LT LU LV LY MA MC MD ME MF MG MH MK ML MM MN MO MP MQ MR MS MT MU MV MW MX MY MZ NA NC NE NF NG NI NL NO NP NR NU NZ OM PA PE PF PG PH PK PL PM PN PR PS PT PW PY QA RO RS RU RW SA SB SC SD SE SG SH SI SJ SK SL SM SN SO SR ST SV SY SZ TC TD TF TG TH TJ TK TL TM TN TO TR TT TV TW TZ UA UG UM US UY UZ VA VC VE VG VI VN VU WF WS YE YT ZA ZM ZW', concat(' ', normalize-space(.), ' '))))
exactMatchcac:PaymentMe narrowMAtch
cac:TaxCategory narrowMAtch
cac:ClassifiedT narrowMAtch
cac:OriginCountry//cbc:IdentificationCode
((not(contains(normalize-space(.), ' ')) and contains('AD AE AF AG AI AL AM AN AO AQ AR AS AT AU AW AX AZ BA BB BD BE BF BG BH BI BL BJ BM BN BO BR BS BT BV BW BY BZ CA CC CD CF CG CH CI CK CL CM CN CO CR CU CV CX CY CZ DE DJ DK DM DO DZ EC EE EG EH EL ER ES ET FI FJ FK FM FO FR GA GB GD GE GF GG GH GI GL GM GN GP GQ GR GS GT GU GW GY HK HM HN HR HT HU ID IE IL IM IN IO IQ IR IS IT JE JM JO JP KE KG KH KI KM KN KP KR KW KY KZ LA LB LC LI LK LR LS LT LU LV LY MA MC MD ME MF MG MH MK ML MM MN MO MP MQ MR MS MT MU MV MW MX MY MZ NA NC NE NF NG NI NL NO NP NR NU NZ OM PA PE PF PG PH PK PL PM PN PR PS PT PW PY QA RO RS RU RW SA SB SC SD SE SG SH SI SJ SK SL SM SN SO SR ST SV SY SZ TC TD TF TG TH TJ TK TL TM TN TO TR TT TV TW TZ UA UG UM US UY UZ VA VC VE VG VI VN VU WF WS YE YT ZA ZM ZW', concat(' ', normalize-space(.), ' '))))((not(contains(normalize-space(.), ' ')) and contains('1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 60 61 62 63 64 65 66 67 70 74 75 76 77 78 91 92 93 94 95 96 97 98 57 58', concat(' ', normalize-space(.), ' '))))
((not(contains(normalize-space(.), ' ')) and contains(' AE E S Z G O IC L M ', concat(' ', normalize-space(.), ' '))))
((not(contains(normalize-space(.), ' ')) and contains(' AE E S Z G O IC L M ', concat(' ', normalize-space(.), ' '))))
@mimeCode broadMatch
cac:AllowanceCh closeMatch
cac:AllowanceCh closeMatch
missing
((not(contains(normalize-space(.), ' ')) and contains(' application/vnd.openxmlformats-officedocument.spreadsheetml.sheet application/vnd.oasis.opendocument.spreadsheet image/jpeg image/png text/csv application/pdf ', concat(' ', normalize-space(.), ' '))))
((not(contains(normalize-space(.), ' ')) and contains('1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101', concat(' ', normalize-space(.), ' '))))
((not(contains(normalize-space(.), ' ')) and contains('AA AAA AAC AAD AAE AAF AAH AAI AAS AAT AAV AAY AAZ ABA ABB ABC ABD ABF ABK ABL ABN ABR ABS ABT ABU ACF ACG ACH ACI ACJ ACK ACL ACM ACS ADC ADE ADJ ADK ADL ADM ADN ADO ADP ADQ ADR ADT ADW ADY ADZ AEA AEB AEC AED AEF AEH AEI AEJ AEK AEL AEM AEN AEO AEP AES AET AEU AEV AEW AEX AEY AEZ AJ AU CA CAB CAD CAE CAF CAI CAJ CAK CAL CAM CAN CAO CAP CAQ CAR CAS CAT CAU CAV CAW CD CG CS CT DAB DAD DL EG EP ER FAA FAB FAC FC FH FI GAA HAA HD HH IAA IAB ID IF IR IS KO L1 LA LAA LAB LF MAE MI ML NAA OA PA PAA PC PL RAB RAC RAD RAF RE RF RH RV SA SAA SAD SAE SAI SG SH SM SU TAB TAC TT TV V1 V2 WH XAA YY ZZZ', concat(' ', normalize-space(.), ' '))))
missing
missing
missing
missing
missing
missing
missing
missing
missing
missing
missing
missing
missing
missing
missing
missing
missing
missing
missing
missing
missing
missing
missing
missing
missing
exactMatch
exactMatch
exactMatch
exactMatch
exactMatch
missing
missing
missing
missing
missing
DifferencesComment RleBISBusEffecRleBISTechEffeRleENeffect
minor ext
Covered by the XSD? minor ext
Covered by the XSD? minor ext
Covered by the XSD? average ext
average ext
Item name or identifier m
average ext
average ext
average ext
Rule covers both document
minor cius
Covered by the XSD? minor ext
PEPPOL handles invoices o
minor cius
Only reason text mandato
minor cius
Covered by the XSD? minor ext
PEPPOL handles invoices ominor cius
Only reason text mandatominor cius
Covered by the XSD? minor ext
Covered by the XSD? minor ext
Covered by the XSD? minor ext
Covered by the XSD? minor ext
Difference must be assessaverage ext
Covered by the XSD? minor ext
minor ext
Covered by the XSD? average ext
Accounting currency/tax cminor cius
Covered by the XSD? minor ext
Covered by the XSD? minor ext
Covered by the XSD? minor ext
Covered by the XSD? minor ext
minor ext
minor ext
major ext
minor ext
minor cius
minor cius
minor cius
minor cius
Differnt rules but result i minor cius
Differnt rules but result i minor cius
Differnt rules but result i minor cius
minor ext
major ext
EN rule wrong? average ext
EN rule wrong? average ext
Difference occurs since in average ext
Both mandatory in PEPPOLaverage cius
Both mandatory in PEPPOLaverage cius
Duplicate rule?
Duplicate rule?
minor ext
minor ext
average ext
average ext
VAT tax point date code nominor ext
Difference occurs since in average ext
Rule does not exist as vali minor cius
Rule does not exist as vali minor cius
Rule does not exist as vali minor cius
Rule does not exist as vali minor cius
Recommondation in PEPPOLminor ext
average ext
minor cius
minor cius
minor cius
minor cius
Differnt rules but result i minor cius
Differnt rules but result i minor cius
Differnt rules but result i minor cius
minor ext
Differnt rules but result i minor cius
minor cius
minor ext
minor cius
minor cius
minor cius
Differnt rules but result i minor cius
Differnt rules but result i minor cius
Differnt rules but result i minor cius
minor ext
Differnt rules but result i minor cius
minor cius
minor ext
minor ext
minor ext
minor cius
minor cius
minor cius
Differnt rules but result i minor cius
Differnt rules but result i minor cius
Differnt rules but result i minor cius
minor ext
Differnt rules but result i minor cius
minor cius
minor ext
minor cius
minor cius
minor cius
Differnt rules but result i minor cius
Differnt rules but result i minor cius
Differnt rules but result i minor cius
minor ext
minor cius
minor ext
minor cius
minor cius
minor cius
Differnt rules but result i minor cius
Differnt rules but result i minor cius
Differnt rules but result i minor cius
minor ext
minor cius
minor ext
minor ext
minor ext
minor ext
minor ext
minor cius
minor cius
minor cius
Differnt rules but result i minor cius
Differnt rules but result i minor cius
Differnt rules but result i minor cius
minor ext
Differnt rules but result i minor cius
minor cius
minor ext
minor cius
minor cius
minor cius
Differnt rules but result i minor cius
Differnt rules but result i minor cius
Differnt rules but result i minor cius
minor ext
minor cius
minor ext
minor cius
minor cius
minor cius
Differnt rules but result i minor cius
Differnt rules but result i minor cius
Differnt rules but result i minor cius
minor ext
Differnt rules but result i minor cius
major cius
Difference due to the diff average ext
Difference due to the diff average ext
Difference between full 44major cius
Difference between full 44average cius
Difference between full 44average cius
EN uses subset of MIMEMediaverage ext
Different codelists are us average ext
Different codelists are us average ext
major cius
major cius
major cius
major cius
minor ext
minor ext
minor ext
minor ext
minor ext
average ext
average ext
minor ext
minor ext
average ext
Negative invoices allowed major cius
Negative invoices allowed major cius
minor cius
minor cius
minor cius
minor cius
Why no rule in EN? minor cius
average cius
average cius
average cius
minor cius
Why no rule in EN? minor cius
average cius
average cius
average cius
average cius
average cius
Element not in EN minor cius
average cius
Why no rule in EN? average cius
Element not in EN average ext
Element not in EN average ext
BII/PEPPOLEN comment BII /PEPPOL rule
[BII2-T10-R001]-An invoice MUST have a customization identifier
[EUGEN-T10-R038]-An invoice MUST have a buyer postal address
[BII2-T10-R010]-An invoice MUST have the sum of line amounts
[BII2-T10-R011]-An invoice MUST have the invoice total without VAT
[BII2-T10-R012]-An invoice MUST have the invoice total with VAT (value of purchase)
[BII2-T10-R013]-An invoice MUST have the amount due for payment
[BII2-T10-R014]-An invoice MUST have at least one invoice line
[BII2-T10-R003]-An invoice MUST have an invoice identifier
[BII2-T10-R017]-Each invoice line MUST have an invoice line identifier
[BII2-T10-R018]-Each invoice line MUST have an invoiced quantity
[BII2-T10-R019]-Each invoice line MUST have a quantity unit of measure
[BII2-T10-R020]-Each invoice line MUST have an invoice line net amount
[BII2-T10-R021]-Each invoice line MUST have an invoice line item name and/or the invoice line item identifier
[BII2-T10-R034]-Invoice line item net price MUST NOT be negative
[BII2-T10-R031]-An invoice period end date MUST be later or equal to an invoice period start date
[BII2-T10-R004]-An invoice MUST have an invoice issue date
[BII2-T10-R031]-An invoice period end date MUST be later or equal to an invoice period start date
[BII2-T10-R043]-Document level allowances and charges details MUST have allowance and charge VAT category if the invoice has a VAT total amount
[BII2-T10-R025]-Each document level allowance or charge details MUST have an allowance and charge reason text
[BII2-T10-R043]-Document level allowances and charges details MUST have allowance and charge VAT category if the invoice has a VAT total amount
[BII2-T10-R025]-Each document level allowance or charge details MUST have an allowance and charge reason text
[EUGEN-T10-R053]- An invoice must have an Invoice type code
[BII2-T10-R027]-Each VAT category details MUST have a VAT category taxable amount
[BII2-T10-R028]-Each VAT category details MUST have a VAT category tax amount
[BII2-T10-R029]-Every VAT category details MUST be defined through a VAT category code
[BII2-T10-R030]-The VAT category percentage MUST be provided if the VAT category code is standard.
[BII2-T10-R041]-A payment means MUST specify the payment means type
[BII2-T10-R005]-An invoice MUST specify the currency code for the document
[EUGEN-T10-R046]-If the tax currency code is different from the document currency code, each tax subtotal has to include the tax amount in both currencies
[EUGEN-T10-R035]-An invoice MUST have a seller name
[EUGEN-T10-R023]-An endpoint identifier MUST have a scheme identifier attribute.
[EUGEN-T10-R023]-An endpoint identifier MUST have a scheme identifier attribute.
[BII2-T10-R032]-A scheme identifier for the invoice line item registered identifier MUST be provided if invoice line item registered identifiers are used to identify a product.(e.g. GTIN)
[BII2-T10-R033]-A scheme identifier for a invoice line item commodity classification MUST be provided if invoice line item commodity classification are used to classify an invoice line item (e.g. CPV or UNSPSC)
[EUGEN-T10-R036]-An invoice MUST have a buyer name
[EUGEN-T10-R037]-An invoice MUST have a seller postal address
[BII2-T10-R048]-An invoice with a VAT category code of reverse charge MUST NOT contain other VAT categories.
[BII2-T10-R045]-A VAT exemption reason MUST be provided if the VAT category code is exempt or reverse charge.
[BII2-T10-R047]-A buyer VAT identifier MUST be present if the VAT category code is reverse VAT
[BII2-T10-R047]-A buyer VAT identifier MUST be present if the VAT category code is reverse VAT
[BII2-T10-R047]-A buyer VAT identifier MUST be present if the VAT category code is reverse VAT
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[BII2-T10-R050]-The VAT category tax amount MUST be zero if the VAT category code is reverse charge (since there is only one VAT category allowed it follows that the invoice tax total for reverse charge invoices is zero) [BII2-T10-R049]-The invoice total without VAT MUST be equal to the VAT category taxable amount if the VAT category code is reverse charge
[BII2-T10-R051]-Sum of line amounts MUST equal the invoice line net amounts
[BII2-T10-R054]-The sum of allowances at document level MUST be equal to the sum of document level allowance amounts
[BII2-T10-R055]-The sum of charges at document level MUST be equal to the sum of document level charge amounts
[BII2-T10-R052]-An invoice total without VAT MUST equal the sum of line amounts plus the sum of charges on document level minus the sum of allowances on document level
[EUGEN-T10-R043]-The total tax amount MUST equal the sum of tax amounts per category. [BII2-T10-R053]-An invoice total with VAT MUST equal the invoice total without VAT plus the VAT total amount and the rounding of invoice total
[BII2-T10-R056]-Amount due for payment MUST be equal to the invoice total amount with VAT minus the paid amounts
[EUGEN-T10-R042]-The tax amount per category MUST be the taxable amount multiplied by the category percentage. [BII2-T10-R026]-An invoice MUST contain VAT category details unless VAT total amount is omitted.
[BII2-T10-R023]-Each invoice period information MUST have an invoice period start date
[BII2-T10-R024]-Each invoice period information MUST have an invoice period end date
[BII2-T10-R006]-An invoice MUST have a seller name and/or a seller identifier
[BII2-T10-R046]-Each invoice line MUST be categorized with the invoice line VAT category if the invoice has a VAT total amount
[EUGEN-T10-R041]-The VAT identifier for the supplier SHOULD be prefixed with country code for companies with VAT registration in EU countries
[BII2-T10-R026]-An invoice MUST contain VAT category details unless VAT total amount is omitted.
[BII2-T10-R045]-A VAT exemption reason MUST be provided if the VAT category code is exempt or reverse charge.
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R042]-The tax amount per category MUST be the taxable amount multiplied by the category percentage.
[BII2-T10-R026]-An invoice MUST contain VAT category details unless VAT total amount is omitted.
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R042]-The tax amount per category MUST be the taxable amount multiplied by the category percentage.
[BII2-T10-R026]-An invoice MUST contain VAT category details unless VAT total amount is omitted.
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R042]-The tax amount per category MUST be the taxable amount multiplied by the category percentage.
[BII2-T10-R026]-An invoice MUST contain VAT category details unless VAT total amount is omitted.
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R042]-The tax amount per category MUST be the taxable amount multiplied by the category percentage. [BII2-T10-R026]-An invoice MUST contain VAT category details unless VAT total amount is omitted.
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R042]-The tax amount per category MUST be the taxable amount multiplied by the category percentage. [BII2-T10-R026]-An invoice MUST contain VAT category details unless VAT total amount is omitted.
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R042]-The tax amount per category MUST be the taxable amount multiplied by the category percentage.
[BII2-T10-R026]-An invoice MUST contain VAT category details unless VAT total amount is omitted.
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R042]-The tax amount per category MUST be the taxable amount multiplied by the category percentage. [BII2-T10-R026]-An invoice MUST contain VAT category details unless VAT total amount is omitted.
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R042]-The tax amount per category MUST be the taxable amount multiplied by the category percentage.
[BII2-T10-R002]-An invoice MUST have a business profile identifier
Adding rule requires new busines term.
[EUGEN-T10-R044]-If the tax currency code is different from the document currency code, the tax exchange rate MUST be provided
Adding rule requires new busines term.
[EUGEN-T10-R045]-Tax exchange rate MUST specify the calculation rate and the operator code.
[CL-T10-R003]-currencyID MUST be coded using ISO code list 4217
[CL-T10-R002]-DocumentCurrencyCode MUST be coded using ISO code list 4217
[OP-T10-R009]-TaxCurrencyCode MUST be coded using ISO code list 4217
[CL-T10-R004]-Country codes in an invoice MUST be coded using ISO code list 3166-1
[CL-T10-R004]-Country codes in an invoice MUST be coded using ISO code list 3166-2 [CL-T10-R006]-Payment means in an invoice MUST be coded using UNCL 4461 BII2 subset
[CL-T10-R007]-Invoice tax categories MUST be coded using UNCL 5305 code list BII2 subset
[CL-T10-R007]-Invoice tax categories MUST be coded using UNCL 5305 code list BII2 subset
[CL-T10-R008]-For Mime code in attribute use MIMEMediaType.
[CL-T10-R010]-Coded allowance and charge reasons SHOULD belong to the UNCL 4465 code list BII2 subset
[CL-T10-R010]-Coded allowance and charge reasons SHOULD belong to the UNCL 4465 code list BII2 subset
[OP-T10-R002]-An Endpoint Identifier Scheme MUST be from the list of PEPPOL Party Identifiers described in the "PEPPOL Policy for using Identifiers".
[OP-T10-R003]-An Party Identifier Scheme MUST be from the list of PEPPOL Party Identifiers described in the "PEPPOL Policy for using Identifiers".
[OP-T10-R008]-A Party Company Identifier Scheme MUST be from the list of PEPPOL Party Identifiers described in the "PEPPOL Policy for using Identifiers".
[EUGEN-T10-R024]-A party identifier MUST have a scheme identifier attribute.
Adding rule requires new attribute.
[EUGEN-T10-R025]-An invoice type code MUST have a list identifier attribute 'UNCL1001'.
Adding rule requires new attribute.
[EUGEN-T10-R026]-A currency code element MUST have a list identifier attribute 'ISO4217'.
Adding rule requires new attribute.
[EUGEN-T10-R027]-A country identification code MUST have a list identifier attribute 'ISO3166-1:Alpha2'.
Adding rule requires new attribute.
[EUGEN-T10-R028]-A payment means code MUST have a list identifier attribute 'UNCL4461'.
Adding rule requires new attribute.
[EUGEN-T10-R029]-An allowance charge reason code MUST have a list identifier attribute 'UNCL4465'.
Adding rule requires new attribute.
[EUGEN-T10-R030]-A unit code attribute MUST have a unit code list identifier attribute 'UNECERec20'.
Adding rule requires new attribute.
[EUGEN-T10-R031]-A financial account identifier MUST have a scheme identifier attribute.
Adding rule requires new attribute.
[EUGEN-T10-R032]-A tax category identifier MUST have a scheme identifier attribute 'UNCL5305'.
Adding rule requires new attribute.
[EUGEN-T10-R033]-A document type code MUST have a list identifier attribute 'UNCL1001'.
Adding rule requires new attribute.
[EUGEN-T10-R034]-An delivery location identifier MUST have a scheme identifier attribute.
[BII2-T10-R035]-Invoice total with VAT MUST NOT be negative
[BII2-T10-R037]-Amount due for payment in an invoice MUST NOT be negative
[BII2-T10-R039]-An account identifier MUST be present if payment means type is funds transfer
[BII2-T10-R040]-A sellers financial institution identifier MUST be provided if the scheme of the account identifier is IBAN and the payment means is international bank transfer
[BII2-T10-R042]-A sellers financial institution identifier scheme MUST be BIC if the scheme of the account identifier is IBAN and the payment means type is international account transfer
[BII2-T10-R058]-Invoice total without VAT MUST be equal to the sum of VAT category taxable amounts
[CL-T10-R001]-An Invoice MUST be coded with the InvoiceTypeCode code list UNCL D1001 BII2 subset
[EUGEN-T10-R004]-If the payment means are international account transfer and the account id is IBAN then the financial institution should be identified by using the BIC id.
[EUGEN-T10-R012]-An allowance percentage MUST NOT be negative.
[EUGEN-T10-R022]-An allowance or charge amount MUST NOT be negative.
[EUGEN-T10-R040]-A customer SHOULD provide information about its legal entity information
[EUGEN-T10-R047]- An invoice should not contain empty elements
[EUGEN-T10-R048]-Document level amounts cannot have more than 2 decimals
[EUGEN-T10-R049]- Total tax amount cannot have more than 2 decimals.
[EUGEN-T10-R050]- Tax subtotal amounts cannot have more than 2 decimals.
[EUGEN-T10-R051]-Document level amounts cannot have more than 2 decimals
[EUGEN-T10-R052]-Document level amounts cannot have more than 2 decimals
[OP-T10-R001]-Contract document type code MUST be coded using UNCL 1001 list BII2 subset.
[OP-T10-R004]-A payee account identifier scheme MUST be from the Account ID PEPPOL code list
[OP-T10-R006]-Unit code MUST be coded according to the UN/ECE Recommendation 20
Adding rule requires new busines term.
[OP-T10-R010]-SourceCurrencyCode MUST be coded using ISO code list 4217
Adding rule requires new busines term.
[OP-T10-R011]-TargetCurrencyCode MUST be coded using ISO code list 4217
Comment
[BII2-T10-R006]-An invoice MUST have a seller name and/or a seller identifier
[BII2-T10-R008]-An invoice MUST have a buyer name and/or a buyer identifier
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[EUGEN-T10-R042]-The tax amount per category MUST be the taxable amount multiplied by the category percentage.
[EUGEN-T10-R050]- Tax subtotal amounts cannot have more than 2 decimals. [BII2-T10-R015]-An invoice MUST specify the VAT total amount, if there are VAT line amounts
[EUGEN-T10-R039]-A supplier SHOULD provide information about its legal entity information
[BII2-T10-R029]-Every VAT category details MUST be defined through a VAT category code
[BII2-T10-R029]-Every VAT category details MUST be defined through a VAT category code
[BII2-T10-R029]-Every VAT category details MUST be defined through a VAT category code
[BII2-T10-R029]-Every VAT category details MUST be defined through a VAT category code
[BII2-T10-R029]-Every VAT category details MUST be defined through a VAT category code
[BII2-T10-R029]-Every VAT category details MUST be defined through a VAT category code
[BII2-T10-R029]-Every VAT category details MUST be defined through a VAT category code
[BII2-T10-R029]-Every VAT category details MUST be defined through a VAT category code
[BR-01]-An Invoice shall have a Specification identification. [BR-02]-An Invoice shall have an Invoice number. [BR-03]-An Invoice shall have an Invoice issue date. [BR-04]-An Invoice shall have an Invoice type code. [BR-05]-An Invoice shall have an Invoice currency code. [BR-06]-An Invoice shall contain Seller name. [BR-07]-An Invoice shall contain Buyer name. [BR-08]-An Invoice shall contain the Seller postal address. [BR-09]-A Seller postal address shall contain a Seller country code [BR-10]-An Invoice shall contain the Buyer postal address. [BR-11]-A Buyer postal address shall contain a Buyer country code [BR-12]-An Invoice shall have the Sum of Invoice line net amount. [BR-13]-An Invoice shall have the Invoice total amount without VAT. [BR-14]-An Invoice shall have the Invoice total amount with VAT. [BR-15]-An Invoice shall have the Amount due for payment. [BR-16]-An Invoice shall have at least one Invoice line. [BR-17]-The Payee name shall be provided in the Invoice, if the Payee is different from the Seller. [BR-18]-The Seller tax representative name shall be provided in the Invoice, if the Seller has a tax representative party. [BR-19]-The Seller tax representative postal address shall be provided in the Invoice, if the Seller has a tax representative party. [BR-20]-The Seller tax representative postal address shall contain a Tax representative country code, if the Seller has a tax representative party. [BR-21]-Each Invoice line shall have an Invoice line identifier. [BR-22]-Each Invoice line shall have an Invoiced quantity. [BR-23]-An invoiced quantity shall have an Invoice quantity unit of measure. [BR-24]-Each Invoice line shall have an Invoice line net amount. [BR-25]-Each Invoice line shall contain the Item name. [BR-26]-Each Invoice line shall contain the Item net price. [BR-27]-The item net price shall NOT be negative. [BR-28]-Invoice line item gross price shall NOT be negative. [BR-29]-If both invoicing period start date and invoicing period end date are given then the invoicing period end date shall be later or equal to the invoicing period st [BR-30]-If both Invoice line period start date and Invoice line period end date are given then the Invoice line period end date shall be later or equal to the Invoice lin [BR-31]-Each document level allowance shall have a Document level allowance amount. [BR-32]-Each document level allowance shall have a Document level allowance VAT category code. [BR-33]-Each document level allowance shall have a Document level allowance reason or a document level allowance reason code. [BR-36]-Each document level charge shall have a Document level charge amount. [BR-37]-Each document level charge shall have a Document level charge VAT category code. [BR-38]-Each document level charge shall have a Document level charge reason or a Document level charge reason code. [BR-41]-Each Invoice line allowance shall have an Invoice line allowance amount. [BR-42]-Each Invoice line allowance shall have an Invoice line allowance reason or an Invoice line allowance reason code. [BR-43]-Each Invoice line charge shall have an Invoice line charge amount. [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 shall have a VAT category taxable amount. [BR-46]-Each VAT breakdown shall have a VAT category tax amount. [BR-47]-Each VAT breakdown shall be defined through a VAT category code. [BR-48]-Each VAT breakdown shall have a VAT category rate, except if the Invoice is not subject to VAT. [BR-49]-A payment instruction shall specify the Payment means type code. [BR-50]-A payment account identifier shall be present if Credit Transfer identification information is provided in the Invoice.
[BR-51]-The last 4 to 6 digits of the Payment card primary account number shall be present if payment card information is provided in the Invoice. [BR-52]-Each additional supporting document shall contain a Supporting document identifier. [BR-53]-If the VAT accounting currency code is present, then the Invoice total VAT amount in accounting currency shall be provided. [BR-54]-Each Item attribute shall contain an Item attribute name and an Item attribute value. [BR-55]-Each Preceding invoice reference shall contain a preceding invoice number. [BR-56]-Each Seller tax representative shall have a Seller tax representative VAT identifier [BR-57]-Each Deliver to address shall contain a Deliver to country code
[BR-61]-If the Payment means type is SEPA credit transfer, Local credit transfer or Non-SEPA international credit transfer, the Payment account identifier shall be pr [BR-62]-The Seller electronic address shall have a Scheme identifier [BR-63]-The Buyer electronic address shall have a Scheme identifier [BR-64]-The Item standard identifier shall have a Scheme identifier [BR-65]-The Item classification identifier shall have a Scheme identifier
[BR-AE-01]-An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item VAT category code (BT-151, BT-95 or BT
[BR-AE-02]-An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is "Reverse charge" shall contain the Sellers VAT Identifier (BT-31), the S
[BR-AE-03]-An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is "Reverse charge" shall contain the Sellers VAT Iden
[BR-AE-04]-An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is "Reverse charge" shall contain the Sellers VAT Identi [BR-AE-05]-In an Invoice line where the Invoice 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 where the Invoice item VAT category code (BT-95) is "Reverse charge" the Invoiced item VAT rate (BT-96) shall be 0 (zero) [BR-AE-07]-In a document level charge where the Invoice item VAT category code (BT-102) is "Reverse charge" the Invoiced item VAT rate (BT-103) shall be 0 (zero).
[BR-AE-08]-In a VAT breakdown (BG-23) where VAT category code (BT-118) is "Reverse charge" the VAT category taxable amount (BT-116) shall equal the sum of In [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"
[BR-CL-03]-currencyID MUST be coded using ISO code list 4217 alpha-3
[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]-Country codes in an invoice MUST be coded using ISO code list 3166-1
[BR-CL-07]-Country codes in an invoice MUST be coded using ISO code list 3166-1
[BR-CL-08]-Payment means in an invoice MUST be coded using UNCL 4461 code list [BR-CL-09]-Invoice tax categories MUST be coded using UNCL 5305 code list [BR-CL-10]-Invoice tax categories MUST be coded using UNCL 5305 code list
[BR-CL-12]-For Mime code in attribute use MIMEMediaType.
[BR-CL-13]-Coded allowance reasons SHOULD belong to the UNCL 5189 code list
[BR-CL-14]-Coded allowance and charge reasons SHOULD belong to the UNCL 7161 code list
[BR-CO-03]-Value added tax point date and Value added tax point date code are mutually exclusive. [BR-CO-04]-Each Invoice line shall be categorized with an Invoiced item VAT category code.
[BR-CO-09]-The Seller VAT identifier, Seller tax representative VAT identifier, Buyer VAT identifier shall have a prefix in accordance with ISO code ISO 3166-1 a
[BR-CO-10]-Sum of Invoice line net amount = Σ Invoice line net amount.
[BR-CO-11]-Sum of allowances on document level = Σ Document level allowance amount.
[BR-CO-12]-Sum of charges on document level = Σ Document level charge amount.
[BR-CO-13]-Invoice total amount without VAT = Σ Invoice line net amount - Sum of allowances on document level + Sum of charges on document level. [BR-CO-14]-Invoice total VAT amount = Σ VAT category tax amount.
[BR-CO-15]-Invoice total amount with VAT = Invoice total amount without VAT + Invoice total VAT amount.
[BR-CO-16]-Amount due for payment = Invoice total VAT amount-Paid amount + Rounding amount (BT-114).
[BR-CO-17]-VAT category tax amount = VAT category taxable amount x (VAT category rate / 100), rounded to two decimals. [BR-CO-18]-An invoice shall at least have one VAT breakdown group (BG-23) [BR-CO-19]-If Delivery or invoice period (BG-14) is used, the Delivery period start date or the Delivery period end date shall be filled, or both. [BR-CO-20]-If Invoice line period (BG-26) is used, the Invoice line period start date or the Invoice line period end date shall be filled, or both. [BR-CO-21]-Each Document level allowance (BG-20) shall contain a Document level allowance reason or a Document level allowance reason code, or both. [BR-CO-22]-Each Document level charge (BG-21) shall contain a Document level charge reason or a Document level charge reason code, or both. [BR-CO-23]-Each Invoice line allowance (BG-27) shall contain an Invoice line allowance reason or an Invoice line allowance reason code, or both. [BR-CO-24]-Each Invoice line charge (BG-28) shall contain an Invoice line charge reason or an Invoice line charge reason code, or both. [BR-CO-25]-In case the Amount due for payment (BT-115) is positive, either the Payment due date (BT-9) or the Payment terms (BT-20) shall be present. [BR-CO-26]-In order for the Buyer to automatically identify a supplier, either the Seller identifier (BT-29), the Seller legal registration identifier (BT-30) or the Seller
[BR-E-01]-An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item VAT category code (BT-151, BT-95 or BT
[BR-E-02]-An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is "Exempt from VAT" shall contain the Sellers VAT Identifier (BT-31), the
[BR-E-03]-An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is "Exempt from VAT" shall contain the Sellers VAT Ide
[BR-E-04]-An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is "Exempt from VAT" shall contain the Sellers VAT Ident [BR-E-05]-In an Invoice line where the Invoice 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 where the Invoice item VAT category code (BT-95) is "Exempt from VAT", the Invoiced item VAT rate (BT-96) shall be 0 (zero [BR-E-07]-In a document level charge where the Invoice item VAT category code (BT-102) is "Exempt from VAT", the Invoiced item VAT rate (BT-103) shall be 0 (zero)
[BR-E-08]-In a VAT breakdown (BG-23) where VAT category code (BT-118) is "Exempt from VAT" the VAT category taxable amount (BT-116) shall equal the sum of I [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 reas
[BR-G-01]-An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item VAT category code (BT-151, BT-95 or BT-1
[BR-G-02]-An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is "Export outside the EU" shall contain the Sellers VAT Identifier (BT-31
[BR-G-03]-An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is "Export outside the EU" shall contain the Sellers
[BR-G-04]-An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is "Export outside the EU" shall contain the Sellers VA [BR-G-05]-In an Invoice line where the Invoice 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 where the Invoice item VAT category code (BT-95) is "Export outside the EU" the Invoiced item VAT rate (BT-96) shall be 0 ( [BR-G-07]-In a document level charge where the Invoice item VAT category code (BT-102) is "Export outside the EU" the Invoiced item VAT rate (BT-103) shall be 0 (z
[BR-G-08]-In a VAT breakdown (BG-23) where VAT category code (BT-118) is "Export outside the EU" the VAT category taxable amount (BT-116) shall equal the sum [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 VAT Category code (BT-118) "Export outside the EU" shall have a VAT Exemption reason code (BT-121), meaning "Export outs
[BR-IC-01]-An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item VAT category code (BT-151, BT-95 or BT
[BR-IC-02]-An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is "Intra-community supply" shall contain the Sellers VAT Identifier (BT
[BR-IC-03]-An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is "Intra-community supply" shall contain the Seller
[BR-IC-04]-An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is "Intra-community supply" shall contain the Sellers [BR-IC-05]-In an Invoice line where the Invoice item VAT category code (BT-151) is "Intra-community supply" the invoiced item VAT rate (BT-152) shall be 0 (zero). [BR-IC-06]-In a document level allowance where the Invoice item VAT category code (BT-95) is "Intra-community supply" the invoiced item VAT rate (BT-96) shall be [BR-IC-07]-In a document level charge where the Invoice item VAT category code (BT-102) is "Intra-community supply" the invoiced item VAT rate (BT-103) shall be 0
[BR-IC-08]-In a VAT breakdown (BG-23) where VAT category code (BT-118) is "Intra-community supply" the VAT category taxable amount (BT-116) shall equal the s [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 VAT Category code (BT-118) "Intra-community supply" shall have a VAT Exemption reason code (BT-121), meaning "Intra-c
[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 del
[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
[BR-L-01]-An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item VAT category code (BT-151, BT-95 or BT-10
[BR-L-02]-An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is "IGIC" shall contain the Sellers VAT Identifier (BT-31), the Seller Tax re
[BR-L-03]-An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is "IGIC" shall contain the Sellers VAT Identifier (BT-3
[BR-L-04]-An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is "IGIC" shall contain the Sellers VAT Identifier (BT-31) [BR-L-05]-In an Invoice line where the Invoice item VAT category code (BT-151) is "IGIC" the invoiced item VAT rate (BT-152) shall be 0 (zero) or greater than zero. [BR-L-06]-In a document level allowance where the Invoice item VAT category code (BT-95) is "IGIC" the invoiced item VAT rate (BT-96) shall be 0 (zero) or greater t [BR-L-07]-In a document level charge where the Invoice item VAT category code (BT-102) is "IGIC" the invoiced item VAT rate (BT-103) shall be 0 (zero) or greater th
[BR-L-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 V [BR-L-09]-The VAT category tax amount (BT-117) in VAT breakdown (BG-23) where VAT category code (BT-118) is "IGIC" shall equal the VAT category taxable amount [BR-L-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
[BR-M-01]-An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item VAT category code (BT-151, BT-95 or BT-10
[BR-M-02]-An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is "IPSI" shall contain the Sellers VAT Identifier (BT-31), the Seller Tax r
[BR-M-03]-An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is "IPSI" shall contain the Sellers VAT Identifier (BT-3
[BR-M-04]-An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is "IPSI" shall contain the Sellers VAT Identifier (BT-31) [BR-M-05]-In an Invoice line where the Invoice item VAT category code (BT-151) is "IPSI" the invoiced item VAT rate (BT-152) shall be 0 (zero) or greater than zero. [BR-M-06]-In a document level allowance where the Invoice item VAT category code (BT-95) is "IPSI" the invoiced item VAT rate (BT-96) shall be 0 (zero) or greater t [BR-M-07]-In a document level charge where the Invoice item VAT category code (BT-102) is "IPSI" the invoiced item VAT rate (BT-103) shall be 0 (zero) or greater th
[BR-M-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 V [BR-M-09]-The VAT category tax amount (BT-117) in VAT breakdown (BG-23) where VAT category code (BT-118) is "IPSI" shall equal the VAT category taxable amount [BR-M-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 (B
[BR-O-01]-An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item VAT category code (BT-151, BT-95 or BT-1
[BR-O-02]-An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is "Not subject to VAT" shall not contain the Seller's VAT identifier (BT-3
[BR-O-03]-An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is "Not subject to VAT" shall not contain the Seller's
[BR-O-04]-An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is "Not subject to VAT" shall not contain the Seller's V [BR-O-05]-An Invoice line where 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 where VAT category code (BT-95) is "Not subject to VAT" shall not contain an invoiced item VAT rate (BT-96). [BR-O-07]-A document level charge where VAT category code (BT-102) is "Not subject to VAT" shall not contain an invoiced item VAT rate (BT-103).
[BR-O-08]-In a VAT breakdown (BG-23) where VAT category code (BT-118) is "Not subject to VAT" the VAT category taxable amount (BT-116) shall equal the sum of [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
[BR-O-11]-An Invoice that contains a VAT breakdown group (BG-23) with a VAT category code (BT-118) as "Not subject to VAT" shall not contain other VAT breakdo
[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 lines where the Invoice
[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 a document level allo
[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 a document Level char
[BR-S-01]-An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item VAT category code (BT-151, BT-95 or BT-1
[BR-S-02]-An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is "Standard rated" shall contain the Sellers VAT Identifier (BT-31), the Se
[BR-S-03]-An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is "Standard rated" shall contain the Sellers VAT Ident
[BR-S-04]-An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is "Standard rated" shall contain the Sellers VAT Identif [BR-S-05]-In an Invoice line where the Invoice item VAT category code (BT-151) is "Standard rated" the Invoiced item VAT rate (BT-152) shall be greater than zero.
[BR-S-06]-In a document level allowance where the Invoice item VAT category code (BT-95) is "Standard rated" the Invoiced item VAT rate (BT-96) shall be greater t [BR-S-07]-In a document level charge where the Invoice item VAT category code (BT-102) is "Standard rated" the Invoiced item VAT rate (BT-103) shall be greater th
[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- [BR-S-09]-The VAT category tax amount (BT-117) in VAT breakdown (BG-23) where VAT category code (BT-118) is "Standard rated" shall equal the VAT category taxab [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
[BR-Z-01]-An Invoice that contains a line, a document level allowance or a document level charge where the Invoiced item VAT category code (BT-151, BT-95 or BT-1
[BR-Z-02]-An Invoice that contains a line where the Invoiced item VAT category code (BT-151) is "Zero rated" shall contain the Sellers VAT Identifier (BT-31), the Seller
[BR-Z-03]-An Invoice that contains a document level allowance where the Invoiced item VAT category code (BT-95) is "Zero rated" shall contain the Sellers VAT Identifier
[BR-Z-04]-An Invoice that contains a document level charge where the Invoiced item VAT category code (BT-102) is "Zero rated" shall contain the Sellers VAT Identifier ( [BR-Z-05]-In an Invoice line where the Invoice 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 where the Invoice item VAT category code (BT-95) is "Zero rated" the Invoiced item VAT rate (BT-96) shall be 0 (zero). [BR-Z-07]-In a document level charge where the Invoice item VAT category code (BT-102) is "Zero rated" the Invoiced item 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 [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 te
[BR-CL-03]-currencyID MUST be coded using ISO code list 4217 alpha-3
[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]-Country codes in an invoice MUST be coded using ISO code list 3166-1
[BR-CL-07]-Country codes in an invoice MUST be coded using ISO code list 3166-1
[BR-CL-08]-Payment means in an invoice MUST be coded using UNCL 4461 code list [BR-CL-09]-Invoice tax categories MUST be coded using UNCL 5305 code list [BR-CL-10]-Invoice tax categories MUST be coded using UNCL 5305 code list
[BR-CL-12]-For Mime code in attribute use MIMEMediaType.
[BR-CL-13]-Coded allowance reasons SHOULD belong to the UNCL 5189 code list
[BR-CL-14]-Coded allowance and charge reasons SHOULD belong to the UNCL 7161 code list
//ubl:Invoice | //cn:CreditNote//ubl:Invoice | //cn:CreditNote//ubl:Invoice | //cn:CreditNote//ubl:Invoice | //cn:CreditNote//ubl:Invoice | //cn:CreditNote//ubl:Invoice | //cn:CreditNote//ubl:Invoice | //cn:CreditNote//ubl:Invoice | //cn:CreditNotecac:AccountingSupplierParty/cac:Party/cac:PostalAddress//ubl:Invoice | //cn:CreditNotecac:AccountingCustomerParty/cac:Party/cac:PostalAddresscac:LegalMonetaryTotalcac:LegalMonetaryTotalcac:LegalMonetaryTotalcac:LegalMonetaryTotal//ubl:Invoice | //cn:CreditNotecac:PayeePartycac:TaxRepresentativePartycac:TaxRepresentativePartycac:TaxRepresentativeParty/cac:PostalAddresscac:InvoiceLine | cac:CreditNoteLinecac:InvoiceLine | cac:CreditNoteLinecac:InvoiceLine | cac:CreditNoteLinecac:InvoiceLine | cac:CreditNoteLinecac:InvoiceLine | cac:CreditNoteLinecac:InvoiceLine | cac:CreditNoteLinecac:InvoiceLine | cac:CreditNoteLinecac:InvoiceLine | cac:CreditNoteLinecac:InvoicePeriodcac:InvoiceLine/cac:InvoicePeriod | cac:CreditNoteLine/cac:InvoicePeriod//ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = 'false'] | //cn:CreditNote/cac:AllowanceChar//ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = 'false'] | //cn:CreditNote/cac:AllowanceChar//ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = 'false'] | //cn:CreditNote/cac:AllowanceChar//ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = 'true'] | //cn:CreditNote/cac:AllowanceChar//ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = 'true'] | //cn:CreditNote/cac:AllowanceChar//ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = 'true'] | //cn:CreditNote/cac:AllowanceChar//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = 'false'] | //cac:CreditNoteLine/cac:Allo//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = 'false'] | //cac:CreditNoteLine/cac:Allo//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = 'true'] | //cac:CreditNoteLine/cac:Allo//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = 'true'] | //cac:CreditNoteLine/cac:Allocac:TaxTotal/cac:TaxSubtotalcac:TaxTotal/cac:TaxSubtotalcac:TaxTotal/cac:TaxSubtotalcac:TaxTotal/cac:TaxSubtotalcac:PaymentMeanscac:PaymentMeans/cac:PayeeFinancialAccount
cac:PaymentMeans/cac:CardAccountcac:AdditionalDocumentReference//ubl:Invoice | //cn:CreditNote//cac:AdditionalItemPropertycac:BillingReferencecac:TaxRepresentativePartycac:Delivery/cac:DeliveryLocation/cac:Address
cac:PaymentMeanscac:AccountingSupplierParty/cac:Party/cbc:EndpointIDcac:AccountingCustomerParty/cac:Party/cbc:EndpointIDcac:InvoiceLine/cac:Item/cac:StandardItemIdentification/cbc:ID | cac:CreditNoteLine/cac:Item/cac:Scac:InvoiceLine/cac:Item/cac:CommodityClassification/cbc:ItemClassificationCode | cac:CreditNoteL
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNotecac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'AE'] | cac:CreditNoteLcac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='AE']cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='AE']
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'AE']cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'AE']cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'AE']
@currencyID
cbc:DocumentCurrencyCode
cbc:TaxCurrencyCode
cac:Country//cbc:IdentificationCode
cac:OriginCountry//cbc:IdentificationCode
cac:PaymentMeans//cbc:PaymentMeansCodecac:TaxCategory/cbc:IDcac:ClassifiedTaxCategory/cbc:ID
@mimeCode
cac:AllowanceCharge[cbc:ChargeIndicator='false']//cbc:AllowanceChargeReasonCode
cac:AllowanceCharge[cbc:ChargeIndicator='true']//cbc:AllowanceChargeReasonCode
//ubl:Invoice | //cn:CreditNotecac:InvoiceLine | cac:CreditNoteLine
//cac:PartyTaxScheme
cac:LegalMonetaryTotal
cac:LegalMonetaryTotal
cac:LegalMonetaryTotal
cac:LegalMonetaryTotal//ubl:Invoice/cac:TaxTotal | //cn:CreditNote/cac:Taxtotal
//ubl:Invoice | //cn:CreditNote
cac:LegalMonetaryTotal
cac:TaxTotal/cac:TaxSubtotal//ubl:Invoice | //cn:CreditNotecac:InvoicePeriodcac:InvoiceLine/cac:InvoicePeriod | cac:CreditNoteLine/cac:InvoicePeriod//ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = 'false'] | //cn:CreditNote/cac:AllowanceChar//ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = 'true'] | //cn:CreditNote/cac:AllowanceChar//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = 'false'] | //cac:CreditNoteLine/cac:Allo//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = 'true'] | //cac:CreditNoteLine/cac:Allocac:LegalMonetaryTotal/cbc:PayableAmountcac:AccountingSupplierParty
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNotecac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'E'] | cac:CreditNoteLicac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='E']cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='E']
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'E']cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'E']cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'E']
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNotecac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'G'] | cac:CreditNoteLicac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='G']cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='G']
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'G']cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'G']cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'G']
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNotecac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'IC'] | cac:CreditNoteLicac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='IC']cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='IC']
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'IC']cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'IC']cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'IC']
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNotecac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'L']| cac:CreditNoteLincac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='L']cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='L']
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'L']cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'L']cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'L']
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNotecac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'M']| cac:CreditNoteLicac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='M']cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='M']
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'M']cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'M']cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'M']
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNotecac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'O'] | cac:CreditNoteLicac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='O']cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='O']
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'O']cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'O']cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'O']
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNotecac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'S'] | cac:CreditNoteLi
cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='S']cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='S']
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'S']cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'S']cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'S']
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNote
//ubl:Invoice | //cn:CreditNotecac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'Z'] | cac:CreditNoteLicac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='Z']cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='Z']
cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'Z']cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'Z']cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'Z']
@currencyID
cbc:DocumentCurrencyCode
cbc:TaxCurrencyCode
cac:Country//cbc:IdentificationCode
cac:OriginCountry//cbc:IdentificationCode
cac:PaymentMeans//cbc:PaymentMeansCodecac:TaxCategory/cbc:IDcac:ClassifiedTaxCategory/cbc:ID
@mimeCode
cac:AllowanceCharge[cbc:ChargeIndicator = 'false']//cbc:AllowanceChargeReasonCode
cac:AllowanceCharge[cbc:ChargeIndicator = 'true']//cbc:AllowanceChargeReasonCode
exists(cbc:CustomizationID)exists(cbc:ID)exists(cbc:IssueDate)exists(cbc:InvoiceTypeCode) or exists(cbc:CreditNoteTypeCode)exists(cbc:DocumentCurrencyCode)exists(cac:AccountingSupplierParty/cac:Party/cac:PartyLegalEntity/cbc:RegistrationName)exists(cac:AccountingCustomerParty/cac:Party/cac:PartyLegalEntity/cbc:RegistrationName)exists(cac:AccountingSupplierParty/cac:Party/cac:PostalAddress)exists(cac:Country/cbc:IdentificationCode)exists(cac:AccountingCustomerParty/cac:Party/cac:PostalAddress)exists(cac:Country/cbc:IdentificationCode)exists(cbc:LineExtensionAmount)exists(cbc:TaxExclusiveAmount)exists(cbc:TaxInclusiveAmount)exists(cbc:PayableAmount)exists(cac:InvoiceLine) or exists(cac:CreditNoteLine)exists(cac:PartyName/cbc:Name)exists(cac:PartyName/cbc:Name)exists(cac:PostalAddress)exists(cac:Country/cbc:IdentificationCode)exists(cbc:ID)exists(cbc:InvoicedQuantity) or exists(cbc:CreditedQuantity)exists(cbc:InvoicedQuantity/@unitCode) or exists(cbc:CreditedQuantity/@unitCode)exists(cbc:LineExtensionAmount)exists(cac:Item/cbc:Name)exists(cac:Price/cbc:PriceAmount)(cac:Price/cbc:PriceAmount) >= 0(cac:Price/cac:AllowanceCharge/cbc:BaseAmount) >= 0 or not(exists(cac:Price/cac:AllowanceCharge/cbc:BaseAmount))(exists(cbc:EndDate) and exists(cbc:StartDate) and (cbc:EndDate) >= (cbc:StartDate)) or not(exists(cbc:StartDate)) or not(exists(cbc:EndDate))(exists(cbc:EndDate) and exists(cbc:StartDate) and (cbc:EndDate) >= (cbc:StartDate)) or not(exists(cbc:StartDate)) or not(exists(cbc:EndDate))exists(cbc:Amount)exists(cac:TaxCategory/cbc:ID)exists(cbc:AllowanceChargeReason) or exists(cbc:AllowanceChargeReasonCode)exists(cbc:Amount)exists(cac:TaxCategory/cbc:ID)exists(cbc:AllowanceChargeReason) or exists(cbc:AllowanceChargeReasonCode)exists(cbc:Amount)exists(cbc:AllowanceChargeReason) or exists(cbc:AllowanceChargeReasonCode)exists(cbc:Amount)exists(cbc:AllowanceChargeReason) or exists(cbc:AllowanceChargeReasonCode)exists(cbc:TaxableAmount)exists(cbc:TaxAmount)exists(cac:TaxCategory/cbc:ID)exists(cac:TaxCategory/cbc:Percent) or (cac:TaxCategory/cbc:ID='O')exists(cbc:PaymentMeansCode)exists(cbc:ID)
string-length(cbc:PrimaryAccountNumberID)>=4 and string-length(cbc:PrimaryAccountNumberID)<=6exists(cbc:ID)every $taxcurrency in cbc:TaxCurrencyCode satisfies exists(//cac:TaxTotal/cbc:TaxAmount[@currencyID=$taxcurrency])exists(cbc:Name) and exists(cbc:Value)exists(cac:InvoiceDocumentReference/cbc:ID)exists(cac:PartyTaxScheme/cbc:CompanyID)exists(cac:Country/cbc:IdentificationCode)
exists(@schemeID)exists(@schemeID)exists(@schemeID)exists(@listID)
(cbc:Percent = 0)"(cbc:Percent = 0)"(cbc:Percent = 0)"
../cbc:TaxAmount = 0exists(cbc:TaxExemptionReason) or exists(cbc:TaxExemptionReasonCode)"
(exists(cac:PayeeFinancialAccount/cbc:ID) and ((normalize-space(cbc:PaymentMeansCode) = '30') or (normalize-space(cbc:PaymentMeansCode) = '57') )) or ((normalize-space(cbc:PaymentMeansCode) != '30') and (normalize-space(cbc:PaymentMeansCode) != '57'))
((exists(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'AE']) or exists(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'AE'])) and (count(//cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID) = 1) and (count(//cac:TaxCategory/cbc:ID[. != 'AE']) = 0 and count(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) != 'AE'])=0)) or (count(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'AE']) = 0 and count(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'AE'])=0)"
(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'AE']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID)) and (exists(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'AE']))
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID) = 'AE']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID)) and (exists(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID) = 'AE']))
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID) = 'AE']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID)) and (exists(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID) = 'AE']))
../cbc:TaxableAmount = ((sum(../../../cac:InvoiceLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='AE']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='AE']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='AE']/xs:decimal(cbc:Amount))) or (sum(../../../cac:CreditNoteLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='AE']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='AE']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='AE']/xs:decimal(cbc:Amount))))"
( ( not(contains(normalize-space(.),' ')) and contains( 'AED AFN ALL AMD ANG AOA ARS AUD AWG AZN BAM BBD BDT BGN BHD BIF BMD BND BOB BOV BRL BSD BTN BWP BYR BZD CAD CDF CHE CHF CHW CLF CLP CNY COP COU CRC CUP CVE CZK DJF DKK DOP DZD EEK EGP ERN ETB EUR FJD FKP GBP GEL GHS GIP GMD GNF GTQ GWP GYD HKD HNL HRK HTG HUF IDR ILS INR IQD IRR ISK JMD JOD JPY KES KGS KHR KMF KPW KRW KWD KYD KZT LAK LBP LKR LRD LSL LTL LVL LYD MAD MDL MGA MKD MMK MNT MOP MRO MUR MVR MWK MXN MXV MYR MZN NAD NGN NIO NOK NPR NZD OMR PAB PEN PGK PHP PKR PLN PYG QAR RON RSD RUB RWF SAR SBD SCR SDG SEK SGD SHP SKK SLL SOS SRD STD SVC SYP SZL THB TJS TMM TND TOP TRY TTD TWD TZS UAH UGX USD USN USS UYI UYU UZS VEF VND VUV WST XAF XAG XAU XBA XBB XBC XBD XCD XDR XFU XOF XPD XPF XTS XXX YER ZAR ZMK ZWR ZWD',concat(' ',normalize-space(.),' ') ) ) )
( ( not(contains(normalize-space(.),' ')) and contains( ' AE E S Z G O IC L M ',concat(' ',normalize-space(.),' ') ) ) )( ( not(contains(normalize-space(.),' ')) and contains( ' AE E S Z G O IC L M ',concat(' ',normalize-space(.),' ') ) ) )
(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)
( ( not(contains(normalize-space(.),' ')) and contains( 'AED AFN ALL AMD ANG AOA ARS AUD AWG AZN BAM BBD BDT BGN BHD BIF BMD BND BOB BOV BRL BSD BTN BWP BYR BZD CAD CDF CHE CHF CHW CLF CLP CNY COP COU CRC CUP CVE CZK DJF DKK DOP DZD EEK EGP ERN ETB EUR FJD FKP GBP GEL GHS GIP GMD GNF GTQ GWP GYD HKD HNL HRK HTG HUF IDR ILS INR IQD IRR ISK JMD JOD JPY KES KGS KHR KMF KPW KRW KWD KYD KZT LAK LBP LKR LRD LSL LTL LVL LYD MAD MDL MGA MKD MMK MNT MOP MRO MUR MVR MWK MXN MXV MYR MZN NAD NGN NIO NOK NPR NZD OMR PAB PEN PGK PHP PKR PLN PYG QAR RON RSD RUB RWF SAR SBD SCR SDG SEK SGD SHP SKK SLL SOS SRD STD SVC SYP SZL THB TJS TMM TND TOP TRY TTD TWD TZS UAH UGX USD USN USS UYI UYU UZS VEF VND VUV WST XAF XAG XAU XBA XBB XBC XBD XCD XDR XFU XOF XPD XPF XTS XXX YER ZAR ZMK ZWR ZWD',concat(' ',normalize-space(.),' ') ) ) )
( ( not(contains(normalize-space(.),' ')) and contains( 'AED AFN ALL AMD ANG AOA ARS AUD AWG AZN BAM BBD BDT BGN BHD BIF BMD BND BOB BOV BRL BSD BTN BWP BYR BZD CAD CDF CHE CHF CHW CLF CLP CNY COP COU CRC CUP CVE CZK DJF DKK DOP DZD EEK EGP ERN ETB EUR FJD FKP GBP GEL GHS GIP GMD GNF GTQ GWP GYD HKD HNL HRK HTG HUF IDR ILS INR IQD IRR ISK JMD JOD JPY KES KGS KHR KMF KPW KRW KWD KYD KZT LAK LBP LKR LRD LSL LTL LVL LYD MAD MDL MGA MKD MMK MNT MOP MRO MUR MVR MWK MXN MXV MYR MZN NAD NGN NIO NOK NPR NZD OMR PAB PEN PGK PHP PKR PLN PYG QAR RON RSD RUB RWF SAR SBD SCR SDG SEK SGD SHP SKK SLL SOS SRD STD SVC SYP SZL THB TJS TMM TND TOP TRY TTD TWD TZS UAH UGX USD USN USS UYI UYU UZS VEF VND VUV WST XAF XAG XAU XBA XBB XBC XBD XCD XDR XFU XOF XPD XPF XTS XXX YER ZAR ZMK ZWR ZWD',concat(' ',normalize-space(.),' ') ) ) )
( ( not(contains(normalize-space(.),' ')) and contains( 'AD AE AF AG AI AL AM AN AO AQ AR AS AT AU AW AX AZ BA BB BD BE BF BG BH BI BL BJ BM BN BO BR BS BT BV BW BY BZ CA CC CD CF CG CH CI CK CL CM CN CO CR CU CV CX CY CZ DE DJ DK DM DO DZ EC EE EG EH EL ER ES ET FI FJ FK FM FO FR GA GB GD GE GF GG GH GI GL GM GN GP GQ GR GS GT GU GW GY HK HM HN HR HT HU ID IE IL IM IN IO IQ IR IS IT JE JM JO JP KE KG KH KI KM KN KP KR KW KY KZ LA LB LC LI LK LR LS LT LU LV LY MA MC MD ME MF MG MH MK ML MM MN MO MP MQ MR MS MT MU MV MW MX MY MZ NA NC NE NF NG NI NL NO NP NR NU NZ OM PA PE PF PG PH PK PL PM PN PR PS PT PW PY QA RO RS RU RW SA SB SC SD SE SG SH SI SJ SK SL SM SN SO SR ST SV SY SZ TC TD TF TG TH TJ TK TL TM TN TO TR TT TV TW TZ UA UG UM US UY UZ VA VC VE VG VI VN VU WF WS YE YT ZA ZM ZW',concat(' ',normalize-space(.),' ') ) ) )
( ( not(contains(normalize-space(.),' ')) and contains( 'AD AE AF AG AI AL AM AN AO AQ AR AS AT AU AW AX AZ BA BB BD BE BF BG BH BI BL BJ BM BN BO BR BS BT BV BW BY BZ CA CC CD CF CG CH CI CK CL CM CN CO CR CU CV CX CY CZ DE DJ DK DM DO DZ EC EE EG EH EL ER ES ET FI FJ FK FM FO FR GA GB GD GE GF GG GH GI GL GM GN GP GQ GR GS GT GU GW GY HK HM HN HR HT HU ID IE IL IM IN IO IQ IR IS IT JE JM JO JP KE KG KH KI KM KN KP KR KW KY KZ LA LB LC LI LK LR LS LT LU LV LY MA MC MD ME MF MG MH MK ML MM MN MO MP MQ MR MS MT MU MV MW MX MY MZ NA NC NE NF NG NI NL NO NP NR NU NZ OM PA PE PF PG PH PK PL PM PN PR PS PT PW PY QA RO RS RU RW SA SB SC SD SE SG SH SI SJ SK SL SM SN SO SR ST SV SY SZ TC TD TF TG TH TJ TK TL TM TN TO TR TT TV TW TZ UA UG UM US UY UZ VA VC VE VG VI VN VU WF WS YE YT ZA ZM ZW',concat(' ',normalize-space(.),' ') ) ) )
( ( not(contains(normalize-space(.),' ')) and contains( '1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 60 61 62 63 64 65 66 67 70 74 75 76 77 78 91 92 93 94 95 96 97 98 57 58',concat(' ',normalize-space(.),' ') ) ) )
( ( not(contains(normalize-space(.),' ')) and contains( ' application/vnd.openxmlformats-officedocument.spreadsheetml.sheet application/vnd.oasis.opendocument.spreadsheet image/jpeg image/png text/csv application/pdf ',concat(' ',normalize-space(.),' ') ) ) )
( ( not(contains(normalize-space(.),' ')) and contains( '1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101',concat(' ',normalize-space(.),' ') ) ) )
( ( not(contains(normalize-space(.),' ')) and contains( 'AA AAA AAC AAD AAE AAF AAH AAI AAS AAT AAV AAY AAZ ABA ABB ABC ABD ABF ABK ABL ABN ABR ABS ABT ABU ACF ACG ACH ACI ACJ ACK ACL ACM ACS ADC ADE ADJ ADK ADL ADM ADN ADO ADP ADQ ADR ADT ADW ADY ADZ AEA AEB AEC AED AEF AEH AEI AEJ AEK AEL AEM AEN AEO AEP AES AET AEU AEV AEW AEX AEY AEZ AJ AU CA CAB CAD CAE CAF CAI CAJ CAK CAL CAM CAN CAO CAP CAQ CAR CAS CAT CAU CAV CAW CD CG CS CT DAB DAD DL EG EP ER FAA FAB FAC FC FH FI GAA HAA HD HH IAA IAB ID IF IR IS KO L1 LA LAA LAB LF MAE MI ML NAA OA PA PAA PC PL RAB RAC RAD RAF RE RF RH RV SA SAA SAD SAE SAI SG SH SM SU TAB TAC TT TV V1 V2 WH XAA YY ZZZ',concat(' ',normalize-space(.),' ') ) ) )
(exists(cbc:TaxPointDate) and not(cac:InvoicePeriod/cbc:DescriptionCode)) or (not(cbc:TaxPointDate) and exists(cac:InvoicePeriod/cbc:DescriptionCode)) or (not(cbc:TaxPointDate) and not(cac:InvoicePeriod/cbc:DescriptionCode))
cbc:ChargeTotalAmount = (round(sum(../cac:AllowanceCharge[cbc:ChargeIndicator='true']/xs:decimal(cbc:Amount)) * 10 * 10) div 100) or not(cbc:ChargeTotalAmount)
((child::cbc:TaxAmount)= round((sum(//cac:TaxSubtotal/xs:decimal(cbc:TaxAmount)) * 10 * 10)) div 100) or not(cac:TaxSubtotal)
exists(cac:TaxTotal/cac:TaxSubtotal)exists(cbc:StartDate) or exists(cbc:EndDate)exists(cbc:StartDate) or exists(cbc:EndDate)exists(cbc:AllowanceChargeReason) or exists(cbc:AllowanceChargeReasonCode)exists(cbc:AllowanceChargeReason) or exists(cbc:AllowanceChargeReasonCode)exists(cbc:AllowanceChargeReason) or exists(cbc:AllowanceChargeReasonCode)exists(cbc:AllowanceChargeReason) or exists(cbc:AllowanceChargeReasonCode)((. > 0) and (exists(//cbc:DueDate) or exists(//cac:PaymentTerms/cbc:Note))) or (. <= 0)exists(cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(cac:Party/cac:PartyIdentification/cbc:ID) or exists(cac:Party/cac:PartyLegalEntity/cbc:CompanyID)
not(//cac:TaxTotal/*/*/*/cbc:ID = 'VAT') or ( contains( 'AD AE AF AG AI AL AM AN AO AQ AR AS AT AU AW AX AZ BA BB BD BE BF BG BH BI BL BJ BM BN BO BR BS BT BV BW BY BZ CA CC CD CF CG CH CI CK CL CM CN CO CR CU CV CX CY CZ DE DJ DK DM DO DZ EC EE EG EH EL ER ES ET FI FJ FK FM FO FR GA GB GD GE GF GG GH GI GL GM GN GP GQ GR GS GT GU GW GY HK HM HN HR HT HU ID IE IL IM IN IO IQ IR IS IT JE JM JO JP KE KG KH KI KM KN KP KR KW KY KZ LA LB LC LI LK LR LS LT LU LV LY MA MC MD ME MF MG MH MK ML MM MN MO MP MQ MR MS MT MU MV MW MX MY MZ NA NC NE NF NG NI NL NO NP NR NU NZ OM PA PE PF PG PH PK PL PM PN PR PS PT PW PY QA RO RS RU RW SA SB SC SD SE SG SH SI SJ SK SL SM SN SO SR ST SV SY SZ TC TD TF TG TH TJ TK TL TM TN TO TR TT TV TW TZ UA UG UM US UY UZ VA VC VE VG VI VN VU WF WS YE YT ZA ZM ZW',substring(cbc:CompanyID,1,2) ) )
((cbc:LineExtensionAmount) = (round(sum(//cac:InvoiceLine/xs:decimal(cbc:LineExtensionAmount)) * 10 * 10) div 100)) or ((cbc:LineExtensionAmount) = (round(sum(//cac:CreditNoteLine/xs:decimal(cbc:LineExtensionAmount)) * 10 * 10) div 100))
cbc:AllowanceTotalAmount = (round(sum(../cac:AllowanceCharge[cbc:ChargeIndicator='false']/xs:decimal(cbc:Amount)) * 10 * 10) div 100) or not(cbc:AllowanceTotalAmount)
((cbc:ChargeTotalAmount) and (cbc:AllowanceTotalAmount) and ((cbc:TaxExclusiveAmount) = round(((cbc:LineExtensionAmount) + (cbc:ChargeTotalAmount) - (cbc:AllowanceTotalAmount)) * 10 * 10) div 100 )) or (not(cbc:ChargeTotalAmount) and (cbc:AllowanceTotalAmount) and ((cbc:TaxExclusiveAmount) = round(((cbc:LineExtensionAmount) - (cbc:AllowanceTotalAmount)) * 10 * 10 ) div 100)) or ((cbc:ChargeTotalAmount) and not(cbc:AllowanceTotalAmount) and ((cbc:TaxExclusiveAmount) = round(((cbc:LineExtensionAmount) + (cbc:ChargeTotalAmount)) * 10 * 10 ) div 100)) or (not(cbc:ChargeTotalAmount) and not(cbc:AllowanceTotalAmount) and ((cbc:TaxExclusiveAmount) = (cbc:LineExtensionAmount)))
every $Currency in cbc:DocumentCurrencyCode satisfies cac:LegalMonetaryTotal/cbc:TaxInclusiveAmount = round( (cac:LegalMonetaryTotal/cbc:TaxExclusiveAmount + cac:TaxTotal/xs:decimal(cbc:TaxAmount[@currencyID=$Currency])) * 10 * 10) div 100
((cbc:PrepaidAmount) and not(cbc:PayableRoundingAmount) and ((cbc:PayableAmount) = (round((cbc:TaxInclusiveAmount - cbc:PrepaidAmount) * 10 * 10) div 100))) or (not(cbc:PrepaidAmount) and not(cbc:PayableRoundingAmount) and (cbc:PayableAmount) = (cbc:TaxInclusiveAmount)) or ((cbc:PrepaidAmount) and (cbc:PayableRoundingAmount) and ((round((cbc:PayableAmount - cbc:PayableRoundingAmount) * 10 * 10) div 100) = (round((cbc:TaxInclusiveAmount - cbc:PrepaidAmount) * 10 * 10) div 100))) or (not(cbc:PrepaidAmount) and (cbc:PayableRoundingAmount) and ((round((cbc:PayableAmount - cbc:PayableRoundingAmount) * 10 * 10) div 100) = (cbc:TaxInclusiveAmount)))
(round(cac:TaxCategory/cbc:Percent) = 0 and (round(cbc:TaxAmount) = 0)) or (round(cac:TaxCategory/cbc:Percent) != 0 and (cbc:TaxAmount = round(cbc:TaxableAmount * (cac:TaxCategory/cbc:Percent div 100) * 10 * 10) div 100 ))
((exists(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'E']) or exists(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'E'])) and (count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'E']) = 1)) or (not(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'E']) and not(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'E']))"
(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'E']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'E']))
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='E']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID[@schemeID != 'VAT']) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='E']))
(cbc:Percent = 0)"(cbc:Percent = 0)"(cbc:Percent = 0)"
../cbc:TaxAmount = 0"exists(cbc:TaxExemptionReason) or exists(cbc:TaxExemptionReasonCode)"
(cbc:Percent = 0)"(cbc:Percent = 0)"(cbc:Percent = 0)"
../cbc:TaxAmount = 0exists(cbc:TaxExemptionReason) or exists(cbc:TaxExemptionReasonCode)"
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='E']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID)or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID[@schemeID != 'VAT']) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='E']))
../cbc:TaxableAmount = ((sum(../../../cac:InvoiceLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='E']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][cac:TaxCategory/cbc:ID='E']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='E']/xs:decimal(cbc:Amount))) or (sum(../../../cac:CreditNoteLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='E']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][cac:TaxCategory/cbc:ID='E']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='E']/xs:decimal(cbc:Amount))))"
((exists(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'G']) or exists(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'G'])) and (count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'G']) = 1)) or (not(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'G']) and not(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'G']))"
(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'G']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'G']))
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='G']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='G']))
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='G']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='G']))
../cbc:TaxableAmount = ((sum(../../../cac:InvoiceLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='G']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='G']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='G']/xs:decimal(cbc:Amount))) or (sum(../../../cac:CreditNoteLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='G']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='G']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='G']/xs:decimal(cbc:Amount))))"
((exists(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'IC']) or exists(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'IC'])) and (count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'IC']) = 1)) or (not(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'IC']) and not(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'IC']))"
(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'IC']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID)) and (exists(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID))) or not(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'IC'])
(cbc:Percent = 0)"(cbc:Percent = 0)"(cbc:Percent = 0)"
../cbc:TaxAmount = 0exists(cbc:TaxExemptionReason) or exists(cbc:TaxExemptionReasonCode)"
(cbc:Percent) >= 0"(cbc:Percent) >= 0"(cbc:Percent) >= 0"
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID) = 'IC']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID)) and (exists(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID) = 'IC']))
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID) = 'IC']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID)) and (exists(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID) = 'IC']))
../cbc:TaxableAmount = ((sum(../../../cac:InvoiceLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='IC']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='IC']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='IC']/xs:decimal(cbc:Amount))) or (sum(../../../cac:CreditNoteLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='IC']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='IC']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='IC']/xs:decimal(cbc:Amount))))"
(exists(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'IC']) and (string-length(cac:Delivery/cbc:ActualDeliveryDate) > 1 or (cac:InvoicePeriod/*))) or (not(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'IC']))"
(exists(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'IC']) and (string-length(cac:Delivery/cac:DeliveryLocation/cac:Address/cac:Country/cbc:IdentificationCode) >1)) or (not(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'IC']))"
((count(//cac:AllowanceCharge/cac:TaxCategory[normalize-space(cbc:ID) = 'L']) + count(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'L'])) > 0 and count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID = 'L']) > 0) or ((count(//cac:AllowanceCharge/cac:TaxCategory[normalize-space(cbc:ID) = 'L']) + count(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'L'])) = 0 and count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'L']) = 0)"
(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'L']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyLegalEntity/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'L']))
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='L']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyLegalEntity/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='L']))
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[cbc:ID='L']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyLegalEntity/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[cbc:ID='L']))
../cbc:TaxAmount = round(((../cbc:TaxableAmount) * (cbc:Percent div 100)) * 10 * 10) div 100"not(cbc:TaxExemptionReason) and not(cbc:TaxExemptionReasonCode)"
(cbc:Percent) >= 0"(cbc:Percent) >= 0"(cbc:Percent) >= 0"
../cbc:TaxAmount = round(((../cbc:TaxableAmount) * (cbc:Percent div 100)) * 10 * 10) div 100"not(cbc:TaxExemptionReason) and not(cbc:TaxExemptionReasonCode)"
every $rate in round(cbc:Percent) satisfies (../cbc:TaxableAmount = ((sum(../../../cac:InvoiceLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='L'][cac:Item/cac:ClassifiedTaxCategory/round(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='L'][cac:TaxCategory/round(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='L'][cac:TaxCategory/round(cbc:Percent) = $rate]/xs:decimal(cbc:Amount))) or (sum(../../../cac:CreditNoteLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='L'][cac:Item/cac:ClassifiedTaxCategory/round(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='L'][cac:TaxCategory/round(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='L'][cac:TaxCategory/round(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)))))"
((count(//cac:AllowanceCharge/cac:TaxCategory[normalize-space(cbc:ID) = 'M']) + count(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'M'])) > 0 and count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cbc:ID = 'M']) > 0) or ((count(//cac:AllowanceCharge/cac:TaxCategory[normalize-space(cbc:ID) = 'M']) + count(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'M'])) = 0 and count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'M']) = 0)"
(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'M']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyLegalEntity/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'M']))
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='M']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyLegalEntity/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='M']))
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='M']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyLegalEntity/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='M']))
every $rate in round(cbc:Percent) satisfies (../cbc:TaxableAmount = ((sum(../../../cac:InvoiceLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='M'][cac:Item/cac:ClassifiedTaxCategory/round(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='M'][cac:TaxCategory/round(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='M'][cac:TaxCategory/round(cbc:Percent) = $rate]/xs:decimal(cbc:Amount))) or (sum(../../../cac:CreditNoteLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='M'][cac:Item/cac:ClassifiedTaxCategory/round(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='M'][cac:TaxCategory/round(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='M'][cac:TaxCategory/round(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)))))"
((exists(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'O']) or exists(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'O'])) and (count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'O']) = 1)) or (not(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'O']) and not(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'O']))
(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'O']) and (not(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) and not(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID) and not(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID))) or not(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'O'])
not(cbc:Percent)"not(cbc:Percent)"not(cbc:Percent)"
../cbc:TaxAmount = 0exists(cbc:TaxExemptionReason) or exists(cbc:TaxExemptionReasonCode)"
(cbc:Percent) > 0"
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID) = 'O']) and (not(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) and not(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID) and not(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID) = 'O']))
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID) = 'O']) and (not(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) and not(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID) and not(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID) = 'O']))
../cbc:TaxableAmount = ((sum(../../../cac:InvoiceLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='O']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='O']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='O']/xs:decimal(cbc:Amount))) or (sum(../../../cac:CreditNoteLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='O']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='O']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='O']/xs:decimal(cbc:Amount))))"
(exists(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'O']) and count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) != 'O']) = 0) or not(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'O'])"
(exists(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'O']) and count(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) != 'O']) = 0) or not(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'O'])"
(exists(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'O']) and count(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID) != 'O']) = 0) or not(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'O'])"
(exists(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'O']) and count(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID) != 'O']) = 0) or not(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'O'])"
((count(//cac:AllowanceCharge/cac:TaxCategory[normalize-space(cbc:ID) = 'S']) + count(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'S'])) > 0 and count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'S']) > 0) or ((count(//cac:AllowanceCharge/cac:TaxCategory[normalize-space(cbc:ID) = 'S']) + count(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'S'])) = 0 and count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'S']) = 0)"
(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'S']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyLegalEntity/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'S']))
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='S']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='S']))
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='S']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxSchemey/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='S']))
(cbc:Percent) > 0"(cbc:Percent) > 0"
../cbc:TaxAmount = round(((../cbc:TaxableAmount) * (cbc:Percent div 100)) * 10 * 10) div 100"not(cbc:TaxExemptionReason) and not(cbc:TaxExemptionReasonCode)"
(cbc:Percent = 0)"(cbc:Percent = 0)"(cbc:Percent = 0)"
../cbc:TaxAmount = 0"not(cbc:TaxExemptionReason) or not(cbc:TaxExemptionReasonCode)"
every $rate in round(cbc:Percent) satisfies ((../cbc:TaxableAmount = (sum(../../../cac:InvoiceLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='S'][cac:Item/cac:ClassifiedTaxCategory/round(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='S'][cac:TaxCategory/round(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='S'][cac:TaxCategory/round(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)))) or ../cbc:TaxableAmount = (sum(../../../cac:InvoiceLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='S'][cac:Item/cac:ClassifiedTaxCategory/round(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='S'][cac:TaxCategory/round(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='S'][cac:TaxCategory/round(cbc:Percent) = $rate]/xs:decimal(cbc:Amount))))"
((exists(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'Z']) or exists(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'Z'])) and (count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[normalize-space(.) = 'Z']) = 1)) or (not(//cac:TaxCategory/cbc:ID[normalize-space(.) = 'Z']) and not(//cac:ClassifiedTaxCategory/cbc:ID[normalize-space(.) = 'Z']))"
(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'Z']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'Z']))
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='false']/cac:TaxCategory[normalize-space(cbc:ID)='Z']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:TaxCategory[normalize-space(cbc:ID) = 'Z']))
(exists(//cac:AllowanceCharge[cbc:ChargeIndicator='true']/cac:TaxCategory[normalize-space(cbc:ID)='Z']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID)or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID))) or not(exists(//cac:TaxCategory[normalize-space(cbc:ID) = 'Z']))
../cbc:TaxableAmount = ((sum(../../../cac:InvoiceLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='Z']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='Z']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='Z']/xs:decimal(cbc:Amount))) or (sum(../../../cac:CreditNoteLine[normalize-space(cac:Item/cac:ClassifiedTaxCategory/cbc:ID)='Z']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='true'][normalize-space(cac:TaxCategory/cbc:ID)='Z']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator='false'][normalize-space(cac:TaxCategory/cbc:ID)='Z']/xs:decimal(cbc:Amount))))"
((not(contains(normalize-space(.), ' ')) and contains('AED AFN ALL AMD ANG AOA ARS AUD AWG AZN BAM BBD BDT BGN BHD BIF BMD BND BOB BOV BRL BSD BTN BWP BYR BZD CAD CDF CHE CHF CHW CLF CLP CNY COP COU CRC CUP CVE CZK DJF DKK DOP DZD EEK EGP ERN ETB EUR FJD FKP GBP GEL GHS GIP GMD GNF GTQ GWP GYD HKD HNL HRK HTG HUF IDR ILS INR IQD IRR ISK JMD JOD JPY KES KGS KHR KMF KPW KRW KWD KYD KZT LAK LBP LKR LRD LSL LTL LVL LYD MAD MDL MGA MKD MMK MNT MOP MRO MUR MVR MWK MXN MXV MYR MZN NAD NGN NIO NOK NPR NZD OMR PAB PEN PGK PHP PKR PLN PYG QAR RON RSD RUB RWF SAR SBD SCR SDG SEK SGD SHP SKK SLL SOS SRD STD SVC SYP SZL THB TJS TMM TND TOP TRY TTD TWD TZS UAH UGX USD USN USS UYI UYU UZS VEF VND VUV WST XAF XAG XAU XBA XBB XBC XBD XCD XDR XFU XOF XPD XPF XTS XXX YER ZAR ZMK ZWR ZWD', concat(' ', normalize-space(.), ' '))))
((not(contains(normalize-space(.), ' ')) and contains(' AE E S Z G O IC L M ', concat(' ', normalize-space(.), ' '))))((not(contains(normalize-space(.), ' ')) and contains(' AE E S Z G O IC L M ', concat(' ', normalize-space(.), ' '))))
((not(contains(normalize-space(.), ' ')) and contains('AED AFN ALL AMD ANG AOA ARS AUD AWG AZN BAM BBD BDT BGN BHD BIF BMD BND BOB BOV BRL BSD BTN BWP BYR BZD CAD CDF CHE CHF CHW CLF CLP CNY COP COU CRC CUP CVE CZK DJF DKK DOP DZD EEK EGP ERN ETB EUR FJD FKP GBP GEL GHS GIP GMD GNF GTQ GWP GYD HKD HNL HRK HTG HUF IDR ILS INR IQD IRR ISK JMD JOD JPY KES KGS KHR KMF KPW KRW KWD KYD KZT LAK LBP LKR LRD LSL LTL LVL LYD MAD MDL MGA MKD MMK MNT MOP MRO MUR MVR MWK MXN MXV MYR MZN NAD NGN NIO NOK NPR NZD OMR PAB PEN PGK PHP PKR PLN PYG QAR RON RSD RUB RWF SAR SBD SCR SDG SEK SGD SHP SKK SLL SOS SRD STD SVC SYP SZL THB TJS TMM TND TOP TRY TTD TWD TZS UAH UGX USD USN USS UYI UYU UZS VEF VND VUV WST XAF XAG XAU XBA XBB XBC XBD XCD XDR XFU XOF XPD XPF XTS XXX YER ZAR ZMK ZWR ZWD', concat(' ', normalize-space(.), ' '))))
((not(contains(normalize-space(.), ' ')) and contains('AED AFN ALL AMD ANG AOA ARS AUD AWG AZN BAM BBD BDT BGN BHD BIF BMD BND BOB BOV BRL BSD BTN BWP BYR BZD CAD CDF CHE CHF CHW CLF CLP CNY COP COU CRC CUP CVE CZK DJF DKK DOP DZD EEK EGP ERN ETB EUR FJD FKP GBP GEL GHS GIP GMD GNF GTQ GWP GYD HKD HNL HRK HTG HUF IDR ILS INR IQD IRR ISK JMD JOD JPY KES KGS KHR KMF KPW KRW KWD KYD KZT LAK LBP LKR LRD LSL LTL LVL LYD MAD MDL MGA MKD MMK MNT MOP MRO MUR MVR MWK MXN MXV MYR MZN NAD NGN NIO NOK NPR NZD OMR PAB PEN PGK PHP PKR PLN PYG QAR RON RSD RUB RWF SAR SBD SCR SDG SEK SGD SHP SKK SLL SOS SRD STD SVC SYP SZL THB TJS TMM TND TOP TRY TTD TWD TZS UAH UGX USD USN USS UYI UYU UZS VEF VND VUV WST XAF XAG XAU XBA XBB XBC XBD XCD XDR XFU XOF XPD XPF XTS XXX YER ZAR ZMK ZWR ZWD', concat(' ', normalize-space(.), ' '))))
((not(contains(normalize-space(.), ' ')) and contains('AD AE AF AG AI AL AM AN AO AQ AR AS AT AU AW AX AZ BA BB BD BE BF BG BH BI BL BJ BM BN BO BR BS BT BV BW BY BZ CA CC CD CF CG CH CI CK CL CM CN CO CR CU CV CX CY CZ DE DJ DK DM DO DZ EC EE EG EH EL ER ES ET FI FJ FK FM FO FR GA GB GD GE GF GG GH GI GL GM GN GP GQ GR GS GT GU GW GY HK HM HN HR HT HU ID IE IL IM IN IO IQ IR IS IT JE JM JO JP KE KG KH KI KM KN KP KR KW KY KZ LA LB LC LI LK LR LS LT LU LV LY MA MC MD ME MF MG MH MK ML MM MN MO MP MQ MR MS MT MU MV MW MX MY MZ NA NC NE NF NG NI NL NO NP NR NU NZ OM PA PE PF PG PH PK PL PM PN PR PS PT PW PY QA RO RS RU RW SA SB SC SD SE SG SH SI SJ SK SL SM SN SO SR ST SV SY SZ TC TD TF TG TH TJ TK TL TM TN TO TR TT TV TW TZ UA UG UM US UY UZ VA VC VE VG VI VN VU WF WS YE YT ZA ZM ZW', concat(' ', normalize-space(.), ' '))))
((not(contains(normalize-space(.), ' ')) and contains('AD AE AF AG AI AL AM AN AO AQ AR AS AT AU AW AX AZ BA BB BD BE BF BG BH BI BL BJ BM BN BO BR BS BT BV BW BY BZ CA CC CD CF CG CH CI CK CL CM CN CO CR CU CV CX CY CZ DE DJ DK DM DO DZ EC EE EG EH EL ER ES ET FI FJ FK FM FO FR GA GB GD GE GF GG GH GI GL GM GN GP GQ GR GS GT GU GW GY HK HM HN HR HT HU ID IE IL IM IN IO IQ IR IS IT JE JM JO JP KE KG KH KI KM KN KP KR KW KY KZ LA LB LC LI LK LR LS LT LU LV LY MA MC MD ME MF MG MH MK ML MM MN MO MP MQ MR MS MT MU MV MW MX MY MZ NA NC NE NF NG NI NL NO NP NR NU NZ OM PA PE PF PG PH PK PL PM PN PR PS PT PW PY QA RO RS RU RW SA SB SC SD SE SG SH SI SJ SK SL SM SN SO SR ST SV SY SZ TC TD TF TG TH TJ TK TL TM TN TO TR TT TV TW TZ UA UG UM US UY UZ VA VC VE VG VI VN VU WF WS YE YT ZA ZM ZW', concat(' ', normalize-space(.), ' '))))
((not(contains(normalize-space(.), ' ')) and contains('1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 60 61 62 63 64 65 66 67 70 74 75 76 77 78 91 92 93 94 95 96 97 98 57 58', concat(' ', normalize-space(.), ' '))))
((not(contains(normalize-space(.), ' ')) and contains(' application/vnd.openxmlformats-officedocument.spreadsheetml.sheet application/vnd.oasis.opendocument.spreadsheet image/jpeg image/png text/csv application/pdf ', concat(' ', normalize-space(.), ' '))))
((not(contains(normalize-space(.), ' ')) and contains('1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101', concat(' ', normalize-space(.), ' '))))
((not(contains(normalize-space(.), ' ')) and contains('AA AAA AAC AAD AAE AAF AAH AAI AAS AAT AAV AAY AAZ ABA ABB ABC ABD ABF ABK ABL ABN ABR ABS ABT ABU ACF ACG ACH ACI ACJ ACK ACL ACM ACS ADC ADE ADJ ADK ADL ADM ADN ADO ADP ADQ ADR ADT ADW ADY ADZ AEA AEB AEC AED AEF AEH AEI AEJ AEK AEL AEM AEN AEO AEP AES AET AEU AEV AEW AEX AEY AEZ AJ AU CA CAB CAD CAE CAF CAI CAJ CAK CAL CAM CAN CAO CAP CAQ CAR CAS CAT CAU CAV CAW CD CG CS CT DAB DAD DL EG EP ER FAA FAB FAC FC FH FI GAA HAA HD HH IAA IAB ID IF IR IS KO L1 LA LAA LAB LF MAE MI ML NAA OA PA PAA PC PL RAB RAC RAD RAF RE RF RH RV SA SAA SAD SAE SAI SG SH SM SU TAB TAC TT TV V1 V2 WH XAA YY ZZZ', concat(' ', normalize-space(.), ' '))))
Rule
[BII2-T10-R015]-An invoice MUST specify the VAT total amount, if there are VAT line amounts [BII2-T10-R035]-Invoice total with VAT MUST NOT be negative [BII2-T10-R037]-Amount due for payment in an invoice MUST NOT be negative
[BII2-T10-R039]-An account identifier MUST be present if payment means type is funds transfer
[CL-T10-R008]-For Mime code in attribute use MIMEMediaType. [BII2-T10-R001]-An invoice MUST have a customization identifier [BII2-T10-R002]-An invoice MUST have a business profile identifier [BII2-T10-R003]-An invoice MUST have an invoice identifier [BII2-T10-R004]-An invoice MUST have an invoice issue date [BII2-T10-R005]-An invoice MUST specify the currency code for the document
[BII2-T10-R040]-A sellers financial institution identifier MUST be provided if the scheme of the account identifier is IBAN and the payment means is international bank transfer
[BII2-T10-R042]-A sellers financial institution identifier scheme MUST be BIC if the scheme of the account identifier is IBAN and the payment means type is international account transfer
[BII2-T10-R058]-Invoice total without VAT MUST be equal to the sum of VAT category taxable amounts
[CL-T10-R001]-An Invoice MUST be coded with the InvoiceTypeCode code list UNCL D1001 BII2 subset
[BII2-T10-R054]-The sum of allowances at document level MUST be equal to the sum of document level allowance amounts
[BII2-T10-R055]-The sum of charges at document level MUST be equal to the sum of document level charge amounts
[BII2-T10-R006]-An invoice MUST have a seller name and/or a seller identifier
[BII2-T10-R008]-An invoice MUST have a buyer name and/or a buyer identifier [BII2-T10-R010]-An invoice MUST have the sum of line amounts [BII2-T10-R011]-An invoice MUST have the invoice total without VAT [BII2-T10-R012]-An invoice MUST have the invoice total with VAT (value of purchase) [BII2-T10-R013]-An invoice MUST have the amount due for payment [BII2-T10-R014]-An invoice MUST have at least one invoice line [BII2-T10-R017]-Each invoice line MUST have an invoice line identifier [BII2-T10-R018]-Each invoice line MUST have an invoiced quantity [BII2-T10-R019]-Each invoice line MUST have a quantity unit of measure [BII2-T10-R020]-Each invoice line MUST have an invoice line net amount
[BII2-T10-R023]-Each invoice period information MUST have an invoice period start date [BII2-T10-R024]-Each invoice period information MUST have an invoice period end date
[BII2-T10-R026]-An invoice MUST contain VAT category details unless VAT total amount is omitted. [BII2-T10-R027]-Each VAT category details MUST have a VAT category taxable amount [BII2-T10-R028]-Each VAT category details MUST have a VAT category tax amount [BII2-T10-R029]-Every VAT category details MUST be defined through a VAT category code
[BII2-T10-R031]-An invoice period end date MUST be later or equal to an invoice period start date
[BII2-T10-R034]-Invoice line item net price MUST NOT be negative [BII2-T10-R041]-A payment means MUST specify the payment means type
[BII2-T10-R044]-A seller VAT identifier MUST be provided if the invoice has a VAT total amount
[BII2-T10-R047]-A buyer VAT identifier MUST be present if the VAT category code is reverse VAT
[BII2-T10-R021]-Each invoice line MUST have an invoice line item name and/or the invoice line item identifier
[BII2-T10-R025]-Each document level allowance or charge details MUST have an allowance and charge reason text
[BII2-T10-R030]-The VAT category percentage MUST be provided if the VAT category code is standard.
[BII2-T10-R032]-A scheme identifier for the invoice line item registered identifier MUST be provided if invoice line item registered identifiers are used to identify a product.(e.g. GTIN)
[BII2-T10-R033]-A scheme identifier for a invoice line item commodity classification MUST be provided if invoice line item commodity classification are used to classify an invoice line item (e.g. CPV or UNSPSC)
[BII2-T10-R043]-Document level allowances and charges details MUST have allowance and charge VAT category if the invoice has a VAT total amount
[BII2-T10-R045]-A VAT exemption reason MUST be provided if the VAT category code is exempt or reverse charge.
[BII2-T10-R046]-Each invoice line MUST be categorized with the invoice line VAT category if the invoice has a VAT total amount
[BII2-T10-R051]-Sum of line amounts MUST equal the invoice line net amounts
[CL-T10-R002]-DocumentCurrencyCode MUST be coded using ISO code list 4217
[BII2-T10-R048]-An invoice with a VAT category code of reverse charge MUST NOT contain other VAT categories.
[BII2-T10-R049]-The invoice total without VAT MUST be equal to the VAT category taxable amount if the VAT category code is reverse charge
[BII2-T10-R050]-The VAT category tax amount MUST be zero if the VAT category code is reverse charge (since there is only one VAT category allowed it follows that the invoice tax total for reverse charge invoices is zero)
[BII2-T10-R052]-An invoice total without VAT MUST equal the sum of line amounts plus the sum of charges on document level minus the sum of allowances on document level
[BII2-T10-R053]-An invoice total with VAT MUST equal the invoice total without VAT plus the VAT total amount and the rounding of invoice total
[BII2-T10-R056]-Amount due for payment MUST be equal to the invoice total amount with VAT minus the paid amounts
[CL-T10-R003]-currencyID MUST be coded using ISO code list 4217
[CL-T10-R004]-Country codes in an invoice MUST be coded using ISO code list 3166-1
[CL-T10-R006]-Payment means in an invoice MUST be coded using UNCL 4461 BII2 subset
[CL-T10-R007]-Invoice tax categories MUST be coded using UNCL 5305 code list BII2 subset
[CL-T10-R010]-Coded allowance and charge reasons SHOULD belong to the UNCL 4465 code list BII2 subset
Context
/ubl:Invoice/ubl:Invoice/ubl:Invoice
//cac:PaymentMeans
//cac:PaymentMeans
//cac:PaymentMeans
/ubl:Invoice
cbc:InvoiceTypeCode
//cac:LegalMonetaryTotal
//cac:LegalMonetaryTotal
cbc:*/@mimeCode
/ubl:Invoice/ubl:Invoice/ubl:Invoice/ubl:Invoice
/ubl:Invoice
/ubl:Invoice/ubl:Invoice/ubl:Invoice/ubl:Invoice/ubl:Invoice/ubl:Invoice//cac:InvoiceLine//cac:InvoiceLine//cac:InvoiceLine//cac:InvoiceLine
//cac:InvoiceLine//cac:InvoicePeriod//cac:InvoicePeriod
/ubl:Invoice/cac:AllowanceCharge
/ubl:Invoice//cac:TaxSubtotal[cac:TaxCategory/cac:TaxScheme/cbc:ID = 'VAT']//cac:TaxSubtotal[cac:TaxCategory/cac:TaxScheme/cbc:ID = 'VAT']//cac:TaxSubtotal[cac:TaxCategory/cac:TaxScheme/cbc:ID = 'VAT']
//cac:TaxSubtotal[cac:TaxCategory/cac:TaxScheme/cbc:ID = 'VAT']
//cac:InvoicePeriod
//cac:InvoiceLine
//cac:InvoiceLine//cac:InvoiceLine//cac:PaymentMeans
/ubl:Invoice/cac:AllowanceCharge
/ubl:Invoice
//cac:TaxSubtotal[cac:TaxCategory/cac:TaxScheme/cbc:ID = 'VAT']
//cac:InvoiceLine
/ubl:Invoice
/ubl:Invoice
/ubl:Invoice
/ubl:Invoice
//cac:LegalMonetaryTotal
//cac:LegalMonetaryTotal
//cac:LegalMonetaryTotal
//cac:LegalMonetaryTotal
cbc:DocumentCurrencyCode
cbc:*/@currencyID
cac:Country//cbc:IdentificationCode
cac:PaymentMeans//cbc:PaymentMeansCode
cac:TaxCategory/cbc:ID
cac:AllowanceCharge//cbc:AllowanceChargeReasonCode
Test
(cac:LegalMonetaryTotal/cbc:TaxInclusiveAmount) >= 0(cac:LegalMonetaryTotal/cbc:PayableAmount) >= 0
(cbc:CustomizationID)(cbc:ProfileID)(cbc:ID)(cbc:IssueDate)(cbc:DocumentCurrencyCode)
(cac:TaxTotal[cac:TaxSubtotal/cac:TaxCategory/cac:TaxScheme/cbc:ID = 'VAT']/cbc:TaxAmount) or not(cac:InvoiceLine/cac:TaxTotal)
((normalize-space(cbc:PaymentMeansCode) = '31') and (cac:PayeeFinancialAccount/cbc:ID)) or (string(cbc:PaymentMeansCode) != '31')
(cac:PayeeFinancialAccount/cbc:ID/@schemeID and (cac:PayeeFinancialAccount/cbc:ID/@schemeID = 'IBAN') and cac:PayeeFinancialAccount/cac:FinancialInstitutionBranch/cac:FinancialInstitution/cbc:ID) or (cac:PayeeFinancialAccount/cbc:ID/@schemeID != 'IBAN') or (not(cac:PayeeFinancialAccount/cbc:ID/@schemeID))
(cac:PayeeFinancialAccount/cac:FinancialInstitutionBranch/cac:FinancialInstitution/cbc:ID/@schemeID='BIC') and (cac:PayeeFinancialAccount/cbc:ID/@schemeID = 'IBAN') or not(cac:PayeeFinancialAccount/cbc:ID/@schemeID = 'IBAN')
((cac:TaxTotal[cac:TaxSubtotal/cac:TaxCategory/cac:TaxScheme/cbc:ID = 'VAT']/cbc:TaxAmount) and (round(xs:decimal(sum(cac:TaxTotal//cac:TaxSubtotal/cbc:TaxableAmount)) *10 * 10) div 100 = (xs:decimal(cac:LegalMonetaryTotal/cbc:TaxExclusiveAmount)))) or not((cac:TaxTotal[cac:TaxSubtotal/cac:TaxCategory/cac:TaxScheme/cbc:ID = 'VAT']))
( ( not(contains(normalize-space(.),' ')) and contains( ' 380 393 384 ',concat(' ',normalize-space(.),' ') ) ) )
(xs:decimal(cbc:AllowanceTotalAmount)) = (round(xs:decimal(sum(/ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator=""false""]/cbc:Amount)) * 10 * 10) div 100) or not(cbc:AllowanceTotalAmount)"
(xs:decimal(cbc:ChargeTotalAmount)) = (round(xs:decimal(sum(/ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator=""true""]/cbc:Amount)) * 10 * 10) div 100) or not(cbc:ChargeTotalAmount)"'text/vnd.wap.sl' or . = 'text/vnd.wap.wml' or . = 'text/vnd.wap.wmlscript' or . = 'text/xml' or . = 'text/xml-external-parsed-entity' or . = 'video/3gpp' or . = 'video/3gpp2' or . = 'video/3gpp-tt' or . = 'video/BMPEG' or . = 'video/BT656' or . = 'video/CelB' or . = 'video/DV' or . = 'video/example' or . = 'video/H261' or . = 'video/H263' or . = 'video/H263-1998' or . = 'video/H263-2000' or . = 'video/H264' or . = 'video/JPEG' or . = 'video/MJ2' or . = 'video/MP1S' or . = 'video/MP2P' or . = 'video/MP2T' or . = 'video/mp4' or . = 'video/MP4V-ES' or . = 'video/MPV' or . = 'video/mpeg' or . = 'video/mpeg4-generic' or . = 'video/nv' or . = 'video/parityfec' or . = 'video/pointer' or . = 'video/quicktime' or . = 'video/raw' or . = 'video/rtp-enc-aescm128' or . = 'video/rtx' or . = 'video/SMPTE292M' or . = 'video/ulpfec' or . = 'video/vc1' or . = 'video/vnd.dlna.mpeg-tts' or . = 'video/vnd.fvt' or . = 'video/vnd.hns.video' or . = 'video/vnd.iptvforum.1dparityfec-1010' or . = 'video/vnd.iptvforum.1dparityfec-2005' or . = 'video/vnd.iptvforum.2dparityfec-1010' or . = 'video/vnd.iptvforum.2dparityfec-2005' or . = 'video/vnd.iptvforum.ttsavc' or . = 'video/vnd.iptvforum.ttsmpeg2' or . = 'video/vnd.motorola.video' or . = 'video/vnd.motorola.videop' or . = 'video/vnd.mpegurl' or . = 'video/vnd.nokia.interleaved-multimedia' or . = 'video/vnd.nokia.videovoip' or . = 'video/vnd.objectvideo' or . = 'video/vnd.sealed.mpeg1' or . = 'video/vnd.sealed.mpeg4' or . = 'video/vnd.sealed.swf' or . = 'video/vnd.sealedmedia.softseal.mov' or . = 'video/vnd.vivo' ) )"
(cac:LegalMonetaryTotal/cbc:LineExtensionAmount)(cac:LegalMonetaryTotal/cbc:TaxExclusiveAmount)(cac:LegalMonetaryTotal/cbc:TaxInclusiveAmount)(cac:LegalMonetaryTotal/cbc:PayableAmount)(cac:InvoiceLine)(cbc:ID)(cbc:InvoicedQuantity)(cbc:InvoicedQuantity/@unitCode)cbc:LineExtensionAmount
(cbc:StartDate)(cbc:EndDate)
(cbc:AllowanceChargeReason)
(//cac:TaxScheme/cbc:ID = 'VAT') or not(/ubl:Invoice/cac:TaxTotal/cbc:TaxAmount)(cbc:TaxableAmount)(cbc:TaxAmount)(cac:TaxCategory/cbc:ID)
(cac:TaxCategory/cbc:Percent) or not(normalize-space(cac:TaxCategory/cbc:ID) = 'S')
(cac:Price/cbc:PriceAmount) >= 0(cbc:PaymentMeansCode)
(cac:Item/cac:ClassifiedTaxCategory/cbc:ID) or not(/ubl:Invoice/cac:TaxTotal/*/*/*/cbc:ID='VAT')
(cac:AccountingSupplierParty/cac:Party/cac:PartyName/cbc:Name) or (cac:AccountingSupplierParty/cac:Party/cac:PartyIdentification/cbc:ID)
(cac:AccountingCustomerParty/cac:Party/cac:PartyName/cbc:Name) or (cac:AccountingCustomerParty/cac:Party/cac:PartyIdentification/cbc:ID)
(cac:Item/cbc:Name) or (cac:Item/cac:StandardItemIdentification/cbc:ID) or (cac:Item/cac:SellersItemIdentification/cbc:ID)
(cbc:StartDate and cbc:EndDate) and (number(translate(cbc:StartDate,'-','')) <= number(translate(cbc:EndDate,'-','')))
(cac:Item/cac:StandardItemIdentification/cbc:ID/@schemeID) or not(cac:Item/cac:StandardItemIdentification)
(//cac:CommodityClassification/cbc:ItemClassificationCode/@listID) or not(//cac:CommodityClassification)
((/ubl:Invoice/cac:TaxTotal/*/*/*/cbc:ID = 'VAT') and (cac:TaxCategory/cbc:ID)) or not(/ubl:Invoice/cac:TaxTotal)
(cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or not(cac:TaxTotal/*/*/*/cbc:ID = 'VAT')
(cac:TaxCategory/cbc:TaxExemptionReason) or not ((normalize-space(cac:TaxCategory/cbc:ID)='E') or (normalize-space(cac:TaxCategory/cbc:ID)='AE'))
(cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or not(cac:TaxTotal/*/*/cbc:ID = 'AE')
count(child::cac:TaxTotal/*/*/cbc:ID) = count(child::cac:TaxTotal/*/*/cbc:ID[. = 'AE']) or count(child::cac:TaxTotal/*/*/cbc:ID[. = 'AE']) = 0
(xs:decimal(cac:TaxTotal/cac:TaxSubtotal[cac:TaxCategory/cbc:ID = 'AE']/cbc:TaxableAmount) = xs:decimal(cac:LegalMonetaryTotal/cbc:TaxExclusiveAmount)) or not(cac:TaxTotal[cac:TaxSubtotal/cac:TaxCategory/cbc:ID = 'AE'])
(xs:decimal(cac:TaxTotal/cac:TaxSubtotal[cac:TaxCategory/cbc:ID = 'AE']/cbc:TaxAmount) = 0) or not(cac:TaxTotal[cac:TaxSubtotal/cac:TaxCategory/cbc:ID = 'AE'])
(xs:decimal(cbc:LineExtensionAmount)) = (round(sum((//cac:InvoiceLine/xs:decimal(cbc:LineExtensionAmount))) * 10 * 10) div 100)
((cbc:ChargeTotalAmount) and (cbc:AllowanceTotalAmount) and ((xs:decimal(cbc:TaxExclusiveAmount)) = round((xs:decimal(cbc:LineExtensionAmount) + xs:decimal(cbc:ChargeTotalAmount) - xs:decimal(cbc:AllowanceTotalAmount)) * 10 * 10) div 100 )) or (not(cbc:ChargeTotalAmount) and (cbc:AllowanceTotalAmount) and ((xs:decimal(cbc:TaxExclusiveAmount)) = round((xs:decimal(cbc:LineExtensionAmount) - xs:decimal(cbc:AllowanceTotalAmount)) * 10 * 10 ) div 100)) or ((cbc:ChargeTotalAmount) and not(cbc:AllowanceTotalAmount) and ((xs:decimal(cbc:TaxExclusiveAmount)) = round((xs:decimal(cbc:LineExtensionAmount) + xs:decimal(cbc:ChargeTotalAmount)) * 10 * 10 ) div 100)) or (not(cbc:ChargeTotalAmount) and not(cbc:AllowanceTotalAmount) and (xs:decimal(cbc:TaxExclusiveAmount) = xs:decimal(cbc:LineExtensionAmount)))
((cbc:PayableRoundingAmount) and ((xs:decimal(cbc:TaxInclusiveAmount)) = (round((xs:decimal(cbc:TaxExclusiveAmount) + (xs:decimal(sum(/ubl:Invoice/cac:TaxTotal/cbc:TaxAmount))) + xs:decimal(cbc:PayableRoundingAmount)) *10 * 10) div 100))) or (not(cbc:PayableRoundingAmount) and ((xs:decimal(cbc:TaxInclusiveAmount)) = round((xs:decimal(cbc:TaxExclusiveAmount) + (xs:decimal(sum(/ubl:Invoice/cac:TaxTotal/cbc:TaxAmount)))) * 10 * 10) div 100))
((cbc:PrepaidAmount) and ((xs:decimal(cbc:PayableAmount)) = (round((xs:decimal(cbc:TaxInclusiveAmount) - xs:decimal(cbc:PrepaidAmount)) * 10 * 10) div 100))) or (xs:decimal(cbc:PayableAmount) = xs:decimal(cbc:TaxInclusiveAmount))
( ( not(contains(normalize-space(.),' ')) and contains( ' AED AFN ALL AMD ANG AOA ARS AUD AWG AZN BAM BBD BDT BGN BHD BIF BMD BND BOB BOV BRL BSD BTN BWP BYR BZD CAD CDF CHE CHF CHW CLF CLP CNY COP COU CRC CUP CVE CZK DJF DKK DOP DZD EEK EGP ERN ETB EUR FJD FKP GBP GEL GHS GIP GMD GNF GTQ GWP GYD HKD HNL HRK HTG HUF IDR ILS INR IQD IRR ISK JMD JOD JPY KES KGS KHR KMF KPW KRW KWD KYD KZT LAK LBP LKR LRD LSL LTL LVL LYD MAD MDL MGA MKD MMK MNT MOP MRO MUR MVR MWK MXN MXV MYR MZN NAD NGN NIO NOK NPR NZD OMR PAB PEN PGK PHP PKR PLN PYG QAR RON RSD RUB RWF SAR SBD SCR SDG SEK SGD SHP SKK SLL SOS SRD STD SVC SYP SZL THB TJS TMM TND TOP TRY TTD TWD TZS UAH UGX USD USN USS UYI UYU UZS VEF VND VUV WST XAF XAG XAU XBA XBB XBC XBD XCD XDR XFU XOF XPD XPF XTS XXX YER ZAR ZMK ZWR ZWD ',concat(' ',normalize-space(.),' ') ) ) )
( ( not(contains(normalize-space(.),' ')) and contains( ' AED AFN ALL AMD ANG AOA ARS AUD AWG AZN BAM BBD BDT BGN BHD BIF BMD BND BOB BOV BRL BSD BTN BWP BYR BZD CAD CDF CHE CHF CHW CLF CLP CNY COP COU CRC CUP CVE CZK DJF DKK DOP DZD EEK EGP ERN ETB EUR FJD FKP GBP GEL GHS GIP GMD GNF GTQ GWP GYD HKD HNL HRK HTG HUF IDR ILS INR IQD IRR ISK JMD JOD JPY KES KGS KHR KMF KPW KRW KWD KYD KZT LAK LBP LKR LRD LSL LTL LVL LYD MAD MDL MGA MKD MMK MNT MOP MRO MUR MVR MWK MXN MXV MYR MZN NAD NGN NIO NOK NPR NZD OMR PAB PEN PGK PHP PKR PLN PYG QAR RON RSD RUB RWF SAR SBD SCR SDG SEK SGD SHP SKK SLL SOS SRD STD SVC SYP SZL THB TJS TMM TND TOP TRY TTD TWD TZS UAH UGX USD USN USS UYI UYU UZS VEF VND VUV WST XAF XAG XAU XBA XBB XBC XBD XCD XDR XFU XOF XPD XPF XTS XXX YER ZAR ZMK ZWR ZWD ',concat(' ',normalize-space(.),' ') ) ) )
( ( not(contains(normalize-space(.),' ')) and contains( ' AD AE AF AG AI AL AM AN AO AQ AR AS AT AU AW AX AZ BA BB BD BE BF BG BH BI BL BJ BM BN BO BR BS BT BV BW BY BZ CA CC CD CF CG CH CI CK CL CM CN CO CR CU CV CX CY CZ DE DJ DK DM DO DZ EC EE EG EH ER ES ET FI FJ FK FM FO FR GA GB GD GE GF GG GH GI GL GM GN GP GQ GR GS GT GU GW GY HK HM HN HR HT HU ID IE IL IM IN IO IQ IR IS IT JE JM JO JP KE KG KH KI KM KN KP KR KW KY KZ LA LB LC LI LK LR LS LT LU LV LY MA MC MD ME MF MG MH MK ML MM MN MO MP MQ MR MS MT MU MV MW MX MY MZ NA NC NE NF NG NI NL NO NP NR NU NZ OM PA PE PF PG PH PK PL PM PN PR PS PT PW PY QA RO RS RU RW SA SB SC SD SE SG SH SI SJ SK SL SM SN SO SR ST SV SY SZ TC TD TF TG TH TJ TK TL TM TN TO TR TT TV TW TZ UA UG UM US UY UZ VA VC VE VG VI VN VU WF WS YE YT ZA ZM ZW ',concat(' ',normalize-space(.),' ') ) ) )
( ( not(contains(normalize-space(.),' ')) and contains( ' 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 60 61 62 63 64 65 66 67 70 74 75 76 77 78 91 92 93 94 95 96 97 ',concat(' ',normalize-space(.),' ') ) ) )
( ( not(contains(normalize-space(.),' ')) and contains( ' AE E S Z AA H ',concat(' ',normalize-space(.),' ') ) ) )
( ( not(contains(normalize-space(.),' ')) and contains( ' 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 ',concat(' ',normalize-space(.),' ') ) ) )
Rule
[EUGEN-T10-R012]-An allowance percentage MUST NOT be negative. [EUGEN-T10-R022]-An allowance or charge amount MUST NOT be negative. [EUGEN-T10-R040]-A customer SHOULD provide information about its legal entity information [EUGEN-T10-R047]- An invoice should not contain empty elements [EUGEN-T10-R048]-Document level amounts cannot have more than 2 decimals [EUGEN-T10-R049]- Total tax amount cannot have more than 2 decimals. [EUGEN-T10-R050]- Tax subtotal amounts cannot have more than 2 decimals. [EUGEN-T10-R051]-Document level amounts cannot have more than 2 decimals [EUGEN-T10-R052]-Document level amounts cannot have more than 2 decimals
[OP-T10-R001]-Contract document type code MUST be coded using UNCL 1001 list BII2 subset.
[OP-T10-R004]-A payee account identifier scheme MUST be from the Account ID PEPPOL code list
[OP-T10-R006]-Unit code MUST be coded according to the UN/ECE Recommendation 20
[EUGEN-T10-R004]-If the payment means are international account transfer and the account id is IBAN then the financial institution should be identified by using the BIC id.
[OP-T10-R010]-SourceCurrencyCode MUST be coded using ISO code list 4217
[OP-T10-R011]-TargetCurrencyCode MUST be coded using ISO code list 4217
[EUGEN-T10-R023]-An endpoint identifier MUST have a scheme identifier attribute.
[OP-T10-R002]-An Endpoint Identifier Scheme MUST be from the list of PEPPOL Party Identifiers described in the "PEPPOL Policy for using Identifiers".
[OP-T10-R003]-An Party Identifier Scheme MUST be from the list of PEPPOL Party Identifiers described in the "PEPPOL Policy for using Identifiers".
[OP-T10-R008]-A Party Company Identifier Scheme MUST be from the list of PEPPOL Party Identifiers described in the "PEPPOL Policy for using Identifiers".
[EUGEN-T10-R008]-For each tax subcategory the category ID and the applicable tax percentage MUST be provided.
[EUGEN-T10-R024]-A party identifier MUST have a scheme identifier attribute. [EUGEN-T10-R025]-An invoice type code MUST have a list identifier attribute 'UNCL1001'. [EUGEN-T10-R026]-A currency code element MUST have a list identifier attribute 'ISO4217'.
[EUGEN-T10-R028]-A payment means code MUST have a list identifier attribute 'UNCL4461'.
[EUGEN-T10-R031]-A financial account identifier MUST have a scheme identifier attribute.
[EUGEN-T10-R032]-A tax category identifier MUST have a scheme identifier attribute 'UNCL5305'. [EUGEN-T10-R033]-A document type code MUST have a list identifier attribute 'UNCL1001'. [EUGEN-T10-R034]-An delivery location identifier MUST have a scheme identifier attribute. [EUGEN-T10-R035]-An invoice MUST have a seller name [EUGEN-T10-R036]-An invoice MUST have a buyer name [EUGEN-T10-R037]-An invoice MUST have a seller postal address [EUGEN-T10-R038]-An invoice MUST have a buyer postal address [EUGEN-T10-R039]-A supplier SHOULD provide information about its legal entity information
[EUGEN-T10-R043]-The total tax amount MUST equal the sum of tax amounts per category.
[EUGEN-T10-R045]-Tax exchange rate MUST specify the calculation rate and the operator code.
[EUGEN-T10-R053]- An invoice must have an Invoice type code
[EUGEN-T10-R027]-A country identification code MUST have a list identifier attribute 'ISO3166-1:Alpha2'.
[EUGEN-T10-R029]-An allowance charge reason code MUST have a list identifier attribute 'UNCL4465'.
[EUGEN-T10-R030]-A unit code attribute MUST have a unit code list identifier attribute 'UNECERec20'.
[EUGEN-T10-R041]-The VAT identifier for the supplier SHOULD be prefixed with country code for companies with VAT registration in EU countries
[EUGEN-T10-R042]-The tax amount per category MUST be the taxable amount multiplied by the category percentage.
[EUGEN-T10-R044]-If the tax currency code is different from the document currency code, the tax exchange rate MUST be provided
[EUGEN-T10-R046]-If the tax currency code is different from the document currency code, each tax subtotal has to include the tax amount in both currencies
[OP-T10-R009]-TaxCurrencyCode MUST be coded using ISO code list 4217
Context
//cac:PaymentMeans/ubl:Invoice/cac:AllowanceCharge/ubl:Invoice/cac:AllowanceCharge//cac:AccountingCustomerParty/ubl:Invoice//cac:LegalMonetaryTotal/child::*/ubl:Invoice/cac:TaxTotal/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/ubl:Invoice/cac:AllowanceCharge
cac:ContractDocumentReference//cbc:DocumentTypeCode
cac:PayeeFinancialAccount/cbc:ID//@schemeID
cbc:*/@unitCode
cbc:SourceCurrencyCode
cbc:TargetCurrencyCode
cbc:EndpointID//@schemeID
cac:PartyIdentification/cbc:ID//@schemeID
cbc:CompanyID//@schemeID
//cac:TaxCategory//cbc:EndpointID
//cac:PartyIdentification/cbc:ID//cbc:InvoiceTypeCode//*[contains(name(),'CurrencyCode')]
//cac:Country/cbc:IdentificationCode//cbc:PaymentMeansCode
//cbc:AllowanceChargeReasonCode
//*[contains(name(),'Quantity')]//cac:PayeeFinancialAccount/cbc:ID
//cac:TaxCategory/cbc:ID//cbc:DocumentTypeCode//cac:DeliveryLocation/cbc:ID//cac:AccountingSupplierParty//cac:AccountingCustomerParty//cac:AccountingSupplierParty//cac:AccountingCustomerParty//cac:AccountingSupplierParty
//cac:AccountingSupplierParty
/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal
/ubl:Invoice/cac:TaxTotal
/ubl:Invoice
//cac:TaxExchangeRate
/ubl:Invoice/cac:TaxTotal/cac:TaxSubtotal/ubl:Invoice
cbc:TaxCurrencyCode
Test
not(cbc:MultiplierFactorNumeric) or number(cbc:MultiplierFactorNumeric) >=0number(cbc:Amount)>=0(cac:Party/cac:PartyLegalEntity)not(count(//*[not(node()[not(self::comment())])]) > 0)string-length(substring-after(., '.')) <= 2string-length(substring-after(cbc:TaxAmount, '.')) <= 2string-length(substring-after(cbc:TaxableAmount, '.')) <= 2string-length(substring-after(cbc:TaxAmount, '.')) <= 2string-length(substring-after(cbc:Amount, '.')) <= 2
((cbc:PaymentMeansCode = '31') and (cac:PayeeFinancialAccount/cbc:ID/@schemeID and cac:PayeeFinancialAccount/cbc:ID/@schemeID = 'IBAN') and (cac:PayeeFinancialAccount/cac:FinancialInstitutionBranch/cac:FinancialInstitution/cbc:ID/@schemeID and cac:PayeeFinancialAccount/cac:FinancialInstitutionBranch/cac:FinancialInstitution/cbc:ID/@schemeID = 'BIC')) or (cbc:PaymentMeansCode != '31') or ((cbc:PaymentMeansCode = '31') and (not(cac:PayeeFinancialAccount/cbc:ID/@schemeID) or (cac:PayeeFinancialAccount/cbc:ID/@schemeID != 'IBAN')))
297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 481 482 483 484 485 486 487 488 489 490 491 493 494 495 496 497 498 499 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 550 575 580 610 621 622 623 624 630 631 632 633 635 640 650 655 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 720 722 723 724 730 740 741 743 744 745 746 750 760 761 763 764 765 766 770 775 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 810 811 812 820 821 822 823 824 825 830 833 840 841 850 851 852 853 855 856 860 861 862 863 864 865 870 890 895 896 901 910 911 913 914 915 916 917 925 926 927 929 930 931 932 933 934 935 936 937 938 940 941 950 951 952 953 954 955 960 961 962 963 964 965 966 970 971 972 974 975 976 977 978 979 990 991 995 996 998 ',concat(' ',normalize-space(.),' ') ) ) )
( ( not(contains(normalize-space(.),' ')) and contains( ' IBAN LOCAL ',concat(' ',normalize-space(.),' ') ) ) )L28 L29 L30 L31 L32 L33 L34 L35 L36 L37 L38 L39 L40 L41 L42 L43 L44 L45 L46 L47 L48 L49 L50 L51 L52 L53 L54 L55 L56 L57 L58 L59 L60 L61 L62 L63 L64 L65 L66 L67 L68 L69 L70 L71 L72 L73 L74 L75 L76 L77 L78 L79 L80 L81 L82 L83 L84 L85 L86 L87 L88 L89 L90 L91 L92 L93 L94 L95 L96 L98 L99 LA LAC LBR LBT LC LD LE LEF LF LH LI LJ LK LM LN LO LP LPA LR LS LTN LTR LUB LUM LUX LX LY M0 M1 M10 M11 M12 M13 M14 M15 M16 M17 M18 M19 M20 M21 M22 M23 M24 M25 M26 M27 M29 M30 M31 M32 M33 M34 M35 M36 M37 M4 M5 M7 M9 MA MAH MAL MAM MAR MAW MBE MBF MBR MC MCU MD MF MGM MHZ MIK MIL MIN MIO MIU MK MLD MLT MMK MMQ MMT MND MON MPA MQ MQH MQS MSK MT MTK MTQ MTR MTS MV MVA MWH N1 N2 N3 NA NAR NB NBB NC NCL ND NE NEW NF NG NH NI NIL NIU NJ NL NMI NMP NN NPL NPR NPT NQ NR NRL NT NTT NU NV NX NY OA ODE OHM ON ONZ OP OT OZ OZA OZI P0 P1 P2 P3 P4 P5 P6 P7 P8 P9 PA PAL PB PD PE PF PFL PG PGL PI PK PL PLA PM PN PO PQ PR PS PT PTD PTI PTL PU PV PW PY PZ Q3 QA QAN QB QD QH QK QR QT QTD QTI QTL QTR R1 R4 R9 RA RD RG RH RK RL RM RN RO RP RPM RPS RS RT RU S3 S4 S5 S6 S7 S8 SA SAN SCO SCR SD SE SEC SET SG SHT SIE SK SL SMI SN SO SP SQ SQR SR SS SST ST STI STK STL STN SV SW SX T0 T1 T3 T4 T5 T6 T7 T8 TA TAH TC TD TE TF TI TIC TIP TJ TK TL TMS TN TNE TP TPR TQ TQD TR TRL TS TSD TSH TT TU TV TW TY U1 U2 UA UB UC UD UE UF UH UM VA VI VLT VP VQ VS W2 W4 WA WB WCD WE WEB WEE WG WH WHR WI WM WR WSD WTT WW X1 YDK YDQ YL YRD YT Z1 Z2 Z3 Z4 Z5 Z6 Z8 ZP ZZ ',concat(' ',normalize-space(.),' ') ) ) )
(parent::cac:AllowanceCharge) or (cbc:ID and cbc:Percent) or (cbc:ID = 'AE')@schemeID
( ( not(contains(normalize-space(.),' ')) and contains( ' AED AFN ALL AMD ANG AOA ARS AUD AWG AZN BAM BBD BDT BGN BHD BIF BMD BND BOB BOV BRL BSD BTN BWP BYR BZD CAD CDF CHE CHF CHW CLF CLP CNY COP COU CRC CUP CVE CZK DJF DKK DOP DZD EEK EGP ERN ETB EUR FJD FKP GBP GEL GHS GIP GMD GNF GTQ GWP GYD HKD HNL HRK HTG HUF IDR ILS INR IQD IRR ISK JMD JOD JPY KES KGS KHR KMF KPW KRW KWD KYD KZT LAK LBP LKR LRD LSL LTL LVL LYD MAD MDL MGA MKD MMK MNT MOP MRO MUR MVR MWK MXN MXV MYR MZN NAD NGN NIO NOK NPR NZD OMR PAB PEN PGK PHP PKR PLN PYG QAR RON RSD RUB RWF SAR SBD SCR SDG SEK SGD SHP SKK SLL SOS SRD STD SVC SYP SZL THB TJS TMM TND TOP TRY TTD TWD TZS UAH UGX USD USN USS UYI UYU UZS VEF VND VUV WST XAF XAG XAU XBA XBB XBC XBD XCD XDR XFU XOF XPD XPF XTS XXX YER ZAR ZMK ZWR ZWD ',concat(' ',normalize-space(.),' ') ) ) )
( ( not(contains(normalize-space(.),' ')) and contains( ' AED AFN ALL AMD ANG AOA ARS AUD AWG AZN BAM BBD BDT BGN BHD BIF BMD BND BOB BOV BRL BSD BTN BWP BYR BZD CAD CDF CHE CHF CHW CLF CLP CNY COP COU CRC CUP CVE CZK DJF DKK DOP DZD EEK EGP ERN ETB EUR FJD FKP GBP GEL GHS GIP GMD GNF GTQ GWP GYD HKD HNL HRK HTG HUF IDR ILS INR IQD IRR ISK JMD JOD JPY KES KGS KHR KMF KPW KRW KWD KYD KZT LAK LBP LKR LRD LSL LTL LVL LYD MAD MDL MGA MKD MMK MNT MOP MRO MUR MVR MWK MXN MXV MYR MZN NAD NGN NIO NOK NPR NZD OMR PAB PEN PGK PHP PKR PLN PYG QAR RON RSD RUB RWF SAR SBD SCR SDG SEK SGD SHP SKK SLL SOS SRD STD SVC SYP SZL THB TJS TMM TND TOP TRY TTD TWD TZS UAH UGX USD USN USS UYI UYU UZS VEF VND VUV WST XAF XAG XAU XBA XBB XBC XBD XCD XDR XFU XOF XPD XPF XTS XXX YER ZAR ZMK ZWR ZWD ',concat(' ',normalize-space(.),' ') ) ) )
( ( not(contains(normalize-space(.),' ')) and contains( ' FR:SIRENE SE:ORGNR FR:SIRET FI:OVT DUNS GLN DK:P IT:FTI NL:KVK IT:SIA IT:SECETI DIGST DK:CPR DK:CVR DK:SE DK:VANS IT:VAT IT:CF NO:ORGNR NO:VAT HU:VAT EU:REID AT:VAT AT:GOV IS:KT IBAN AT:KUR ES:VAT IT:IPA AD:VAT AL:VAT BA:VAT BE:VAT BG:VAT CH:VAT CY:VAT CZ:VAT DE:VAT EE:VAT GB:VAT GR:VAT HR:VAT IE:VAT LI:VAT LT:VAT LU:VAT LV:VAT MC:VAT ME:VAT MK:VAT MT:VAT NL:VAT PL:VAT PT:VAT RO:VAT RS:VAT SI:VAT SK:VAT SM:VAT TR:VAT VA:VAT NL:ION NL:OIN SE:VAT BE:CBE FR:VAT ZZZ ',concat(' ',normalize-space(.),' ') ) ) )"
( ( not(contains(normalize-space(.),' ')) and contains( ' FR:SIRENE SE:ORGNR FR:SIRET FI:OVT DUNS GLN DK:P IT:FTI NL:KVK IT:SIA IT:SECETI DIGST DK:CPR DK:CVR DK:SE DK:VANS IT:VAT IT:CF NO:ORGNR NO:VAT HU:VAT EU:REID AT:VAT AT:GOV IS:KT IBAN AT:KUR ES:VAT IT:IPA AD:VAT AL:VAT BA:VAT BE:VAT BG:VAT CH:VAT CY:VAT CZ:VAT DE:VAT EE:VAT GB:VAT GR:VAT HR:VAT IE:VAT LI:VAT LT:VAT LU:VAT LV:VAT MC:VAT ME:VAT MK:VAT MT:VAT NL:VAT PL:VAT PT:VAT RO:VAT RS:VAT SI:VAT SK:VAT SM:VAT TR:VAT VA:VAT NL:ION NL:OIN SE:VAT BE:CBE FR:VAT ZZZ ',concat(' ',normalize-space(.),' ') ) ) )"
( ( not(contains(normalize-space(.),' ')) and contains( ' FR:SIRENE SE:ORGNR FR:SIRET FI:OVT DUNS GLN DK:P IT:FTI NL:KVK IT:SIA IT:SECETI DIGST DK:CPR DK:CVR DK:SE DK:VANS IT:VAT IT:CF NO:ORGNR NO:VAT HU:VAT EU:REID AT:VAT AT:GOV IS:KT IBAN AT:KUR ES:VAT IT:IPA AD:VAT AL:VAT BA:VAT BE:VAT BG:VAT CH:VAT CY:VAT CZ:VAT DE:VAT EE:VAT GB:VAT GR:VAT HR:VAT IE:VAT LI:VAT LT:VAT LU:VAT LV:VAT MC:VAT ME:VAT MK:VAT MT:VAT NL:VAT PL:VAT PT:VAT RO:VAT RS:VAT SI:VAT SK:VAT SM:VAT TR:VAT VA:VAT NL:ION NL:OIN SE:VAT BE:CBE FR:VAT ZZZ ',concat(' ',normalize-space(.),' ') ) ) )"
@schemeID@listID = 'UNCL1001'@listID = 'ISO4217'
@listID = 'ISO3166-1:Alpha2'@listID = 'UNCL4461'
@listID = 'UNCL4465'
not(attribute::unitCode) or (attribute::unitCode and attribute::unitCodeListID = 'UNECERec20')@schemeID
@schemeID = 'UNCL5305'@listID = 'UNCL1001'@schemeID(cac:Party/cac:PartyName/cbc:Name)(cac:Party/cac:PartyName/cbc:Name)(cac:Party/cac:PostalAddress)(cac:Party/cac:PostalAddress)(cac:Party/cac:PartyLegalEntity)
not(//cbc:TaxCurrencyCode) or (//cac:TaxExchangeRate)
(cbc:CalculationRate) and (cbc:MathematicOperatorCode)
(cbc:InvoiceTypeCode)
not(/ubl:Invoice/cac:TaxTotal/*/*/*/cbc:ID = 'VAT') or (starts-with(cac:Party/cac:PartyTaxScheme/cbc:CompanyID,cac:Party/cac:PostalAddress/cac:Country/cbc:IdentificationCode))
((cbc:TaxableAmount) and (cac:TaxCategory/cbc:Percent) and (xs:decimal(cbc:TaxAmount - 1) < xs:decimal(cbc:TaxableAmount * (xs:decimal(cac:TaxCategory/cbc:Percent) div 100))) and (xs:decimal(cbc:TaxAmount + 1) > xs:decimal(cbc:TaxableAmount * (xs:decimal(cac:TaxCategory/cbc:Percent) div 100)))) or not(cac:TaxCategory/cbc:Percent) or not(cbc:TaxableAmount)
(xs:decimal(child::cbc:TaxAmount)= round(number(xs:decimal(sum(cac:TaxSubtotal/cbc:TaxAmount)) * 10 * 10)) div 100)
not(/ubl:Invoice/cbc:TaxCurrencyCode) or (cbc:TaxAmount and cbc:TransactionCurrencyTaxAmount)
( ( not(contains(normalize-space(.),' ')) and contains( ' AED AFN ALL AMD ANG AOA ARS AUD AWG AZN BAM BBD BDT BGN BHD BIF BMD BND BOB BOV BRL BSD BTN BWP BYR BZD CAD CDF CHE CHF CHW CLF CLP CNY COP COU CRC CUP CVE CZK DJF DKK DOP DZD EEK EGP ERN ETB EUR FJD FKP GBP GEL GHS GIP GMD GNF GTQ GWP GYD HKD HNL HRK HTG HUF IDR ILS INR IQD IRR ISK JMD JOD JPY KES KGS KHR KMF KPW KRW KWD KYD KZT LAK LBP LKR LRD LSL LTL LVL LYD MAD MDL MGA MKD MMK MNT MOP MRO MUR MVR MWK MXN MXV MYR MZN NAD NGN NIO NOK NPR NZD OMR PAB PEN PGK PHP PKR PLN PYG QAR RON RSD RUB RWF SAR SBD SCR SDG SEK SGD SHP SKK SLL SOS SRD STD SVC SYP SZL THB TJS TMM TND TOP TRY TTD TWD TZS UAH UGX USD USN USS UYI UYU UZS VEF VND VUV WST XAF XAG XAU XBA XBB XBC XBD XCD XDR XFU XOF XPD XPF XTS XXX YER ZAR ZMK ZWR ZWD ',concat(' ',normalize-space(.),' ') ) ) )