zugferd_code_lists/zugferd_2_3_2/
vatcat.rs

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