Class VATBreakdown


  • public class VATBreakdown
    extends Object
    BG-23:VAT BREAKDOWN

    A group of business terms providing information about VAT breakdown by different categories, rates and exemption reasons

    BR-CO-18: An Invoice shall at least have one VAT breakdown group (BG-23).

    XPath:/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax

    • Method Detail

      • setVATExemptionReasonText

        public VATBreakdown setVATExemptionReasonText​(String value)
        Parameters:
        value - BT-120:VAT exemption reason text

        A textual statement of the reason why the amount is exempted from VAT or why no VAT is being charged

        Articles 226 items 11 to 15 Directive2006/112/EC [2].

        CHORUS PRO: this field is limited to 1024 characters

        XPath:/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:ExemptionReason

        Returns:
        VATBreakdown
      • setGoodsValueOfTheTaxRate

        public VATBreakdown setGoodsValueOfTheTaxRate​(UnitPriceAmount value)
        Parameters:
        value - EXT:Goods value of the tax rate

        XPath:/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:LineTotalBasisAmount

        Returns:
        VATBreakdown
      • setAllowanceChargeBasisAmount

        public VATBreakdown setAllowanceChargeBasisAmount​(UnitPriceAmount value)
        Parameters:
        value - EXT:Total amount of charges / allowances on document level

        XPath:/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:AllowanceChargeBasisAmount

        Returns:
        VATBreakdown
      • setVATCategoryCode

        public VATBreakdown setVATCategoryCode​(Codes.VATCategoryCode value)
        Parameters:
        value - BT-118:VAT category code

        Coded identification of a VAT category.

        The following entries of UNTDID 5305 [6] are used (further clarification between brackets):- Standard rate (Liable for VAT in a standard way)- Zero rated goods (Liable for VAT with a percentage rate of zero)- Exempt from tax (VAT/IGIC/IPSI)- VAT Reverse Charge (Reverse charge VAT/IGIC/IPSI rules apply)- VAT exempt for intra community supply of goods (VAT/IGIC/IPSI not levied due to Intra-community supply rules)- Free export item, tax not charged (VAT/IGIC/IPSI not levied due to export outside of the EU)- Services outside scope of tax (Sale is not subject to VAT/IGIC/IPSI)- Canary Islands General Indirect Tax (Liable for IGIC tax)- Liable for IPSI (Ceuta/Melilla tax)

        The VAT category codes are as follows:S = Standard VAT rateZ = Zero rated goodsE = VAT exemptAE = Reverse chargeK = Intra-Community supply (specific reverse charge)G = Exempt VAT for Export outside EUO = Outside VAT scopeL = Canary IslandsM = Ceuta and Mellila

        BR-47: Each VAT breakdown (BG-23) shall be defined through a VAT category code (BT-118).

        XPath:/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:CategoryCode

        Returns:
        VATBreakdown
      • setVATExemptionReasonCode

        public VATBreakdown setVATExemptionReasonCode​(Codes.VATExemptionReasonCode value)
        Parameters:
        value - BT-121:VAT exemption reason code

        A coded statement of the reason for why the amount is exempted from VAT.

        Code list issued and maintained by the Connecting Europe Facility.

        XPath:/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:ExemptionReasonCode

        Returns:
        VATBreakdown
      • setValueAddedTaxPointDate

        public VATBreakdown setValueAddedTaxPointDate​(LocalDate value)
        Parameters:
        value - BT-7:Value added tax point date

        The date when the VAT becomes accountable for the Seller and for the Buyer in so far as that date can be determined and differs from the date of issue of the invoice, according to the VAT directive.

        The tax point is usually the date goods were supplied or services completed (the 'basic tax point'). There are some variations.Please refer to Article 226 (7) of the Council Directive 2006/112/EC [2] for more information.This element is required if the Value added tax point date is different from the Invoice issue date.Both Buyer and Seller should use the Tax Point Date when provided by the Seller. The use of BT-7 and BT-8 is mutually exclusive.

        This date shall not be present if the Value added tax point date is expressed in code in the "Value added tax point date code" (BT-8)

        BR-CO-3: Value added tax point date (BT-7) and Value added tax point date code (BT-8) are mutually exclusive.

        XPath:/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:TaxPointDate/udt:DateString

        Returns:
        VATBreakdown
      • setValueAddedTaxPointDateCode

        public VATBreakdown setValueAddedTaxPointDateCode​(Codes.DateTypeCode value)
        Parameters:
        value - BT-8:Value added tax point date code

        The code of the date when the VAT becomes accountable for the Seller and for the Buyer.

        The code shall distinguish between the following entries of UNTDID 2005 [6]:- Invoice document issue date- Delivery date, actual- Paid to dateThe Value added tax point date code is used if the Value added tax point date is not known when the invoice is issued. The use of BT-8 and BT-7 is mutually exclusive.

        This code can not be present if the Value added tax point date is provided directly in the "Value added tax point date" (BT-7). This code should be selected from the following values from UNTDID 2475 (instead of UNTDID 2005 [6]):5: Date of the invoice (VAT on DEBITS)29: Delivery date (VAT on DEBITS)72: Payment date (VAT on ENCAISSEMENTS)

        BR-CO-3: Value added tax point date (BT-7) and Value added tax point date code (BT-8) are mutually exclusive.

        XPath:/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:DueDateTypeCode

        Returns:
        VATBreakdown
      • setVATCategoryRate

        public VATBreakdown setVATCategoryRate​(Percentage value)
        Parameters:
        value - BT-119:VAT category rate

        The VAT rate, represented as percentage that applies for the relevant VAT category.

        The VAT category code and the VAT category rate shall be consistent.

        The value to enter is the percentage. For example, for 20%, it must be filled 20 (and not 0.2)

        BR-48: Each VAT breakdown (BG-23) shall have a VAT category rate (BT-119), except if the Invoice is not subject to VAT.

        XPath:/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:RateApplicablePercent

        Returns:
        VATBreakdown
      • getVATCategoryTaxAmount

        public Amount getVATCategoryTaxAmount()
                                       throws ComputationException
        BT-117:VAT category tax amount

        The total VAT amount for a given VAT category.

        Calculated by multiplying the VAT category taxable amount with the VAT category rate for the relevant VAT category.

        BR-46: Each VAT breakdown (BG-23) shall have a VAT category tax amount (BT-117).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.

        Returns:
        a computed value unless an explicit value has been set and Invoice.setRecompute(boolean) has been called with a value of false in which case the value /rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:CalculatedAmount is returned
        Throws:
        ComputationException
      • getVATTypeCode

        public Codes.VATTypeCode getVATTypeCode()
                                         throws ComputationException
        BT-118-0:VAT type code

        Value = VAT

        Fixed value "VAT"

        Returns:
        a computed value unless an explicit value has been set and Invoice.setRecompute(boolean) has been called with a value of false in which case the value /rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:TypeCode is returned
        Throws:
        ComputationException
      • getVATExemptionReasonText

        public String getVATExemptionReasonText()
        BT-120:VAT exemption reason text

        A textual statement of the reason why the amount is exempted from VAT or why no VAT is being charged

        Articles 226 items 11 to 15 Directive2006/112/EC [2].

        CHORUS PRO: this field is limited to 1024 characters

        Returns:
        the value /rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:ExemptionReason
      • getVATCategoryTaxableAmount

        public Amount getVATCategoryTaxableAmount()
                                           throws ComputationException
        BT-116:VAT category taxable amount

        Sum of all taxable amounts subject to a specific VAT category code and VAT category rate (if the VAT category rate is applicable).

        The sum of Invoice line net amount minus allowances plus charges on document level which are subject to a specific VAT category code and VAT category rate (if the VAT category rate is applicable).

        BR-45: Each VAT breakdown (BG-23) shall have a VAT category taxable amount (BT-116).

        Returns:
        a computed value unless an explicit value has been set and Invoice.setRecompute(boolean) has been called with a value of false in which case the value /rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:BasisAmount is returned
        Throws:
        ComputationException
      • getGoodsValueOfTheTaxRate

        public UnitPriceAmount getGoodsValueOfTheTaxRate()
        EXT:Goods value of the tax rate
        Returns:
        the value /rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:LineTotalBasisAmount
      • getAllowanceChargeBasisAmount

        public UnitPriceAmount getAllowanceChargeBasisAmount()
        EXT:Total amount of charges / allowances on document level
        Returns:
        the value /rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:AllowanceChargeBasisAmount
      • getVATCategoryCode

        public Codes.VATCategoryCode getVATCategoryCode()
        BT-118:VAT category code

        Coded identification of a VAT category.

        The following entries of UNTDID 5305 [6] are used (further clarification between brackets):- Standard rate (Liable for VAT in a standard way)- Zero rated goods (Liable for VAT with a percentage rate of zero)- Exempt from tax (VAT/IGIC/IPSI)- VAT Reverse Charge (Reverse charge VAT/IGIC/IPSI rules apply)- VAT exempt for intra community supply of goods (VAT/IGIC/IPSI not levied due to Intra-community supply rules)- Free export item, tax not charged (VAT/IGIC/IPSI not levied due to export outside of the EU)- Services outside scope of tax (Sale is not subject to VAT/IGIC/IPSI)- Canary Islands General Indirect Tax (Liable for IGIC tax)- Liable for IPSI (Ceuta/Melilla tax)

        The VAT category codes are as follows:S = Standard VAT rateZ = Zero rated goodsE = VAT exemptAE = Reverse chargeK = Intra-Community supply (specific reverse charge)G = Exempt VAT for Export outside EUO = Outside VAT scopeL = Canary IslandsM = Ceuta and Mellila

        BR-47: Each VAT breakdown (BG-23) shall be defined through a VAT category code (BT-118).

        Returns:
        the value /rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:CategoryCode
      • getVATExemptionReasonCode

        public Codes.VATExemptionReasonCode getVATExemptionReasonCode()
        BT-121:VAT exemption reason code

        A coded statement of the reason for why the amount is exempted from VAT.

        Code list issued and maintained by the Connecting Europe Facility.

        Returns:
        the value /rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:ExemptionReasonCode
      • getDateFormat

        public Codes.DateFormat getDateFormat()
                                       throws ComputationException
        BT-7-0:Date format

        Value = 102

        Only value "102"

        Returns:
        a computed value unless an explicit value has been set and Invoice.setRecompute(boolean) has been called with a value of false in which case the value /rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:TaxPointDate/udt:DateString/@format is returned
        Throws:
        ComputationException
      • getValueAddedTaxPointDate

        public LocalDate getValueAddedTaxPointDate()
        BT-7:Value added tax point date

        The date when the VAT becomes accountable for the Seller and for the Buyer in so far as that date can be determined and differs from the date of issue of the invoice, according to the VAT directive.

        The tax point is usually the date goods were supplied or services completed (the 'basic tax point'). There are some variations.Please refer to Article 226 (7) of the Council Directive 2006/112/EC [2] for more information.This element is required if the Value added tax point date is different from the Invoice issue date.Both Buyer and Seller should use the Tax Point Date when provided by the Seller. The use of BT-7 and BT-8 is mutually exclusive.

        This date shall not be present if the Value added tax point date is expressed in code in the "Value added tax point date code" (BT-8)

        BR-CO-3: Value added tax point date (BT-7) and Value added tax point date code (BT-8) are mutually exclusive.

        Returns:
        the value /rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:TaxPointDate/udt:DateString
      • getValueAddedTaxPointDateCode

        public Codes.DateTypeCode getValueAddedTaxPointDateCode()
        BT-8:Value added tax point date code

        The code of the date when the VAT becomes accountable for the Seller and for the Buyer.

        The code shall distinguish between the following entries of UNTDID 2005 [6]:- Invoice document issue date- Delivery date, actual- Paid to dateThe Value added tax point date code is used if the Value added tax point date is not known when the invoice is issued. The use of BT-8 and BT-7 is mutually exclusive.

        This code can not be present if the Value added tax point date is provided directly in the "Value added tax point date" (BT-7). This code should be selected from the following values from UNTDID 2475 (instead of UNTDID 2005 [6]):5: Date of the invoice (VAT on DEBITS)29: Delivery date (VAT on DEBITS)72: Payment date (VAT on ENCAISSEMENTS)

        BR-CO-3: Value added tax point date (BT-7) and Value added tax point date code (BT-8) are mutually exclusive.

        Returns:
        the value /rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:DueDateTypeCode
      • getVATCategoryRate

        public Percentage getVATCategoryRate()
        BT-119:VAT category rate

        The VAT rate, represented as percentage that applies for the relevant VAT category.

        The VAT category code and the VAT category rate shall be consistent.

        The value to enter is the percentage. For example, for 20%, it must be filled 20 (and not 0.2)

        BR-48: Each VAT breakdown (BG-23) shall have a VAT category rate (BT-119), except if the Invoice is not subject to VAT.

        Returns:
        the value /rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:RateApplicablePercent