Class VATBreakdown
- java.lang.Object
-
- com.fourjs.report.facturx.profiles.basic.VATBreakdown
-
public class VATBreakdown extends Object
BG-23:VAT BREAKDOWNA 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 Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Codes.DateTypeCode
getValueAddedTaxPointDateCode()
BT-8:Value added tax point date codeCodes.VATCategoryCode
getVATCategoryCode()
BT-118:VAT category codePercentage
getVATCategoryRate()
BT-119:VAT category rateAmount
getVATCategoryTaxableAmount()
BT-116:VAT category taxable amountAmount
getVATCategoryTaxAmount()
BT-117:VAT category tax amountCodes.VATExemptionReasonCode
getVATExemptionReasonCode()
BT-121:VAT exemption reason codeString
getVATExemptionReasonText()
BT-120:VAT exemption reason textCodes.VATTypeCode
getVATTypeCode()
BT-118-0:VAT type codeVATBreakdown
setValueAddedTaxPointDateCode(Codes.DateTypeCode value)
VATBreakdown
setVATCategoryCode(Codes.VATCategoryCode value)
VATBreakdown
setVATCategoryRate(Percentage value)
VATBreakdown
setVATExemptionReasonCode(Codes.VATExemptionReasonCode value)
VATBreakdown
setVATExemptionReasonText(String value)
-
-
-
Method Detail
-
setVATExemptionReasonText
public VATBreakdown setVATExemptionReasonText(String value)
- Parameters:
value
- BT-120:VAT exemption reason textA 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
-
setVATCategoryCode
public VATBreakdown setVATCategoryCode(Codes.VATCategoryCode value)
- Parameters:
value
- BT-118:VAT category codeCoded 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 codeA 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
-
setValueAddedTaxPointDateCode
public VATBreakdown setValueAddedTaxPointDateCode(Codes.DateTypeCode value)
- Parameters:
value
- BT-8:Value added tax point date codeThe 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 rateThe 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 amountThe 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 codeValue = 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 textA 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 amountSum 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
-
getVATCategoryCode
public Codes.VATCategoryCode getVATCategoryCode()
BT-118:VAT category codeCoded 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 codeA 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
-
getValueAddedTaxPointDateCode
public Codes.DateTypeCode getValueAddedTaxPointDateCode()
BT-8:Value added tax point date codeThe 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 rateThe 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
-
-