zugferd_code_lists/zugferd_2_3_2/
vatcat.rs

1#![allow(non_camel_case_types)]
2
3#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4#[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Clone, Copy, Hash)]
5pub enum VATCAT {
6    /// Petroleum tax
7    ///
8    /// A tax levied on the volume of petroleum being transacted.
9    PetroleumTax,
10    /// Provisional countervailing duty cash
11    ///
12    /// Countervailing duty paid in cash prior to a formal finding of subsidization by Customs.
13    ProvisionalCountervailingDutyCash,
14    /// Provisional countervailing duty bond
15    ///
16    /// Countervailing duty paid by posting a bond during an investigation period prior to a formal decision on subsidization by Customs.
17    ProvisionalCountervailingDutyBond,
18    /// Tobacco tax
19    ///
20    /// A tax levied on tobacco products.
21    TobaccoTax,
22    /// Energy fee
23    ///
24    /// General fee or tax for the use of energy.
25    EnergyFee,
26    /// Coffee tax
27    ///
28    /// A tax levied specifically on coffee products.
29    CoffeeTax,
30    /// Harmonised sales tax, Canadian
31    ///
32    /// A harmonized sales tax consisting of a goods and service tax, a Canadian provincial sales tax and, as applicable, a Quebec sales tax which is recoverable.
33    HarmonisedSalesTaxCanadian,
34    /// Quebec sales tax
35    ///
36    /// A sales tax charged within the Canadian province of Quebec which is recoverable.
37    QuebecSalesTax,
38    /// Canadian provincial sales tax
39    ///
40    /// A sales tax charged within Canadian provinces which is non-recoverable.
41    CanadianProvincialSalesTax,
42    /// Tax on replacement part
43    ///
44    /// A tax levied on a replacement part, where the original part is returned.
45    TaxOnReplacementPart,
46    /// Mineral oil tax
47    ///
48    /// Tax that is levied specifically on products containing mineral oil.
49    MineralOilTax,
50    /// Special tax
51    ///
52    /// To indicate a special type of tax.
53    SpecialTax,
54    /// Insurance tax
55    ///
56    /// A tax levied specifically on insurances.
57    InsuranceTax,
58    /// Provincial Cannabis Tax
59    ///
60    /// A tax levied on Cannabis products
61    ProvincialCannabisTax,
62    /// Outstanding duty interest
63    ///
64    /// Fee levied due to outstanding duties to be paid
65    OutstandingDutyInterest,
66    /// Anti-dumping duty
67    ///
68    /// Duty applied to goods ruled to have been dumped in an import market at a price lower than that in the exporter's domestic market.
69    AntiDumpingDuty,
70    /// Stamp duty (Imposta di Bollo)
71    ///
72    /// Tax required in Italy, which may be fixed or graduated in various circumstances (e.g. VAT exempt documents or bank receipts).
73    StampDutyImpostaDiBollo,
74    /// Agricultural levy
75    ///
76    /// Levy imposed on agricultural products where there is a difference between the selling price between trading countries.
77    AgriculturalLevy,
78    /// Car tax
79    ///
80    /// A tax that is levied on the value of the automobile.
81    CarTax,
82    /// Paper consortium tax (Italy)
83    ///
84    /// Italian Paper consortium tax.
85    PaperConsortiumTaxItaly,
86    /// Commodity specific tax
87    ///
88    /// Tax related to a specified commodity, e.g. illuminants, salts.
89    CommoditySpecificTax,
90    /// Customs duty
91    ///
92    /// Duties laid down in the Customs tariff, to which goods are liable on entering or leaving the Customs territory (CCC).
93    CustomsDuty,
94    /// Countervailing duty
95    ///
96    /// A duty on imported goods applied for compensate for subsidies granted to those goods in the exporting country.
97    CountervailingDuty,
98    /// Environmental tax
99    ///
100    /// Tax assessed for funding or assuring environmental protection or clean-up.
101    EnvironmentalTax,
102    /// Excise duty
103    ///
104    /// Customs or fiscal authorities code to identify a specific or ad valorem levy on a specific commodity, applied either domestically or at time of importation.
105    ExciseDuty,
106    /// Agricultural export rebate
107    ///
108    /// Monetary rebate given to the seller in certain circumstances when agricultural products are exported.
109    AgriculturalExportRebate,
110    /// Federal excise tax
111    ///
112    /// Tax levied by the federal government on the manufacture of specific items.
113    FederalExciseTax,
114    /// Free
115    ///
116    /// No tax levied.
117    Free,
118    /// General construction tax
119    ///
120    /// General tax for construction.
121    GeneralConstructionTax,
122    /// Goods and services tax
123    ///
124    /// Tax levied on the final consumption of goods and services throughout the production and distribution chain.
125    GoodsAndServicesTax,
126    /// Illuminants tax
127    ///
128    /// Tax of illuminants.
129    IlluminantsTax,
130    /// Import tax
131    ///
132    /// Tax assessed on imports.
133    ImportTax,
134    /// Individual tax
135    ///
136    /// A tax levied based on an individual's ability to pay.
137    IndividualTax,
138    /// Business license fee
139    ///
140    /// Government assessed charge for permit to do business.
141    BusinessLicenseFee,
142    /// Local construction tax
143    ///
144    /// Local tax for construction.
145    LocalConstructionTax,
146    /// Light dues payable
147    ///
148    /// Fee levied on a vessel to pay for port navigation lights.
149    LightDuesPayable,
150    /// Local sales tax
151    ///
152    /// Assessment charges on sale of goods or services by city, borough country or other taxing authorities below state or provincial level.
153    LocalSalesTax,
154    /// Lust tax
155    ///
156    /// Tax imposed for clean-up of leaky underground storage tanks.
157    LustTax,
158    /// Monetary compensatory amount
159    ///
160    /// Levy on Common Agricultural Policy (European Union) goods used to compensate for fluctuating currencies between member states.
161    MonetaryCompensatoryAmount,
162    /// Miscellaneous cash deposit
163    ///
164    /// Duty paid and held on deposit, by Customs, during an investigation period prior to a final decision being made on any aspect related to imported goods (except valuation) by Customs.
165    MiscellaneousCashDeposit,
166    /// Other taxes
167    ///
168    /// Unspecified, miscellaneous tax charges.
169    OtherTaxes,
170    /// Provisional duty bond
171    ///
172    /// Anti-dumping duty paid by posting a bond during an investigation period prior to a formal decision on dumping by Customs.
173    ProvisionalDutyBond,
174    /// Provisional duty cash
175    ///
176    /// Anti-dumping duty paid in cash prior to a formal finding of dumping by Customs.
177    ProvisionalDutyCash,
178    /// Preference duty
179    ///
180    /// Duties laid down in the Customs tariff, to which goods are liable on entering or leaving the Customs territory falling under a preferential regime such as Generalised System of Preferences (GSP).
181    PreferenceDuty,
182    /// Special construction tax
183    ///
184    /// Special tax for construction.
185    SpecialConstructionTax,
186    /// Shifted social securities
187    ///
188    /// Social securities share of the invoice amount to be paid directly to the social securities collector.
189    ShiftedSocialSecurities,
190    /// State/provincial sales tax
191    ///
192    /// All applicable sale taxes by authorities at the state or provincial level, below national level.
193    StateProvincialSalesTax,
194    /// Suspended duty
195    ///
196    /// Duty suspended or deferred from payment.
197    SuspendedDuty,
198    /// Surtax
199    ///
200    /// A tax or duty applied on and in addition to existing duties and taxes.
201    Surtax,
202    /// Shifted wage tax
203    ///
204    /// Wage tax share of the invoice amount to be paid directly to the tax collector(s office).
205    ShiftedWageTax,
206    /// Alcohol mark tax
207    ///
208    /// A tax levied based on the type of alcohol being obtained.
209    AlcoholMarkTax,
210    /// Total
211    ///
212    /// The summary amount of all taxes.
213    Total,
214    /// Turnover tax
215    ///
216    /// Tax levied on the total sales/turnover of a corporation.
217    TurnoverTax,
218    /// Tonnage taxes
219    ///
220    /// Tax levied based on the vessel's net tonnage.
221    TonnageTaxes,
222    /// Valuation deposit
223    ///
224    /// Duty paid and held on deposit, by Customs, during an investigation period prior to a formal decision on valuation of the goods being made.
225    ValuationDeposit,
226    /// Value added tax
227    ///
228    /// A tax on domestic or imported goods applied to the value added at each stage in the production/distribution cycle.
229    ValueAddedTax,
230}
231
232impl crate::Code for VATCAT {
233    fn code(self) -> &'static str {
234        match self {
235            VATCAT::PetroleumTax => "AAA",
236            VATCAT::ProvisionalCountervailingDutyCash => "AAB",
237            VATCAT::ProvisionalCountervailingDutyBond => "AAC",
238            VATCAT::TobaccoTax => "AAD",
239            VATCAT::EnergyFee => "AAE",
240            VATCAT::CoffeeTax => "AAF",
241            VATCAT::HarmonisedSalesTaxCanadian => "AAG",
242            VATCAT::QuebecSalesTax => "AAH",
243            VATCAT::CanadianProvincialSalesTax => "AAI",
244            VATCAT::TaxOnReplacementPart => "AAJ",
245            VATCAT::MineralOilTax => "AAK",
246            VATCAT::SpecialTax => "AAL",
247            VATCAT::InsuranceTax => "AAM",
248            VATCAT::ProvincialCannabisTax => "AAO",
249            VATCAT::OutstandingDutyInterest => "AAP",
250            VATCAT::AntiDumpingDuty => "ADD",
251            VATCAT::StampDutyImpostaDiBollo => "BOL",
252            VATCAT::AgriculturalLevy => "CAP",
253            VATCAT::CarTax => "CAR",
254            VATCAT::PaperConsortiumTaxItaly => "COC",
255            VATCAT::CommoditySpecificTax => "CST",
256            VATCAT::CustomsDuty => "CUD",
257            VATCAT::CountervailingDuty => "CVD",
258            VATCAT::EnvironmentalTax => "ENV",
259            VATCAT::ExciseDuty => "EXC",
260            VATCAT::AgriculturalExportRebate => "EXP",
261            VATCAT::FederalExciseTax => "FET",
262            VATCAT::Free => "FRE",
263            VATCAT::GeneralConstructionTax => "GCN",
264            VATCAT::GoodsAndServicesTax => "GST",
265            VATCAT::IlluminantsTax => "ILL",
266            VATCAT::ImportTax => "IMP",
267            VATCAT::IndividualTax => "IND",
268            VATCAT::BusinessLicenseFee => "LAC",
269            VATCAT::LocalConstructionTax => "LCN",
270            VATCAT::LightDuesPayable => "LDP",
271            VATCAT::LocalSalesTax => "LOC",
272            VATCAT::LustTax => "LST",
273            VATCAT::MonetaryCompensatoryAmount => "MCA",
274            VATCAT::MiscellaneousCashDeposit => "MCD",
275            VATCAT::OtherTaxes => "OTH",
276            VATCAT::ProvisionalDutyBond => "PDB",
277            VATCAT::ProvisionalDutyCash => "PDC",
278            VATCAT::PreferenceDuty => "PRF",
279            VATCAT::SpecialConstructionTax => "SCN",
280            VATCAT::ShiftedSocialSecurities => "SSS",
281            VATCAT::StateProvincialSalesTax => "STT",
282            VATCAT::SuspendedDuty => "SUP",
283            VATCAT::Surtax => "SUR",
284            VATCAT::ShiftedWageTax => "SWT",
285            VATCAT::AlcoholMarkTax => "TAC",
286            VATCAT::Total => "TOT",
287            VATCAT::TurnoverTax => "TOX",
288            VATCAT::TonnageTaxes => "TTA",
289            VATCAT::ValuationDeposit => "VAD",
290            VATCAT::ValueAddedTax => "VAT",
291        }
292    }
293}
294
295impl crate::Description for VATCAT {
296    fn description(self) -> &'static str {
297        match self {
298            VATCAT::PetroleumTax => "Petroleum tax",
299            VATCAT::ProvisionalCountervailingDutyCash => "Provisional countervailing duty cash",
300            VATCAT::ProvisionalCountervailingDutyBond => "Provisional countervailing duty bond",
301            VATCAT::TobaccoTax => "Tobacco tax",
302            VATCAT::EnergyFee => "Energy fee",
303            VATCAT::CoffeeTax => "Coffee tax",
304            VATCAT::HarmonisedSalesTaxCanadian => "Harmonised sales tax, Canadian",
305            VATCAT::QuebecSalesTax => "Quebec sales tax",
306            VATCAT::CanadianProvincialSalesTax => "Canadian provincial sales tax",
307            VATCAT::TaxOnReplacementPart => "Tax on replacement part",
308            VATCAT::MineralOilTax => "Mineral oil tax",
309            VATCAT::SpecialTax => "Special tax",
310            VATCAT::InsuranceTax => "Insurance tax",
311            VATCAT::ProvincialCannabisTax => "Provincial Cannabis Tax",
312            VATCAT::OutstandingDutyInterest => "Outstanding duty interest",
313            VATCAT::AntiDumpingDuty => "Anti-dumping duty",
314            VATCAT::StampDutyImpostaDiBollo => "Stamp duty (Imposta di Bollo)",
315            VATCAT::AgriculturalLevy => "Agricultural levy",
316            VATCAT::CarTax => "Car tax",
317            VATCAT::PaperConsortiumTaxItaly => "Paper consortium tax (Italy)",
318            VATCAT::CommoditySpecificTax => "Commodity specific tax",
319            VATCAT::CustomsDuty => "Customs duty",
320            VATCAT::CountervailingDuty => "Countervailing duty",
321            VATCAT::EnvironmentalTax => "Environmental tax",
322            VATCAT::ExciseDuty => "Excise duty",
323            VATCAT::AgriculturalExportRebate => "Agricultural export rebate",
324            VATCAT::FederalExciseTax => "Federal excise tax",
325            VATCAT::Free => "Free",
326            VATCAT::GeneralConstructionTax => "General construction tax",
327            VATCAT::GoodsAndServicesTax => "Goods and services tax",
328            VATCAT::IlluminantsTax => "Illuminants tax",
329            VATCAT::ImportTax => "Import tax",
330            VATCAT::IndividualTax => "Individual tax",
331            VATCAT::BusinessLicenseFee => "Business license fee",
332            VATCAT::LocalConstructionTax => "Local construction tax",
333            VATCAT::LightDuesPayable => "Light dues payable",
334            VATCAT::LocalSalesTax => "Local sales tax",
335            VATCAT::LustTax => "Lust tax",
336            VATCAT::MonetaryCompensatoryAmount => "Monetary compensatory amount",
337            VATCAT::MiscellaneousCashDeposit => "Miscellaneous cash deposit",
338            VATCAT::OtherTaxes => "Other taxes",
339            VATCAT::ProvisionalDutyBond => "Provisional duty bond",
340            VATCAT::ProvisionalDutyCash => "Provisional duty cash",
341            VATCAT::PreferenceDuty => "Preference duty",
342            VATCAT::SpecialConstructionTax => "Special construction tax",
343            VATCAT::ShiftedSocialSecurities => "Shifted social securities",
344            VATCAT::StateProvincialSalesTax => "State/provincial sales tax",
345            VATCAT::SuspendedDuty => "Suspended duty",
346            VATCAT::Surtax => "Surtax",
347            VATCAT::ShiftedWageTax => "Shifted wage tax",
348            VATCAT::AlcoholMarkTax => "Alcohol mark tax",
349            VATCAT::Total => "Total",
350            VATCAT::TurnoverTax => "Turnover tax",
351            VATCAT::TonnageTaxes => "Tonnage taxes",
352            VATCAT::ValuationDeposit => "Valuation deposit",
353            VATCAT::ValueAddedTax => "Value added tax",
354        }
355    }
356}
357
358impl crate::FromCode for VATCAT {
359    fn from_code(code: &str) -> Option<Self>
360    where
361        Self: Sized,
362    {
363        match code {
364            "AAA" => Some(VATCAT::PetroleumTax),
365            "AAB" => Some(VATCAT::ProvisionalCountervailingDutyCash),
366            "AAC" => Some(VATCAT::ProvisionalCountervailingDutyBond),
367            "AAD" => Some(VATCAT::TobaccoTax),
368            "AAE" => Some(VATCAT::EnergyFee),
369            "AAF" => Some(VATCAT::CoffeeTax),
370            "AAG" => Some(VATCAT::HarmonisedSalesTaxCanadian),
371            "AAH" => Some(VATCAT::QuebecSalesTax),
372            "AAI" => Some(VATCAT::CanadianProvincialSalesTax),
373            "AAJ" => Some(VATCAT::TaxOnReplacementPart),
374            "AAK" => Some(VATCAT::MineralOilTax),
375            "AAL" => Some(VATCAT::SpecialTax),
376            "AAM" => Some(VATCAT::InsuranceTax),
377            "AAO" => Some(VATCAT::ProvincialCannabisTax),
378            "AAP" => Some(VATCAT::OutstandingDutyInterest),
379            "ADD" => Some(VATCAT::AntiDumpingDuty),
380            "BOL" => Some(VATCAT::StampDutyImpostaDiBollo),
381            "CAP" => Some(VATCAT::AgriculturalLevy),
382            "CAR" => Some(VATCAT::CarTax),
383            "COC" => Some(VATCAT::PaperConsortiumTaxItaly),
384            "CST" => Some(VATCAT::CommoditySpecificTax),
385            "CUD" => Some(VATCAT::CustomsDuty),
386            "CVD" => Some(VATCAT::CountervailingDuty),
387            "ENV" => Some(VATCAT::EnvironmentalTax),
388            "EXC" => Some(VATCAT::ExciseDuty),
389            "EXP" => Some(VATCAT::AgriculturalExportRebate),
390            "FET" => Some(VATCAT::FederalExciseTax),
391            "FRE" => Some(VATCAT::Free),
392            "GCN" => Some(VATCAT::GeneralConstructionTax),
393            "GST" => Some(VATCAT::GoodsAndServicesTax),
394            "ILL" => Some(VATCAT::IlluminantsTax),
395            "IMP" => Some(VATCAT::ImportTax),
396            "IND" => Some(VATCAT::IndividualTax),
397            "LAC" => Some(VATCAT::BusinessLicenseFee),
398            "LCN" => Some(VATCAT::LocalConstructionTax),
399            "LDP" => Some(VATCAT::LightDuesPayable),
400            "LOC" => Some(VATCAT::LocalSalesTax),
401            "LST" => Some(VATCAT::LustTax),
402            "MCA" => Some(VATCAT::MonetaryCompensatoryAmount),
403            "MCD" => Some(VATCAT::MiscellaneousCashDeposit),
404            "OTH" => Some(VATCAT::OtherTaxes),
405            "PDB" => Some(VATCAT::ProvisionalDutyBond),
406            "PDC" => Some(VATCAT::ProvisionalDutyCash),
407            "PRF" => Some(VATCAT::PreferenceDuty),
408            "SCN" => Some(VATCAT::SpecialConstructionTax),
409            "SSS" => Some(VATCAT::ShiftedSocialSecurities),
410            "STT" => Some(VATCAT::StateProvincialSalesTax),
411            "SUP" => Some(VATCAT::SuspendedDuty),
412            "SUR" => Some(VATCAT::Surtax),
413            "SWT" => Some(VATCAT::ShiftedWageTax),
414            "TAC" => Some(VATCAT::AlcoholMarkTax),
415            "TOT" => Some(VATCAT::Total),
416            "TOX" => Some(VATCAT::TurnoverTax),
417            "TTA" => Some(VATCAT::TonnageTaxes),
418            "VAD" => Some(VATCAT::ValuationDeposit),
419            "VAT" => Some(VATCAT::ValueAddedTax),
420            _ => None,
421        }
422    }
423}