← all demos
pattern model
rule $Additional_supporting_documents
assert BR-52 [fatal] $BR-52
= [BR-52]-Each Additional supporting document (BG-24) shall contain a Supporting document reference (BT-122).
rule $Buyer_electronic_address
assert BR-63 [fatal] $BR-63
= [BR-63]-The Buyer electronic address (BT-49) shall have a Scheme identifier.
rule $Buyer_postal_address
assert BR-11 [fatal] $BR-11
= [BR-11]-The Buyer postal address shall contain a Buyer country code (BT-55).
rule $Card_information
assert BR-51 [warning] $BR-51
= [BR-51]-In accordance with card payments security standards an invoice should never include a full card primary account number (BT-87). At the moment PCI Security Standards Council has defined that the first 6 digits and last 4 digits are the maximum number of digits to be shown.
rule $Deliver_to_address
assert BR-57 [fatal] $BR-57
= [BR-57]-Each Deliver to address (BG-15) shall contain a Deliver to country code (BT-80).
rule $Document_level_allowances
assert BR-31 [fatal] $BR-31
= [BR-31]-Each Document level allowance (BG-20) shall have a Document level allowance amount (BT-92).
assert BR-32 [fatal] $BR-32
= [BR-32]-Each Document level allowance (BG-20) shall have a Document level allowance VAT category code (BT-95).
assert BR-33 [fatal] $BR-33
= [BR-33]-Each Document level allowance (BG-20) shall have a Document level allowance reason (BT-97) or a Document level allowance reason code (BT-98).
assert BR-CO-05 [fatal] $BR-CO-05
= [BR-CO-05]-Document level allowance reason code (BT-98) and Document level allowance reason (BT-97) shall indicate the same type of allowance.
assert BR-CO-21 [fatal] $BR-CO-21
= [BR-CO-21]-Each Document level allowance (BG-20) shall contain a Document level allowance reason (BT-97) or a Document level allowance reason code (BT-98), or both.
assert BR-DEC-01 [fatal] $BR-DEC-01
= [BR-DEC-01]-The allowed maximum number of decimals for the Document level allowance amount (BT-92) is 2.
assert BR-DEC-02 [fatal] $BR-DEC-02
= [BR-DEC-02]-The allowed maximum number of decimals for the Document level allowance base amount (BT-93) is 2.
rule $Document_level_charges
assert BR-36 [fatal] $BR-36
= [BR-36]-Each Document level charge (BG-21) shall have a Document level charge amount (BT-99).
assert BR-37 [fatal] $BR-37
= [BR-37]-Each Document level charge (BG-21) shall have a Document level charge VAT category code (BT-102).
assert BR-38 [fatal] $BR-38
= [BR-38]-Each Document level charge (BG-21) shall have a Document level charge reason (BT-104) or a Document level charge reason code (BT-105).
assert BR-CO-06 [fatal] $BR-CO-06
= [BR-CO-06]-Document level charge reason code (BT-105) and Document level charge reason (BT-104) shall indicate the same type of charge.
assert BR-CO-22 [fatal] $BR-CO-22
= [BR-CO-22]-Each Document level charge (BG-21) shall contain a Document level charge reason (BT-104) or a Document level charge reason code (BT-105), or both.
assert BR-DEC-05 [fatal] $BR-DEC-05
= [BR-DEC-05]-The allowed maximum number of decimals for the Document level charge amount (BT-99) is 2.
assert BR-DEC-06 [fatal] $BR-DEC-06
= [BR-DEC-06]-The allowed maximum number of decimals for the Document level charge base amount (BT-100) is 2.
rule $Document_totals
assert BR-12 [fatal] $BR-12
= [BR-12]-An Invoice shall have the Sum of Invoice line net amount (BT-106).
assert BR-13 [fatal] $BR-13
= [BR-13]-An Invoice shall have the Invoice total amount without VAT (BT-109).
assert BR-14 [fatal] $BR-14
= [BR-14]-An Invoice shall have the Invoice total amount with VAT (BT-112).
assert BR-15 [fatal] $BR-15
= [BR-15]-An Invoice shall have the Amount due for payment (BT-115).
assert BR-CO-10 [fatal] $BR-CO-10
= [BR-CO-10]-Sum of Invoice line net amount (BT-106) = Σ Invoice line net amount (BT-131).
assert BR-CO-11 [fatal] $BR-CO-11
= [BR-CO-11]-Sum of allowances on document level (BT-107) = Σ Document level allowance amount (BT-92).
assert BR-CO-12 [fatal] $BR-CO-12
= [BR-CO-12]-Sum of charges on document level (BT-108) = Σ Document level charge amount (BT-99).
assert BR-CO-13 [fatal] $BR-CO-13
= [BR-CO-13]-Invoice total amount without VAT (BT-109) = Σ Invoice line net amount (BT-131) - Sum of allowances on document level (BT-107) + Sum of charges on document level (BT-108).
assert BR-CO-16 [fatal] $BR-CO-16
= [BR-CO-16]-Amount due for payment (BT-115) = Invoice total amount with VAT (BT-112) -Paid amount (BT-113) +Rounding amount (BT-114).
assert BR-DEC-09 [fatal] $BR-DEC-09
= [BR-DEC-09]-The allowed maximum number of decimals for the Sum of Invoice line net amount (BT-106) is 2.
assert BR-DEC-10 [fatal] $BR-DEC-10
= [BR-DEC-10]-The allowed maximum number of decimals for the Sum of allowanced on document level (BT-107) is 2.
assert BR-DEC-11 [fatal] $BR-DEC-11
= [BR-DEC-11]-The allowed maximum number of decimals for the Sum of charges on document level (BT-108) is 2.
assert BR-DEC-12 [fatal] $BR-DEC-12
= [BR-DEC-12]-The allowed maximum number of decimals for the Invoice total amount without VAT (BT-109) is 2.
assert BR-DEC-14 [fatal] $BR-DEC-14
= [BR-DEC-14]-The allowed maximum number of decimals for the Invoice total amount with VAT (BT-112) is 2.
assert BR-DEC-16 [fatal] $BR-DEC-16
= [BR-DEC-16]-The allowed maximum number of decimals for the Paid amount (BT-113) is 2.
assert BR-DEC-17 [fatal] $BR-DEC-17
= [BR-DEC-17]-The allowed maximum number of decimals for the Rounding amount (BT-114) is 2.
assert BR-DEC-18 [fatal] $BR-DEC-18
= [BR-DEC-18]-The allowed maximum number of decimals for the Amount due for payment (BT-115) is 2.
rule $Invoice
assert BR-01 [fatal] $BR-01
= [BR-01]-An Invoice shall have a Specification identifier (BT-24).
assert BR-02 [fatal] $BR-02
= [BR-02]-An Invoice shall have an Invoice number (BT-1).
assert BR-03 [fatal] $BR-03
= [BR-03]-An Invoice shall have an Invoice issue date (BT-2).
assert BR-04 [fatal] $BR-04
= [BR-04]-An Invoice shall have an Invoice type code (BT-3).
assert BR-05 [fatal] $BR-05
= [BR-05]-An Invoice shall have an Invoice currency code (BT-5).
assert BR-06 [fatal] $BR-06
= [BR-06]-An Invoice shall contain the Seller name (BT-27).
assert BR-07 [fatal] $BR-07
= [BR-07]-An Invoice shall contain the Buyer name (BT-44).
assert BR-08 [fatal] $BR-08
= [BR-08]-An Invoice shall contain the Seller postal address.
assert BR-10 [fatal] $BR-10
= [BR-10]-An Invoice shall contain the Buyer postal address (BG-8).
assert BR-16 [fatal] $BR-16
= [BR-16]-An Invoice shall have at least one Invoice line (BG-25)
assert BR-53 [fatal] $BR-53
= [BR-53]-If the VAT accounting currency code (BT-6) is present, then the Invoice total VAT amount in accounting currency (BT-111) shall be provided.
assert BR-AE-01 [fatal] $BR-AE-01
= [BR-AE-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Reverse charge" shall contain in the VAT Breakdown (BG-23) exactly one VAT category code (BT-118) equal with "VAT reverse charge".
assert BR-AE-02 [fatal] $BR-AE-02
= [BR-AE-02]-An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Reverse charge" shall contain the Seller VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48) and/or the Buyer legal registration identifier (BT-47).
assert BR-AE-03 [fatal] $BR-AE-03
= [BR-AE-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Reverse charge" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48) and/or the Buyer legal registration identifier (BT-47).
assert BR-AE-04 [fatal] $BR-AE-04
= [BR-AE-04]-An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Reverse charge" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48) and/or the Buyer legal registration identifier (BT-47).
assert BR-CO-03 [fatal] $BR-CO-03
= [BR-CO-03]-Value added tax point date (BT-7) and Value added tax point date code (BT-8) are mutually exclusive.
assert BR-CO-15 [fatal] $BR-CO-15
= [BR-CO-15]-Invoice total amount with VAT (BT-112) = Invoice total amount without VAT (BT-109) + Invoice total VAT amount (BT-110).
assert BR-CO-18 [fatal] $BR-CO-18
= [BR-CO-18]-An Invoice shall at least have one VAT breakdown group (BG-23).
assert BR-DEC-13 [fatal] $BR-DEC-13
= [BR-DEC-13]-The allowed maximum number of decimals for the Invoice total VAT amount (BT-110) is 2.
assert BR-DEC-15 [fatal] $BR-DEC-15
= [BR-DEC-15]-The allowed maximum number of decimals for the Invoice total VAT amount in accounting currency (BT-111) is 2.
assert BR-E-01 [fatal] $BR-E-01
= [BR-E-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Exempt from VAT" shall contain exactly one VAT breakdown (BG-23) with the VAT category code (BT-118) equal to "Exempt from VAT".
assert BR-E-02 [fatal] $BR-E-02
= [BR-E-02]-An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Exempt from VAT" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
assert BR-E-03 [fatal] $BR-E-03
= [BR-E-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Exempt from VAT" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
assert BR-E-04 [fatal] $BR-E-04
= [BR-E-04]-An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Exempt from VAT" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
assert BR-G-01 [fatal] $BR-G-01
= [BR-G-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Export outside the EU" shall contain in the VAT breakdown (BG-23) exactly one VAT category code (BT-118) equal with "Export outside the EU".
assert BR-G-02 [fatal] $BR-G-02
= [BR-G-02]-An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Export outside the EU" shall contain the Seller VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63).
assert BR-G-03 [fatal] $BR-G-03
= [BR-G-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Export outside the EU" shall contain the Seller VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63).
assert BR-G-04 [fatal] $BR-G-04
= [BR-G-04]-An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Export outside the EU" shall contain the Seller VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63).
assert BR-IC-01 [fatal] $BR-IC-01
= [BR-IC-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Intra-community supply" shall contain in the VAT breakdown (BG-23) exactly one VAT category code (BT-118) equal with "Intra-community supply".
assert BR-IC-02 [fatal] $BR-IC-02
= [BR-IC-02]-An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Intra-community supply" shall contain the Seller VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48).
assert BR-IC-03 [fatal] $BR-IC-03
= [BR-IC-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Intra-community supply" shall contain the Seller VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48).
assert BR-IC-04 [fatal] $BR-IC-04
= [BR-IC-04]-An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Intra-community supply" shall contain the Seller VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48).
assert BR-IC-11 [fatal] $BR-IC-11
= [BR-IC-11]-In an Invoice with a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Intra-community supply" the Actual delivery date (BT-72) or the Invoicing period (BG-14) shall not be blank.
assert BR-IC-12 [fatal] $BR-IC-12
= [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.
assert BR-AF-01 [fatal] $BR-AF-01
= [BR-AF-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "IGIC" shall contain in the VAT breakdown (BG-23) at least one VAT category code (BT-118) equal with "IGIC".
assert BR-AF-02 [fatal] $BR-AF-02
= [BR-AF-02]-An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "IGIC" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
assert BR-AF-03 [fatal] $BR-AF-03
= [BR-AF-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "IGIC" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
assert BR-AF-04 [fatal] $BR-AF-04
= [BR-AF-04]-An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "IGIC" shall contain the Seller VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
assert BR-AG-01 [fatal] $BR-AG-01
= [BR-AG-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "IPSI" shall contain in the VAT breakdown (BG-23) at least one VAT category code (BT-118) equal with "IPSI".
assert BR-AG-02 [fatal] $BR-AG-02
= [BR-AG-02]-An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "IPSI" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
assert BR-AG-03 [fatal] $BR-AG-03
= [BR-AG-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "IPSI" shall contain the Seller VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
assert BR-AG-04 [fatal] $BR-AG-04
= [BR-AG-04]-An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "IPSI" shall contain the Seller VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
assert BR-O-01 [fatal] $BR-O-01
= [BR-O-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Not subject to VAT" shall contain exactly one VAT breakdown group (BG-23) with the VAT category code (BT-118) equal to "Not subject to VAT".
assert BR-O-02 [fatal] $BR-O-02
= [BR-O-02]-An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Not subject to VAT" shall not contain the Seller VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) or the Buyer VAT identifier (BT-48).
assert BR-O-03 [fatal] $BR-O-03
= [BR-O-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Not subject to VAT" shall not contain the Seller VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) or the Buyer VAT identifier (BT-48).
assert BR-O-04 [fatal] $BR-O-04
= [BR-O-04]-An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Not subject to VAT" shall not contain the Seller VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) or the Buyer VAT identifier (BT-48).
assert BR-O-11 [fatal] $BR-O-11
= [BR-O-11]-An Invoice that contains a VAT breakdown group (BG-23) with a VAT category code (BT-118) "Not subject to VAT" shall not contain other VAT breakdown groups (BG-23).
assert BR-O-12 [fatal] $BR-O-12
= [BR-O-12]-An Invoice that contains a VAT breakdown group (BG-23) with a VAT category code (BT-118) "Not subject to VAT" shall not contain an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is not "Not subject to VAT".
assert BR-O-13 [fatal] $BR-O-13
= [BR-O-13]-An Invoice that contains a VAT breakdown group (BG-23) with a VAT category code (BT-118) "Not subject to VAT" shall not contain Document level allowances (BG-20) where Document level allowance VAT category code (BT-95) is not "Not subject to VAT".
assert BR-O-14 [fatal] $BR-O-14
= [BR-O-14]-An Invoice that contains a VAT breakdown group (BG-23) with a VAT category code (BT-118) "Not subject to VAT" shall not contain Document level charges (BG-21) where Document level charge VAT category code (BT-102) is not "Not subject to VAT".
assert BR-S-01 [fatal] $BR-S-01
= [BR-S-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Standard rated" shall contain in the VAT breakdown (BG-23) at least one VAT category code (BT-118) equal with "Standard rated".
assert BR-S-02 [fatal] $BR-S-02
= [BR-S-02]-An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Standard rated" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
assert BR-S-03 [fatal] $BR-S-03
= [BR-S-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Standard rated" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
assert BR-S-04 [fatal] $BR-S-04
= [BR-S-04]-An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Standard rated" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
assert BR-Z-01 [fatal] $BR-Z-01
= [BR-Z-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Zero rated" shall contain in the VAT breakdown (BG-23) exactly one VAT category code (BT-118) equal with "Zero rated".
assert BR-Z-02 [fatal] $BR-Z-02
= [BR-Z-02]-An Invoice that contains an Invoice line where the Invoiced item VAT category code (BT-151) is "Zero rated" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
assert BR-Z-03 [fatal] $BR-Z-03
= [BR-Z-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Zero rated" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
assert BR-Z-04 [fatal] $BR-Z-04
= [BR-Z-04]-An Invoice that contains a Document level charge where the Document level charge VAT category code (BT-102) is "Zero rated" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
assert BR-B-01 [fatal] $BR-B-01
= [BR-B-01]-An Invoice where the VAT category code (BT-151, BT-95 or BT-102) is “Split payment” shall be a domestic Italian invoice.
assert BR-B-02 [fatal] $BR-B-02
= [BR-B-02]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95, BT-118 or BT-102) is “Split payment" shall not contain an invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95, BT-118 or BT-102) is “Standard rated”.
rule $Invoice_Line
assert BR-21 [fatal] $BR-21
= [BR-21]-Each Invoice line (BG-25) shall have an Invoice line identifier (BT-126).
assert BR-22 [fatal] $BR-22
= [BR-22]-Each Invoice line (BG-25) shall have an Invoiced quantity (BT-129).
assert BR-23 [fatal] $BR-23
= [BR-23]-An Invoice line (BG-25) shall have an Invoiced quantity unit of measure code (BT-130).
assert BR-24 [fatal] $BR-24
= [BR-24]-Each Invoice line (BG-25) shall have an Invoice line net amount (BT-131).
assert BR-25 [fatal] $BR-25
= [BR-25]-Each Invoice line (BG-25) shall contain the Item name (BT-153).
assert BR-26 [fatal] $BR-26
= [BR-26]-Each Invoice line (BG-25) shall contain the Item net price (BT-146).
assert BR-27 [fatal] $BR-27
= [BR-27]-The Item net price (BT-146) shall NOT be negative.
assert BR-28 [fatal] $BR-28
= [BR-28]-The Item gross price (BT-148) shall NOT be negative.
assert BR-CO-04 [fatal] $BR-CO-04
= [BR-CO-04]-Each Invoice line (BG-25) shall be categorized with an Invoiced item VAT category code (BT-151).
assert BR-DEC-23 [fatal] $BR-DEC-23
= [BR-DEC-23]-The allowed maximum number of decimals for the Invoice line net amount (BT-131) is 2.
rule $Invoice_line_allowances
assert BR-41 [fatal] $BR-41
= [BR-41]-Each Invoice line allowance (BG-27) shall have an Invoice line allowance amount (BT-136).
assert BR-42 [fatal] $BR-42
= [BR-42]-Each Invoice line allowance (BG-27) shall have an Invoice line allowance reason (BT-139) or an Invoice line allowance reason code (BT-140).
assert BR-CO-07 [fatal] $BR-CO-07
= [BR-CO-07]-Invoice line allowance reason code (BT-140) and Invoice line allowance reason (BT-139) shall indicate the same type of allowance reason.
assert BR-CO-23 [fatal] $BR-CO-23
= [BR-CO-23]-Each Invoice line allowance (BG-27) shall contain an Invoice line allowance reason (BT-139) or an Invoice line allowance reason code (BT-140), or both.
assert BR-DEC-24 [fatal] $BR-DEC-24
= [BR-DEC-24]-The allowed maximum number of decimals for the Invoice line allowance amount (BT-136) is 2.
assert BR-DEC-25 [fatal] $BR-DEC-25
= [BR-DEC-25]-The allowed maximum number of decimals for the Invoice line allowance base amount (BT-137) is 2.
rule $Invoice_line_charges
assert BR-43 [fatal] $BR-43
= [BR-43]-Each Invoice line charge (BG-28) shall have an Invoice line charge amount (BT-141).
assert BR-44 [fatal] $BR-44
= [BR-44]-Each Invoice line charge shall have an Invoice line charge reason or an invoice line allowance reason code.
assert BR-CO-08 [fatal] $BR-CO-08
= [BR-CO-08]-Invoice line charge reason code (BT-145) and Invoice line charge reason (BT-144) shall indicate the same type of charge reason.
assert BR-CO-24 [fatal] $BR-CO-24
= [BR-CO-24]-Each Invoice line charge (BG-28) shall contain an Invoice line charge reason (BT-144) or an Invoice line charge reason code (BT-145), or both.
assert BR-DEC-27 [fatal] $BR-DEC-27
= [BR-DEC-27]-The allowed maximum number of decimals for the Invoice line charge amount (BT-141) is 2.
assert BR-DEC-28 [fatal] $BR-DEC-28
= [BR-DEC-28]-The allowed maximum number of decimals for the Invoice line charge base amount (BT-142) is 2.
rule $Invoice_Line_Period
assert BR-30 [fatal] $BR-30
= [BR-30]-If both Invoice line period start date (BT-134) and Invoice line period end date (BT-135) are given then the Invoice line period end date (BT-135) shall be later or equal to the Invoice line period start date (BT-134).
assert BR-CO-20 [fatal] $BR-CO-20
= [BR-CO-20]-If Invoice line period (BG-26) is used, the Invoice line period start date (BT-134) or the Invoice line period end date (BT-135) shall be filled, or both.
rule $Invoice_Period
assert BR-29 [fatal] $BR-29
= [BR-29]-If both Invoicing period start date (BT-73) and Invoicing period end date (BT-74) are given then the Invoicing period end date (BT-74) shall be later or equal to the Invoicing period start date (BT-73).
assert BR-CO-19 [fatal] $BR-CO-19
= [BR-CO-19]-If Invoicing period (BG-14) is used, the Invoicing period start date (BT-73) or the Invoicing period end date (BT-74) shall be filled, or both.
rule $Item_attributes
assert BR-54 [fatal] $BR-54
= [BR-54]-Each Item attribute (BG-32) shall contain an Item attribute name (BT-160) and an Item attribute value (BT-161).
rule $Item_classification_identifier
assert BR-65 [fatal] $BR-65
= [BR-65]-The Item classification identifier (BT-158) shall have a Scheme identifier.
rule $Item_standard_identifier
assert BR-64 [fatal] $BR-64
= [BR-64]-The Item standard identifier (BT-157) shall have a Scheme identifier.
rule $Note
assert BR-CL-08 [fatal] $BR-CL-08
= [BR-CL-08]-Invoiced note subject code shall be coded using UNCL4451
rule $Payee
assert BR-17 [fatal] $BR-17
= [BR-17]-The Payee name (BT-59) shall be provided in the Invoice, if the Payee (BG-10) is different from the Seller (BG-4)
rule $Payee_Financial_Account
assert BR-50 [fatal] $BR-50
= [BR-50]-A Payment account identifier (BT-84) shall be present if Credit transfer (BG-17) information is provided in the Invoice.
rule $Payment_instructions
assert BR-49 [fatal] $BR-49
= [BR-49]-A Payment instruction (BG-16) shall specify the Payment means type code (BT-81).
assert BR-61 [fatal] $BR-61
= [BR-61]-If the Payment means type code (BT-81) means SEPA credit transfer, Local credit transfer or Non-SEPA international credit transfer, the Payment account identifier (BT-84) shall be present.
rule $Preceding_Invoice
assert BR-55 [fatal] $BR-55
= [BR-55]-Each Preceding Invoice reference (BG-3) shall contain a Preceding Invoice reference (BT-25).
rule $Seller
assert BR-CO-26 [fatal] $BR-CO-26
= [BR-CO-26]-In order for the buyer to automatically identify a supplier, the Seller identifier (BT-29), the Seller legal registration identifier (BT-30) and/or the Seller VAT identifier (BT-31) shall be present.
rule $Seller_electronic_address
assert BR-62 [fatal] $BR-62
= [BR-62]-The Seller electronic address (BT-34) shall have a Scheme identifier.
rule $Seller_postal_address
assert BR-09 [fatal] $BR-09
= [BR-09]-The Seller postal address (BG-5) shall contain a Seller country code (BT-40).
rule $Tax_Representative
assert BR-18 [fatal] $BR-18
= [BR-18]-The Seller tax representative name (BT-62) shall be provided in the Invoice, if the Seller (BG-4) has a Seller tax representative party (BG-11)
assert BR-19 [fatal] $BR-19
= [BR-19]-The Seller tax representative postal address (BG-12) shall be provided in the Invoice, if the Seller (BG-4) has a Seller tax representative party (BG-11).
assert BR-56 [fatal] $BR-56
= [BR-56]-Each Seller tax representative party (BG-11) shall have a Seller tax representative VAT identifier (BT-63).
rule $Tax_Representative_postal_address
assert BR-20 [fatal] $BR-20
= [BR-20]-The Seller tax representative postal address (BG-12) shall contain a Tax representative country code (BT-69), if the Seller (BG-4) has a Seller tax representative party (BG-11).
rule $Tax_Total
assert BR-CO-14 [fatal] $BR-CO-14
= [BR-CO-14]-Invoice total VAT amount (BT-110) = Σ VAT category tax amount (BT-117).
rule $VAT_breakdown
assert BR-45 [fatal] $BR-45
= [BR-45]-Each VAT breakdown (BG-23) shall have a VAT category taxable amount (BT-116).
assert BR-46 [fatal] $BR-46
= [BR-46]-Each VAT breakdown (BG-23) shall have a VAT category tax amount (BT-117).
assert BR-47 [fatal] $BR-47
= [BR-47]-Each VAT breakdown (BG-23) shall be defined through a VAT category code (BT-118).
assert BR-48 [fatal] $BR-48
= [BR-48]-Each VAT breakdown (BG-23) shall have a VAT category rate (BT-119), except if the Invoice is not subject to VAT.
assert BR-CO-17 [fatal] $BR-CO-17
= [BR-CO-17]-VAT category tax amount (BT-117) = VAT category taxable amount (BT-116) x (VAT category rate (BT-119) / 100), rounded to two decimals.
assert BR-DEC-19 [fatal] $BR-DEC-19
= [BR-DEC-19]-The allowed maximum number of decimals for the VAT category taxable amount (BT-116) is 2.
assert BR-DEC-20 [fatal] $BR-DEC-20
= [BR-DEC-20]-The allowed maximum number of decimals for the VAT category tax amount (BT-117) is 2.
rule $VAT_identifiers
assert BR-CO-09 [fatal] $BR-CO-09
= [BR-CO-09]-The Seller VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48) shall have a prefix in accordance with ISO code ISO 3166-1 alpha-2 by which the country of issue may be identified. Nevertheless, Greece may use the prefix ‘EL’.
rule $VATAE
assert BR-AE-08 [fatal] $BR-AE-08
= [BR-AE-08]-In a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Reverse charge" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amounts (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Reverse charge".
assert BR-AE-09 [fatal] $BR-AE-09
= [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).
assert BR-AE-10 [fatal] $BR-AE-10
= [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).
rule $VATAE_Allowance
assert BR-AE-06 [fatal] $BR-AE-06
= [BR-AE-06]-In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Reverse charge" the Document level allowance VAT rate (BT-96) shall be 0 (zero).
rule $VATAE_Charge
assert BR-AE-07 [fatal] $BR-AE-07
= [BR-AE-07]-In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Reverse charge" the Document level charge VAT rate (BT-103) shall be 0 (zero).
rule $VATAE_Line
assert BR-AE-05 [fatal] $BR-AE-05
= [BR-AE-05]-In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Reverse charge" the Invoiced item VAT rate (BT-152) shall be 0 (zero).
rule $VATE
assert BR-E-08 [fatal] $BR-E-08
= [BR-E-08]-In a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Exempt from VAT" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amounts (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Exempt from VAT".
assert BR-E-09 [fatal] $BR-E-09
= [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).
assert BR-E-10 [fatal] $BR-E-10
= [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).
rule $VATE_Allowance
assert BR-E-06 [fatal] $BR-E-06
= [BR-E-06]-In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Exempt from VAT", the Document level allowance VAT rate (BT-96) shall be 0 (zero).
rule $VATE_Charge
assert BR-E-07 [fatal] $BR-E-07
= [BR-E-07]-In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Exempt from VAT", the Document level charge VAT rate (BT-103) shall be 0 (zero).
rule $VATE_Line
assert BR-E-05 [fatal] $BR-E-05
= [BR-E-05]-In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Exempt from VAT", the Invoiced item VAT rate (BT-152) shall be 0 (zero).
rule $VATG
assert BR-G-08 [fatal] $BR-G-08
= [BR-G-08]-In a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Export outside the EU" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amounts (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Export outside the EU".
assert BR-G-09 [fatal] $BR-G-09
= [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).
assert BR-G-10 [fatal] $BR-G-10
= [BR-G-10]-A VAT breakdown (BG-23) with the VAT Category code (BT-118) "Export outside the EU" shall have a VAT exemption reason code (BT-121), meaning "Export outside the EU" or the VAT exemption reason text (BT-120) "Export outside the EU" (or the equivalent standard text in another language).
rule $VATG_Allowance
assert BR-G-06 [fatal] $BR-G-06
= [BR-G-06]-In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Export outside the EU" the Document level allowance VAT rate (BT-96) shall be 0 (zero).
rule $VATG_Charge
assert BR-G-07 [fatal] $BR-G-07
= [BR-G-07]-In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Export outside the EU" the Document level charge VAT rate (BT-103) shall be 0 (zero).
rule $VATG_Line
assert BR-G-05 [fatal] $BR-G-05
= [BR-G-05]-In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Export outside the EU" the Invoiced item VAT rate (BT-152) shall be 0 (zero).
rule $VATIC
assert BR-IC-08 [fatal] $BR-IC-08
= [BR-IC-08]-In a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Intra-community supply" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amounts (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Intra-community supply".
assert BR-IC-09 [fatal] $BR-IC-09
= [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).
assert BR-IC-10 [fatal] $BR-IC-10
= [BR-IC-10]-A VAT breakdown (BG-23) with the VAT Category code (BT-118) "Intra-community supply" shall have a VAT exemption reason code (BT-121), meaning "Intra-community supply" or the VAT exemption reason text (BT-120) "Intra-community supply" (or the equivalent standard text in another language).
rule $VATIC_Allowance
assert BR-IC-06 [fatal] $BR-IC-06
= [BR-IC-06]-In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Intra-community supply" the Document level allowance VAT rate (BT-96) shall be 0 (zero).
rule $VATIC_Charge
assert BR-IC-07 [fatal] $BR-IC-07
= [BR-IC-07]-In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Intra-community supply" the Document level charge VAT rate (BT-103) shall be 0 (zero).
rule $VATIC_Line
assert BR-IC-05 [fatal] $BR-IC-05
= [BR-IC-05]-In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Intracommunity supply" the Invoiced item VAT rate (BT-152) shall be 0 (zero).
rule $VATIG
assert BR-AF-08 [fatal] $BR-AF-08
= [BR-AF-08]-For each different value of VAT category rate (BT-119) where the VAT category code (BT-118) is "IGIC", the VAT category taxable amount (BT-116) in a VAT breakdown (BG-23) shall equal the sum of Invoice line net amounts (BT-131) plus the sum of document level charge amounts (BT-99) minus the sum of document level allowance amounts (BT-92) where the VAT category code (BT-151, BT-102, BT-95) is "IGIC" and the VAT rate (BT-152, BT-103, BT-96) equals the VAT category rate (BT-119).
assert BR-AF-09 [fatal] $BR-AF-09
= [BR-AF-09]-The VAT category tax amount (BT-117) in a VAT breakdown (BG-23) where VAT category code (BT-118) is "IGIC" shall equal the VAT category taxable amount (BT-116) multiplied by the VAT category rate (BT-119).
assert BR-AF-10 [fatal] $BR-AF-10
= [BR-AF-10]-A VAT breakdown (BG-23) with VAT Category code (BT-118) "IGIC" shall not have a VAT exemption reason code (BT-121) or VAT exemption reason text (BT-120).
rule $VATIG_Allowance
assert BR-AF-06 [fatal] $BR-AF-06
= [BR-AF-06]-In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "IGIC" the Document level allowance VAT rate (BT-96) shall be 0 (zero) or greater than zero.
rule $VATIG_Charge
assert BR-AF-07 [fatal] $BR-AF-07
= [BR-AF-07]-In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "IGIC" the Document level charge VAT rate (BT-103) shall be 0 (zero) or greater than zero.
rule $VATIG_Line
assert BR-AF-05 [fatal] $BR-AF-05
= [BR-AF-05]-In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "IGIC" the invoiced item VAT rate (BT-152) shall be 0 (zero) or greater than zero.
rule $VATIP
assert BR-AG-08 [fatal] $BR-AG-08
= [BR-AG-08]-For each different value of VAT category rate (BT-119) where the VAT category code (BT-118) is "IPSI", the VAT category taxable amount (BT-116) in a VAT breakdown (BG-23) shall equal the sum of Invoice line net amounts (BT-131) plus the sum of document level charge amounts (BT-99) minus the sum of document level allowance amounts (BT-92) where the VAT category code (BT-151, BT-102, BT-95) is "IPSI" and the VAT rate (BT-152, BT-103, BT-96) equals the VAT category rate (BT-119).
assert BR-AG-09 [fatal] $BR-AG-09
= [BR-AG-09]-The VAT category tax amount (BT-117) in a VAT breakdown (BG-23) where VAT category code (BT-118) is "IPSI" shall equal the VAT category taxable amount (BT-116) multiplied by the VAT category rate (BT-119).
assert BR-AG-10 [fatal] $BR-AG-10
= [BR-AG-10]-A VAT breakdown (BG-23) with VAT Category code (BT-118) "IPSI" shall not have a VAT exemption reason code (BT-121) or VAT exemption reason text (BT-120).
rule $VATIP_Allowance
assert BR-AG-06 [fatal] $BR-AG-06
= [BR-AG-06]-In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "IPSI" the Document level allowance VAT rate (BT-96) shall be 0 (zero) or greater than zero.
rule $VATIP_Charge
assert BR-AG-07 [fatal] $BR-AG-07
= [BR-AG-07]-In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "IPSI" the Document level charge VAT rate (BT-103) shall be 0 (zero) or greater than zero.
rule $VATIP_Line
assert BR-AG-05 [fatal] $BR-AG-05
= [BR-AG-05]-In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "IPSI" the Invoiced item VAT rate (BT-152) shall be 0 (zero) or greater than zero.
rule $VATO
assert BR-O-08 [fatal] $BR-O-08
= [BR-O-08]-In a VAT breakdown (BG-23) where the VAT category code (BT-118) is " Not subject to VAT" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amounts (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Not subject to VAT".
assert BR-O-09 [fatal] $BR-O-09
= [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).
assert BR-O-10 [fatal] $BR-O-10
= [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).
rule $VATO_Allowance
assert BR-O-06 [fatal] $BR-O-06
= [BR-O-06]-A Document level allowance (BG-20) where VAT category code (BT-95) is "Not subject to VAT" shall not contain a Document level allowance VAT rate (BT-96).
rule $VATO_Charge
assert BR-O-07 [fatal] $BR-O-07
= [BR-O-07]-A Document level charge (BG-21) where the VAT category code (BT-102) is "Not subject to VAT" shall not contain a Document level charge VAT rate (BT-103).
rule $VATO_Line
assert BR-O-05 [fatal] $BR-O-05
= [BR-O-05]-An Invoice line (BG-25) where the VAT category code (BT-151) is "Not subject to VAT" shall not contain an Invoiced item VAT rate (BT-152).
rule $VATS
assert BR-S-08 [fatal] $BR-S-08
= [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).
assert BR-S-09 [fatal] $BR-S-09
= [BR-S-09]-The VAT category tax amount (BT-117) in a VAT breakdown (BG-23) where VAT category code (BT-118) is "Standard rated" shall equal the VAT category taxable amount (BT-116) multiplied by the VAT category rate (BT-119).
assert BR-S-10 [fatal] $BR-S-10
= [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).
rule $VATS_Allowance
assert BR-S-06 [fatal] $BR-S-06
= [BR-S-06]-In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Standard rated" the Document level allowance VAT rate (BT-96) shall be greater than zero.
rule $VATS_Charge
assert BR-S-07 [fatal] $BR-S-07
= [BR-S-07]-In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Standard rated" the Document level charge VAT rate (BT-103) shall be greater than zero.
rule $VATS_Line
assert BR-S-05 [fatal] $BR-S-05
= [BR-S-05]-In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Standard rated" the Invoiced item VAT rate (BT-152) shall be greater than zero.
rule $VATZ
assert BR-Z-08 [fatal] $BR-Z-08
= [BR-Z-08]-In a VAT breakdown (BG-23) where VAT category code (BT-118) is "Zero rated" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amount (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Zero rated".
assert BR-Z-09 [fatal] $BR-Z-09
= [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).
assert BR-Z-10 [fatal] $BR-Z-10
= [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).
rule $VATZ_Allowance
assert BR-Z-06 [fatal] $BR-Z-06
= [BR-Z-06]-In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Zero rated" the Document level allowance VAT rate (BT-96) shall be 0 (zero).
rule $VATZ_Charge
assert BR-Z-07 [fatal] $BR-Z-07
= [BR-Z-07]-In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Zero rated" the Document level charge VAT rate (BT-103) shall be 0 (zero).
rule $VATZ_Line
assert BR-Z-05 [fatal] $BR-Z-05
= [BR-Z-05]-In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Zero rated" the Invoiced item VAT rate (BT-152) shall be 0 (zero).