zugferd_code_lists/zugferd_2_3_3/
vatex.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 VATEX {
7    /// Exempt based on article 79, point c of Council Directive 2006/112/EC
8    ///
9    /// Repayment of expenditure is not an exemption in the sense of the VAT Directive but may be handled as such in the context of the EN16931.
10    ExemptBasedOnArticle79PointCCouncilDirective2006112Ec,
11    /// Exempt based on article 132 of Council Directive 2006/112/EC
12    ExemptBasedOnArticle132CouncilDirective2006112Ec,
13    /// Exempt based on article 132, section 1 (a) of Council Directive 2006/112/EC
14    ExemptBasedOnArticle132Section1ACouncilDirective2006112Ec,
15    /// Exempt based on article 132, section 1 (b) of Council Directive 2006/112/EC
16    ExemptBasedOnArticle132Section1BCouncilDirective2006112Ec,
17    /// Exempt based on article 132, section 1 (c) of Council Directive 2006/112/EC
18    ExemptBasedOnArticle132Section1CCouncilDirective2006112Ec,
19    /// Exempt based on article 132, section 1 (d) of Council Directive 2006/112/EC
20    ExemptBasedOnArticle132Section1DCouncilDirective2006112Ec,
21    /// Exempt based on article 132, section 1 (e) of Council Directive 2006/112/EC
22    ExemptBasedOnArticle132Section1ECouncilDirective2006112Ec,
23    /// Exempt based on article 132, section 1 (f) of Council Directive 2006/112/EC
24    ExemptBasedOnArticle132Section1FCouncilDirective2006112Ec,
25    /// Exempt based on article 132, section 1 (g) of Council Directive 2006/112/EC
26    ExemptBasedOnArticle132Section1GCouncilDirective2006112Ec,
27    /// Exempt based on article 132, section 1 (h) of Council Directive 2006/112/EC
28    ExemptBasedOnArticle132Section1HCouncilDirective2006112Ec,
29    /// Exempt based on article 132, section 1 (i) of Council Directive 2006/112/EC
30    ExemptBasedOnArticle132Section1ICouncilDirective2006112Ec,
31    /// Exempt based on article 132, section 1 (j) of Council Directive 2006/112/EC
32    ExemptBasedOnArticle132Section1JCouncilDirective2006112Ec,
33    /// Exempt based on article 132, section 1 (k) of Council Directive 2006/112/EC
34    ExemptBasedOnArticle132Section1KCouncilDirective2006112Ec,
35    /// Exempt based on article 132, section 1 (l) of Council Directive 2006/112/EC
36    ExemptBasedOnArticle132Section1LCouncilDirective2006112Ec,
37    /// Exempt based on article 132, section 1 (m) of Council Directive 2006/112/EC
38    ExemptBasedOnArticle132Section1MCouncilDirective2006112Ec,
39    /// Exempt based on article 132, section 1 (n) of Council Directive 2006/112/EC
40    ExemptBasedOnArticle132Section1NCouncilDirective2006112Ec,
41    /// Exempt based on article 132, section 1 (o) of Council Directive 2006/112/EC
42    ExemptBasedOnArticle132Section1OCouncilDirective2006112Ec,
43    /// Exempt based on article 132, section 1 (p) of Council Directive 2006/112/EC
44    ExemptBasedOnArticle132Section1PCouncilDirective2006112Ec,
45    /// Exempt based on article 132, section 1 (q) of Council Directive 2006/112/EC
46    ExemptBasedOnArticle132Section1QCouncilDirective2006112Ec,
47    /// Exempt based on article 143 of Council Directive 2006/112/EC
48    ExemptBasedOnArticle143CouncilDirective2006112Ec,
49    /// Exempt based on article 143, section 1 (a) of Council Directive 2006/112/EC
50    ExemptBasedOnArticle143Section1ACouncilDirective2006112Ec,
51    /// Exempt based on article 143, section 1 (b) of Council Directive 2006/112/EC
52    ExemptBasedOnArticle143Section1BCouncilDirective2006112Ec,
53    /// Exempt based on article 143, section 1 (c) of Council Directive 2006/112/EC
54    ExemptBasedOnArticle143Section1CCouncilDirective2006112Ec,
55    /// Exempt based on article 143, section 1 (d) of Council Directive 2006/112/EC
56    ExemptBasedOnArticle143Section1DCouncilDirective2006112Ec,
57    /// Exempt based on article 143, section 1 (e) of Council Directive 2006/112/EC
58    ExemptBasedOnArticle143Section1ECouncilDirective2006112Ec,
59    /// Exempt based on article 143, section 1 (f) of Council Directive 2006/112/EC
60    ExemptBasedOnArticle143Section1FCouncilDirective2006112Ec,
61    /// Exempt based on article 143, section 1 (fa) of Council Directive 2006/112/EC
62    ExemptBasedOnArticle143Section1FaCouncilDirective2006112Ec,
63    /// Exempt based on article 143, section 1 (g) of Council Directive 2006/112/EC
64    ExemptBasedOnArticle143Section1GCouncilDirective2006112Ec,
65    /// Exempt based on article 143, section 1 (h) of Council Directive 2006/112/EC
66    ExemptBasedOnArticle143Section1HCouncilDirective2006112Ec,
67    /// Exempt based on article 143, section 1 (i) of Council Directive 2006/112/EC
68    ExemptBasedOnArticle143Section1ICouncilDirective2006112Ec,
69    /// Exempt based on article 143, section 1 (j) of Council Directive 2006/112/EC
70    ExemptBasedOnArticle143Section1JCouncilDirective2006112Ec,
71    /// Exempt based on article 143, section 1 (k) of Council Directive 2006/112/EC
72    ExemptBasedOnArticle143Section1KCouncilDirective2006112Ec,
73    /// Exempt based on article 143, section 1 (l) of Council Directive 2006/112/EC
74    ExemptBasedOnArticle143Section1LCouncilDirective2006112Ec,
75    /// Exempt based on article 144 of Council Directive 2006/112/EC
76    ExemptBasedOnArticle144CouncilDirective2006112Ec,
77    /// Exempt based on article 146 section 1 (e) of Council Directive 2006/112/EC
78    ExemptBasedOnArticle146Section1ECouncilDirective2006112Ec,
79    /// Exempt based on article 148 of Council Directive 2006/112/EC
80    ExemptBasedOnArticle148CouncilDirective2006112Ec,
81    /// Exempt based on article 148, section (a) of Council Directive 2006/112/EC
82    ExemptBasedOnArticle148SectionACouncilDirective2006112Ec,
83    /// Exempt based on article 148, section (b) of Council Directive 2006/112/EC
84    ExemptBasedOnArticle148SectionBCouncilDirective2006112Ec,
85    /// Exempt based on article 148, section (c) of Council Directive 2006/112/EC
86    ExemptBasedOnArticle148SectionCCouncilDirective2006112Ec,
87    /// Exempt based on article 148, section (d) of Council Directive 2006/112/EC
88    ExemptBasedOnArticle148SectionDCouncilDirective2006112Ec,
89    /// Exempt based on article 148, section (e) of Council Directive 2006/112/EC
90    ExemptBasedOnArticle148SectionECouncilDirective2006112Ec,
91    /// Exempt based on article 148, section (f) of Council Directive 2006/112/EC
92    ExemptBasedOnArticle148SectionFCouncilDirective2006112Ec,
93    /// Exempt based on article 148, section (g) of Council Directive 2006/112/EC
94    ExemptBasedOnArticle148SectionGCouncilDirective2006112Ec,
95    /// Exempt based on article 151 of Council Directive 2006/112/EC
96    ExemptBasedOnArticle151CouncilDirective2006112Ec,
97    /// Exempt based on article 151, section 1 (a) of Council Directive 2006/112/EC
98    ExemptBasedOnArticle151Section1ACouncilDirective2006112Ec,
99    /// Exempt based on article 151, section 1 (aa) of Council Directive 2006/112/EC
100    ExemptBasedOnArticle151Section1AaCouncilDirective2006112Ec,
101    /// Exempt based on article 151, section 1 (b) of Council Directive 2006/112/EC
102    ExemptBasedOnArticle151Section1BCouncilDirective2006112Ec,
103    /// Exempt based on article 151, section 1 (c) of Council Directive 2006/112/EC
104    ExemptBasedOnArticle151Section1CCouncilDirective2006112Ec,
105    /// Exempt based on article 151, section 1 (d) of Council Directive 2006/112/EC
106    ExemptBasedOnArticle151Section1DCouncilDirective2006112Ec,
107    /// Exempt based on article 151, section 1 (e) of Council Directive 2006/112/EC
108    ExemptBasedOnArticle151Section1ECouncilDirective2006112Ec,
109    /// Exempt based on article 153 of Council Directive 2006/112/EC
110    ExemptBasedOnArticle153CouncilDirective2006112Ec,
111    /// Exempt based on article 159 of Council Directive 2006/112/EC
112    ExemptBasedOnArticle159CouncilDirective2006112Ec,
113    /// Exempt based on article 309 of Council Directive 2006/112/EC
114    ExemptBasedOnArticle309CouncilDirective2006112Ec,
115    /// Reverse charge
116    ///
117    /// Only use with VAT category code AE
118    ReverseCharge,
119    /// Travel agents VAT scheme.
120    ///
121    /// Only use with VAT category code E
122    TravelAgentsVatScheme,
123    /// Second hand goods VAT scheme.
124    ///
125    /// Only use with VAT category code E
126    SecondHandGoodsVatScheme,
127    /// Export outside the EU
128    ///
129    /// Only use with VAT category code G
130    ExportOutsideEu,
131    /// Works of art VAT scheme.
132    ///
133    /// Only use with VAT category code E
134    WorksArtVatScheme,
135    /// Intra-community supply
136    ///
137    /// Only use with VAT category code K
138    IntraCommunitySupply,
139    /// Collectors items and antiques VAT scheme.
140    ///
141    /// Only use with VAT category code E
142    CollectorsItemsAndAntiquesVatScheme,
143    /// Not subject to VAT
144    ///
145    /// Only use with VAT category code O
146    NotSubjectToVat,
147    /// France domestic VAT franchise in base
148    ///
149    /// For domestic invoicing in France
150    FranceDomesticVatFranchiseInBase,
151    /// France domestic Credit Notes without VAT, due to supplier forfeit of VAT for discount
152    ///
153    /// For domestic Credit Notes only in France
154    FranceDomesticCreditNotesWithoutVatDueToSupplierForfeitVatForDiscount,
155    /// Exempt based on 1 of article 261 of the Code Général des Impôts (CGI ; General tax code)
156    ///
157    /// Only for domestic invoicing in France
158    ExemptBasedOn1Article261CodeGénéralDesImpôtsCgiGeneralTaxCode,
159    /// Exempt based on 2 of article 261 of the Code Général des Impôts (CGI ; General tax code)
160    ///
161    /// Only for domestic invoicing in France
162    ExemptBasedOn2Article261CodeGénéralDesImpôtsCgiGeneralTaxCode,
163    /// Exempt based on 3 of article 261 of the Code Général des Impôts (CGI ; General tax code)
164    ///
165    /// Only for domestic invoicing in France
166    ExemptBasedOn3Article261CodeGénéralDesImpôtsCgiGeneralTaxCode,
167    /// Exempt based on 4 of article 261 of the Code Général des Impôts (CGI ; General tax code)
168    ///
169    /// Only for domestic invoicing in France
170    ExemptBasedOn4Article261CodeGénéralDesImpôtsCgiGeneralTaxCode,
171    /// Exempt based on 5 of article 261 of the Code Général des Impôts (CGI ; General tax code)
172    ///
173    /// Only for domestic invoicing in France
174    ExemptBasedOn5Article261CodeGénéralDesImpôtsCgiGeneralTaxCode,
175    /// Exempt based on 7 of article 261 of the Code Général des Impôts (CGI ; General tax code)
176    ///
177    /// Only for domestic invoicing in France
178    ExemptBasedOn7Article261CodeGénéralDesImpôtsCgiGeneralTaxCode,
179    /// Exempt based on 8 of article 261 of the Code Général des Impôts (CGI ; General tax code)
180    ///
181    /// Only for domestic invoicing in France
182    ExemptBasedOn8Article261CodeGénéralDesImpôtsCgiGeneralTaxCode,
183    /// Exempt based on article 261 A of the Code Général des Impôts (CGI ; General tax code)
184    ///
185    /// Only for domestic invoicing in France
186    ExemptBasedOnArticle261ACodeGénéralDesImpôtsCgiGeneralTaxCode,
187    /// Exempt based on article 261 B of the Code Général des Impôts (CGI ; General tax code)
188    ///
189    /// Only for domestic invoicing in France
190    ExemptBasedOnArticle261BCodeGénéralDesImpôtsCgiGeneralTaxCode,
191    /// Exempt based on 1° of article 261 C of the Code Général des Impôts (CGI ; General tax code)
192    ///
193    /// Only for domestic invoicing in France
194    ExemptBasedOn1Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode,
195    /// Exempt based on 2° of article 261 C of the Code Général des Impôts (CGI ; General tax code)
196    ///
197    /// Only for domestic invoicing in France
198    ExemptBasedOn2Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode,
199    /// Exempt based on 3° of article 261 C of the Code Général des Impôts (CGI ; General tax code)
200    ///
201    /// Only for domestic invoicing in France
202    ExemptBasedOn3Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode,
203    /// Exempt based on 1° of article 261 D of the Code Général des Impôts (CGI ; General tax code)
204    ///
205    /// Only for domestic invoicing in France
206    ExemptBasedOn1Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode,
207    /// Exempt based on 1°bis of article 261 D of the Code Général des Impôts (CGI ; General tax code)
208    ///
209    /// Only for domestic invoicing in France
210    ExemptBasedOn1BisArticle261DCodeGénéralDesImpôtsCgiGeneralTaxCode,
211    /// Exempt based on 2° of article 261 D of the Code Général des Impôts (CGI ; General tax code)
212    ///
213    /// Only for domestic invoicing in France
214    ExemptBasedOn2Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode,
215    /// Exempt based on 3° of article 261 D of the Code Général des Impôts (CGI ; General tax code) Exonération de TVA - Article 261 D-3° du Code Général des Impôts
216    ///
217    /// Only for domestic invoicing in France
218    ExemptBasedOn3Article261DCodeGénéralDesImpôtsCgiGeneralTaxCodeExonérationDeTvaArticle261D3DuCodeGénéralDesImpôts,
219    /// Exempt based on 4° of article 261 D of the Code Général des Impôts (CGI ; General tax code)
220    ///
221    /// Only for domestic invoicing in France
222    ExemptBasedOn4Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode,
223    /// Exempt based on 1° of article 261 E of the Code Général des Impôts (CGI ; General tax code)
224    ///
225    /// Only for domestic invoicing in France
226    ExemptBasedOn1Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode,
227    /// Exempt based on 2° of article 261 E of the Code Général des Impôts (CGI ; General tax code)
228    ///
229    /// Only for domestic invoicing in France
230    ExemptBasedOn2Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode,
231    /// Exempt based on article 277 A of the Code Général des Impôts (CGI ; General tax code)
232    ///
233    /// Only for domestic invoicing in France
234    ExemptBasedOnArticle277ACodeGénéralDesImpôtsCgiGeneralTaxCode,
235    /// Exempt based on article 275 of the Code Général des Impôts (CGI ; General tax code)
236    ///
237    /// Only for domestic invoicing in France
238    ExemptBasedOnArticle275CodeGénéralDesImpôtsCgiGeneralTaxCode,
239    /// Exempt based on article 298 sexdecies A of the Code Général des Impôts (CGI ; General tax code)
240    ///
241    /// Only for domestic invoicing in France
242    ExemptBasedOnArticle298SexdeciesACodeGénéralDesImpôtsCgiGeneralTaxCode,
243    /// Exempt based on article 295 of the Code Général des Impôts (CGI ; General tax code)
244    ///
245    /// Only for domestic invoicing in France
246    ExemptBasedOnArticle295CodeGénéralDesImpôtsCgiGeneralTaxCode,
247    /// Exempt based on 2 of article 283 of the Code Général des Impôts (CGI ; General tax code)
248    ///
249    /// Only for domestic invoicing in France
250    ExemptBasedOn2Article283CodeGénéralDesImpôtsCgiGeneralTaxCode,
251}
252
253impl std::fmt::Display for VATEX {
254    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
255        write!(f, "{}", <Self as crate::Code>::code(*self))
256    }
257}
258
259impl std::str::FromStr for VATEX {
260    type Err = ();
261    fn from_str(s: &str) -> Result<Self, Self::Err> {
262        <Self as crate::FromCode>::from_code(s).ok_or(())
263    }
264}
265
266impl crate::Code for VATEX {
267    fn code(self) -> &'static str {
268        match self {
269            VATEX::ExemptBasedOnArticle79PointCCouncilDirective2006112Ec => "VATEX-EU-79-C",
270            VATEX::ExemptBasedOnArticle132CouncilDirective2006112Ec => "VATEX-EU-132",
271            VATEX::ExemptBasedOnArticle132Section1ACouncilDirective2006112Ec => "VATEX-EU-132-1A",
272            VATEX::ExemptBasedOnArticle132Section1BCouncilDirective2006112Ec => "VATEX-EU-132-1B",
273            VATEX::ExemptBasedOnArticle132Section1CCouncilDirective2006112Ec => "VATEX-EU-132-1C",
274            VATEX::ExemptBasedOnArticle132Section1DCouncilDirective2006112Ec => "VATEX-EU-132-1D",
275            VATEX::ExemptBasedOnArticle132Section1ECouncilDirective2006112Ec => "VATEX-EU-132-1E",
276            VATEX::ExemptBasedOnArticle132Section1FCouncilDirective2006112Ec => "VATEX-EU-132-1F",
277            VATEX::ExemptBasedOnArticle132Section1GCouncilDirective2006112Ec => "VATEX-EU-132-1G",
278            VATEX::ExemptBasedOnArticle132Section1HCouncilDirective2006112Ec => "VATEX-EU-132-1H",
279            VATEX::ExemptBasedOnArticle132Section1ICouncilDirective2006112Ec => "VATEX-EU-132-1I",
280            VATEX::ExemptBasedOnArticle132Section1JCouncilDirective2006112Ec => "VATEX-EU-132-1J",
281            VATEX::ExemptBasedOnArticle132Section1KCouncilDirective2006112Ec => "VATEX-EU-132-1K",
282            VATEX::ExemptBasedOnArticle132Section1LCouncilDirective2006112Ec => "VATEX-EU-132-1L",
283            VATEX::ExemptBasedOnArticle132Section1MCouncilDirective2006112Ec => "VATEX-EU-132-1M",
284            VATEX::ExemptBasedOnArticle132Section1NCouncilDirective2006112Ec => "VATEX-EU-132-1N",
285            VATEX::ExemptBasedOnArticle132Section1OCouncilDirective2006112Ec => "VATEX-EU-132-1O",
286            VATEX::ExemptBasedOnArticle132Section1PCouncilDirective2006112Ec => "VATEX-EU-132-1P",
287            VATEX::ExemptBasedOnArticle132Section1QCouncilDirective2006112Ec => "VATEX-EU-132-1Q",
288            VATEX::ExemptBasedOnArticle143CouncilDirective2006112Ec => "VATEX-EU-143",
289            VATEX::ExemptBasedOnArticle143Section1ACouncilDirective2006112Ec => "VATEX-EU-143-1A",
290            VATEX::ExemptBasedOnArticle143Section1BCouncilDirective2006112Ec => "VATEX-EU-143-1B",
291            VATEX::ExemptBasedOnArticle143Section1CCouncilDirective2006112Ec => "VATEX-EU-143-1C",
292            VATEX::ExemptBasedOnArticle143Section1DCouncilDirective2006112Ec => "VATEX-EU-143-1D",
293            VATEX::ExemptBasedOnArticle143Section1ECouncilDirective2006112Ec => "VATEX-EU-143-1E",
294            VATEX::ExemptBasedOnArticle143Section1FCouncilDirective2006112Ec => "VATEX-EU-143-1F",
295            VATEX::ExemptBasedOnArticle143Section1FaCouncilDirective2006112Ec => "VATEX-EU-143-1FA",
296            VATEX::ExemptBasedOnArticle143Section1GCouncilDirective2006112Ec => "VATEX-EU-143-1G",
297            VATEX::ExemptBasedOnArticle143Section1HCouncilDirective2006112Ec => "VATEX-EU-143-1H",
298            VATEX::ExemptBasedOnArticle143Section1ICouncilDirective2006112Ec => "VATEX-EU-143-1I",
299            VATEX::ExemptBasedOnArticle143Section1JCouncilDirective2006112Ec => "VATEX-EU-143-1J",
300            VATEX::ExemptBasedOnArticle143Section1KCouncilDirective2006112Ec => "VATEX-EU-143-1K",
301            VATEX::ExemptBasedOnArticle143Section1LCouncilDirective2006112Ec => "VATEX-EU-143-1L",
302            VATEX::ExemptBasedOnArticle144CouncilDirective2006112Ec => "VATEX-EU-144",
303            VATEX::ExemptBasedOnArticle146Section1ECouncilDirective2006112Ec => "VATEX-EU-146-1E",
304            VATEX::ExemptBasedOnArticle148CouncilDirective2006112Ec => "VATEX-EU-148",
305            VATEX::ExemptBasedOnArticle148SectionACouncilDirective2006112Ec => "VATEX-EU-148-A",
306            VATEX::ExemptBasedOnArticle148SectionBCouncilDirective2006112Ec => "VATEX-EU-148-B",
307            VATEX::ExemptBasedOnArticle148SectionCCouncilDirective2006112Ec => "VATEX-EU-148-C",
308            VATEX::ExemptBasedOnArticle148SectionDCouncilDirective2006112Ec => "VATEX-EU-148-D",
309            VATEX::ExemptBasedOnArticle148SectionECouncilDirective2006112Ec => "VATEX-EU-148-E",
310            VATEX::ExemptBasedOnArticle148SectionFCouncilDirective2006112Ec => "VATEX-EU-148-F",
311            VATEX::ExemptBasedOnArticle148SectionGCouncilDirective2006112Ec => "VATEX-EU-148-G",
312            VATEX::ExemptBasedOnArticle151CouncilDirective2006112Ec => "VATEX-EU-151",
313            VATEX::ExemptBasedOnArticle151Section1ACouncilDirective2006112Ec => "VATEX-EU-151-1A",
314            VATEX::ExemptBasedOnArticle151Section1AaCouncilDirective2006112Ec => "VATEX-EU-151-1AA",
315            VATEX::ExemptBasedOnArticle151Section1BCouncilDirective2006112Ec => "VATEX-EU-151-1B",
316            VATEX::ExemptBasedOnArticle151Section1CCouncilDirective2006112Ec => "VATEX-EU-151-1C",
317            VATEX::ExemptBasedOnArticle151Section1DCouncilDirective2006112Ec => "VATEX-EU-151-1D",
318            VATEX::ExemptBasedOnArticle151Section1ECouncilDirective2006112Ec => "VATEX-EU-151-1E",
319            VATEX::ExemptBasedOnArticle153CouncilDirective2006112Ec => "VATEX-EU-153",
320            VATEX::ExemptBasedOnArticle159CouncilDirective2006112Ec => "VATEX-EU-159",
321            VATEX::ExemptBasedOnArticle309CouncilDirective2006112Ec => "VATEX-EU-309",
322            VATEX::ReverseCharge => "VATEX-EU-AE",
323            VATEX::TravelAgentsVatScheme => "VATEX-EU-D",
324            VATEX::SecondHandGoodsVatScheme => "VATEX-EU-F",
325            VATEX::ExportOutsideEu => "VATEX-EU-G",
326            VATEX::WorksArtVatScheme => "VATEX-EU-I",
327            VATEX::IntraCommunitySupply => "VATEX-EU-IC",
328            VATEX::CollectorsItemsAndAntiquesVatScheme => "VATEX-EU-J",
329            VATEX::NotSubjectToVat => "VATEX-EU-O",
330            VATEX::FranceDomesticVatFranchiseInBase => "VATEX-FR-FRANCHISE",
331            VATEX::FranceDomesticCreditNotesWithoutVatDueToSupplierForfeitVatForDiscount => "VATEX-FR-CNWVAT",
332            VATEX::ExemptBasedOn1Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261-1",
333            VATEX::ExemptBasedOn2Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261-2",
334            VATEX::ExemptBasedOn3Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261-3",
335            VATEX::ExemptBasedOn4Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261-4",
336            VATEX::ExemptBasedOn5Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261-5",
337            VATEX::ExemptBasedOn7Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261-7",
338            VATEX::ExemptBasedOn8Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261-8",
339            VATEX::ExemptBasedOnArticle261ACodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261A",
340            VATEX::ExemptBasedOnArticle261BCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261B",
341            VATEX::ExemptBasedOn1Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261C-1",
342            VATEX::ExemptBasedOn2Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261C-2",
343            VATEX::ExemptBasedOn3Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261C-3",
344            VATEX::ExemptBasedOn1Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261D-1",
345            VATEX::ExemptBasedOn1BisArticle261DCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261D-1BIS",
346            VATEX::ExemptBasedOn2Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261D-2",
347            VATEX::ExemptBasedOn3Article261DCodeGénéralDesImpôtsCgiGeneralTaxCodeExonérationDeTvaArticle261D3DuCodeGénéralDesImpôts => "VATEX-FR-CGI261D-3",
348            VATEX::ExemptBasedOn4Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261D-4",
349            VATEX::ExemptBasedOn1Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261E-1",
350            VATEX::ExemptBasedOn2Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261E-2",
351            VATEX::ExemptBasedOnArticle277ACodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI277A",
352            VATEX::ExemptBasedOnArticle275CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI275",
353            VATEX::ExemptBasedOnArticle298SexdeciesACodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-298SEXDECIESA",
354            VATEX::ExemptBasedOnArticle295CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI295",
355            VATEX::ExemptBasedOn2Article283CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-AE",
356        }
357    }
358}
359
360impl crate::Description for VATEX {
361    fn description(self) -> &'static str {
362        match self {
363            VATEX::ExemptBasedOnArticle79PointCCouncilDirective2006112Ec => "Exempt based on article 79, point c of Council Directive 2006/112/EC",
364            VATEX::ExemptBasedOnArticle132CouncilDirective2006112Ec => "Exempt based on article 132 of Council Directive 2006/112/EC",
365            VATEX::ExemptBasedOnArticle132Section1ACouncilDirective2006112Ec => "Exempt based on article 132, section 1 (a) of Council Directive 2006/112/EC",
366            VATEX::ExemptBasedOnArticle132Section1BCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (b) of Council Directive 2006/112/EC",
367            VATEX::ExemptBasedOnArticle132Section1CCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (c) of Council Directive 2006/112/EC",
368            VATEX::ExemptBasedOnArticle132Section1DCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (d) of Council Directive 2006/112/EC",
369            VATEX::ExemptBasedOnArticle132Section1ECouncilDirective2006112Ec => "Exempt based on article 132, section 1 (e) of Council Directive 2006/112/EC",
370            VATEX::ExemptBasedOnArticle132Section1FCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (f) of Council Directive 2006/112/EC",
371            VATEX::ExemptBasedOnArticle132Section1GCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (g) of Council Directive 2006/112/EC",
372            VATEX::ExemptBasedOnArticle132Section1HCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (h) of Council Directive 2006/112/EC",
373            VATEX::ExemptBasedOnArticle132Section1ICouncilDirective2006112Ec => "Exempt based on article 132, section 1 (i) of Council Directive 2006/112/EC",
374            VATEX::ExemptBasedOnArticle132Section1JCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (j) of Council Directive 2006/112/EC",
375            VATEX::ExemptBasedOnArticle132Section1KCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (k) of Council Directive 2006/112/EC",
376            VATEX::ExemptBasedOnArticle132Section1LCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (l) of Council Directive 2006/112/EC",
377            VATEX::ExemptBasedOnArticle132Section1MCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (m) of Council Directive 2006/112/EC",
378            VATEX::ExemptBasedOnArticle132Section1NCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (n) of Council Directive 2006/112/EC",
379            VATEX::ExemptBasedOnArticle132Section1OCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (o) of Council Directive 2006/112/EC",
380            VATEX::ExemptBasedOnArticle132Section1PCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (p) of Council Directive 2006/112/EC",
381            VATEX::ExemptBasedOnArticle132Section1QCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (q) of Council Directive 2006/112/EC",
382            VATEX::ExemptBasedOnArticle143CouncilDirective2006112Ec => "Exempt based on article 143 of Council Directive 2006/112/EC",
383            VATEX::ExemptBasedOnArticle143Section1ACouncilDirective2006112Ec => "Exempt based on article 143, section 1 (a) of Council Directive 2006/112/EC",
384            VATEX::ExemptBasedOnArticle143Section1BCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (b) of Council Directive 2006/112/EC",
385            VATEX::ExemptBasedOnArticle143Section1CCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (c) of Council Directive 2006/112/EC",
386            VATEX::ExemptBasedOnArticle143Section1DCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (d) of Council Directive 2006/112/EC",
387            VATEX::ExemptBasedOnArticle143Section1ECouncilDirective2006112Ec => "Exempt based on article 143, section 1 (e) of Council Directive 2006/112/EC",
388            VATEX::ExemptBasedOnArticle143Section1FCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (f) of Council Directive 2006/112/EC",
389            VATEX::ExemptBasedOnArticle143Section1FaCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (fa) of Council Directive 2006/112/EC",
390            VATEX::ExemptBasedOnArticle143Section1GCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (g) of Council Directive 2006/112/EC",
391            VATEX::ExemptBasedOnArticle143Section1HCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (h) of Council Directive 2006/112/EC",
392            VATEX::ExemptBasedOnArticle143Section1ICouncilDirective2006112Ec => "Exempt based on article 143, section 1 (i) of Council Directive 2006/112/EC",
393            VATEX::ExemptBasedOnArticle143Section1JCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (j) of Council Directive 2006/112/EC",
394            VATEX::ExemptBasedOnArticle143Section1KCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (k) of Council Directive 2006/112/EC",
395            VATEX::ExemptBasedOnArticle143Section1LCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (l) of Council Directive 2006/112/EC",
396            VATEX::ExemptBasedOnArticle144CouncilDirective2006112Ec => "Exempt based on article 144 of Council Directive 2006/112/EC",
397            VATEX::ExemptBasedOnArticle146Section1ECouncilDirective2006112Ec => "Exempt based on article 146 section 1 (e) of Council Directive 2006/112/EC",
398            VATEX::ExemptBasedOnArticle148CouncilDirective2006112Ec => "Exempt based on article 148 of Council Directive 2006/112/EC",
399            VATEX::ExemptBasedOnArticle148SectionACouncilDirective2006112Ec => "Exempt based on article 148, section (a) of Council Directive 2006/112/EC",
400            VATEX::ExemptBasedOnArticle148SectionBCouncilDirective2006112Ec => "Exempt based on article 148, section (b) of Council Directive 2006/112/EC",
401            VATEX::ExemptBasedOnArticle148SectionCCouncilDirective2006112Ec => "Exempt based on article 148, section (c) of Council Directive 2006/112/EC",
402            VATEX::ExemptBasedOnArticle148SectionDCouncilDirective2006112Ec => "Exempt based on article 148, section (d) of Council Directive 2006/112/EC",
403            VATEX::ExemptBasedOnArticle148SectionECouncilDirective2006112Ec => "Exempt based on article 148, section (e) of Council Directive 2006/112/EC",
404            VATEX::ExemptBasedOnArticle148SectionFCouncilDirective2006112Ec => "Exempt based on article 148, section (f) of Council Directive 2006/112/EC",
405            VATEX::ExemptBasedOnArticle148SectionGCouncilDirective2006112Ec => "Exempt based on article 148, section (g) of Council Directive 2006/112/EC",
406            VATEX::ExemptBasedOnArticle151CouncilDirective2006112Ec => "Exempt based on article 151 of Council Directive 2006/112/EC",
407            VATEX::ExemptBasedOnArticle151Section1ACouncilDirective2006112Ec => "Exempt based on article 151, section 1 (a) of Council Directive 2006/112/EC ",
408            VATEX::ExemptBasedOnArticle151Section1AaCouncilDirective2006112Ec => "Exempt based on article 151, section 1 (aa) of Council Directive 2006/112/EC ",
409            VATEX::ExemptBasedOnArticle151Section1BCouncilDirective2006112Ec => "Exempt based on article 151, section 1 (b) of Council Directive 2006/112/EC ",
410            VATEX::ExemptBasedOnArticle151Section1CCouncilDirective2006112Ec => "Exempt based on article 151, section 1 (c) of Council Directive 2006/112/EC ",
411            VATEX::ExemptBasedOnArticle151Section1DCouncilDirective2006112Ec => "Exempt based on article 151, section 1 (d) of Council Directive 2006/112/EC ",
412            VATEX::ExemptBasedOnArticle151Section1ECouncilDirective2006112Ec => "Exempt based on article 151, section 1 (e) of Council Directive 2006/112/EC ",
413            VATEX::ExemptBasedOnArticle153CouncilDirective2006112Ec => "Exempt based on article 153 of Council Directive 2006/112/EC",
414            VATEX::ExemptBasedOnArticle159CouncilDirective2006112Ec => "Exempt based on article 159 of Council Directive 2006/112/EC",
415            VATEX::ExemptBasedOnArticle309CouncilDirective2006112Ec => "Exempt based on article 309 of Council Directive 2006/112/EC ",
416            VATEX::ReverseCharge => "Reverse charge",
417            VATEX::TravelAgentsVatScheme => "Travel agents VAT scheme.",
418            VATEX::SecondHandGoodsVatScheme => "Second hand goods VAT scheme.",
419            VATEX::ExportOutsideEu => "Export outside the EU",
420            VATEX::WorksArtVatScheme => "Works of art VAT scheme.",
421            VATEX::IntraCommunitySupply => "Intra-community supply",
422            VATEX::CollectorsItemsAndAntiquesVatScheme => "Collectors items and antiques VAT scheme.",
423            VATEX::NotSubjectToVat => "Not subject to VAT",
424            VATEX::FranceDomesticVatFranchiseInBase => "France domestic VAT franchise in base",
425            VATEX::FranceDomesticCreditNotesWithoutVatDueToSupplierForfeitVatForDiscount => "France domestic Credit Notes without VAT, due to supplier forfeit of VAT for discount",
426            VATEX::ExemptBasedOn1Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on 1 of article 261 of the Code Général des Impôts (CGI ; General tax code)",
427            VATEX::ExemptBasedOn2Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on 2 of article 261 of the Code Général des Impôts (CGI ; General tax code)",
428            VATEX::ExemptBasedOn3Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on 3 of article 261 of the Code Général des Impôts (CGI ; General tax code)",
429            VATEX::ExemptBasedOn4Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on 4 of article 261 of the Code Général des Impôts (CGI ; General tax code)",
430            VATEX::ExemptBasedOn5Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on 5 of article 261 of the Code Général des Impôts (CGI ; General tax code) ",
431            VATEX::ExemptBasedOn7Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on 7 of article 261 of the Code Général des Impôts (CGI ; General tax code)",
432            VATEX::ExemptBasedOn8Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on 8 of article 261 of the Code Général des Impôts (CGI ; General tax code)",
433            VATEX::ExemptBasedOnArticle261ACodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on article 261 A of the Code Général des Impôts (CGI ; General tax code)",
434            VATEX::ExemptBasedOnArticle261BCodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on article 261 B of the Code Général des Impôts (CGI ; General tax code)",
435            VATEX::ExemptBasedOn1Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on 1° of article 261 C of the Code Général des Impôts (CGI ; General tax code)",
436            VATEX::ExemptBasedOn2Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on 2° of article 261 C of the Code Général des Impôts (CGI ; General tax code)",
437            VATEX::ExemptBasedOn3Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on 3° of article 261 C of the Code Général des Impôts (CGI ; General tax code)",
438            VATEX::ExemptBasedOn1Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on 1° of article 261 D of the Code Général des Impôts (CGI ; General tax code)",
439            VATEX::ExemptBasedOn1BisArticle261DCodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on 1°bis of article 261 D of the Code Général des Impôts (CGI ; General tax code)",
440            VATEX::ExemptBasedOn2Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on 2° of article 261 D of the Code Général des Impôts (CGI ; General tax code)",
441            VATEX::ExemptBasedOn3Article261DCodeGénéralDesImpôtsCgiGeneralTaxCodeExonérationDeTvaArticle261D3DuCodeGénéralDesImpôts => "Exempt based on 3° of article 261 D of the Code Général des Impôts (CGI ; General tax code) Exonération de TVA - Article 261 D-3° du Code Général des Impôts ",
442            VATEX::ExemptBasedOn4Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on 4° of article 261 D of the Code Général des Impôts (CGI ; General tax code)",
443            VATEX::ExemptBasedOn1Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on 1° of article 261 E of the Code Général des Impôts (CGI ; General tax code)",
444            VATEX::ExemptBasedOn2Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on 2° of article 261 E of the Code Général des Impôts (CGI ; General tax code)",
445            VATEX::ExemptBasedOnArticle277ACodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on article 277 A of the Code Général des Impôts (CGI ; General tax code)",
446            VATEX::ExemptBasedOnArticle275CodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on article 275 of the Code Général des Impôts (CGI ; General tax code)",
447            VATEX::ExemptBasedOnArticle298SexdeciesACodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on article 298 sexdecies A of the Code Général des Impôts (CGI ; General tax code)",
448            VATEX::ExemptBasedOnArticle295CodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on article 295 of the Code Général des Impôts (CGI ; General tax code)",
449            VATEX::ExemptBasedOn2Article283CodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on 2 of article 283 of the Code Général des Impôts (CGI ; General tax code)",
450        }
451    }
452}
453
454impl crate::FromCode for VATEX {
455    fn from_code(code: &str) -> Option<Self>
456    where
457        Self: Sized,
458    {
459        match code {
460            "VATEX-EU-79-C" => Some(VATEX::ExemptBasedOnArticle79PointCCouncilDirective2006112Ec),
461            "VATEX-EU-132" => Some(VATEX::ExemptBasedOnArticle132CouncilDirective2006112Ec),
462            "VATEX-EU-132-1A" => Some(VATEX::ExemptBasedOnArticle132Section1ACouncilDirective2006112Ec),
463            "VATEX-EU-132-1B" => Some(VATEX::ExemptBasedOnArticle132Section1BCouncilDirective2006112Ec),
464            "VATEX-EU-132-1C" => Some(VATEX::ExemptBasedOnArticle132Section1CCouncilDirective2006112Ec),
465            "VATEX-EU-132-1D" => Some(VATEX::ExemptBasedOnArticle132Section1DCouncilDirective2006112Ec),
466            "VATEX-EU-132-1E" => Some(VATEX::ExemptBasedOnArticle132Section1ECouncilDirective2006112Ec),
467            "VATEX-EU-132-1F" => Some(VATEX::ExemptBasedOnArticle132Section1FCouncilDirective2006112Ec),
468            "VATEX-EU-132-1G" => Some(VATEX::ExemptBasedOnArticle132Section1GCouncilDirective2006112Ec),
469            "VATEX-EU-132-1H" => Some(VATEX::ExemptBasedOnArticle132Section1HCouncilDirective2006112Ec),
470            "VATEX-EU-132-1I" => Some(VATEX::ExemptBasedOnArticle132Section1ICouncilDirective2006112Ec),
471            "VATEX-EU-132-1J" => Some(VATEX::ExemptBasedOnArticle132Section1JCouncilDirective2006112Ec),
472            "VATEX-EU-132-1K" => Some(VATEX::ExemptBasedOnArticle132Section1KCouncilDirective2006112Ec),
473            "VATEX-EU-132-1L" => Some(VATEX::ExemptBasedOnArticle132Section1LCouncilDirective2006112Ec),
474            "VATEX-EU-132-1M" => Some(VATEX::ExemptBasedOnArticle132Section1MCouncilDirective2006112Ec),
475            "VATEX-EU-132-1N" => Some(VATEX::ExemptBasedOnArticle132Section1NCouncilDirective2006112Ec),
476            "VATEX-EU-132-1O" => Some(VATEX::ExemptBasedOnArticle132Section1OCouncilDirective2006112Ec),
477            "VATEX-EU-132-1P" => Some(VATEX::ExemptBasedOnArticle132Section1PCouncilDirective2006112Ec),
478            "VATEX-EU-132-1Q" => Some(VATEX::ExemptBasedOnArticle132Section1QCouncilDirective2006112Ec),
479            "VATEX-EU-143" => Some(VATEX::ExemptBasedOnArticle143CouncilDirective2006112Ec),
480            "VATEX-EU-143-1A" => Some(VATEX::ExemptBasedOnArticle143Section1ACouncilDirective2006112Ec),
481            "VATEX-EU-143-1B" => Some(VATEX::ExemptBasedOnArticle143Section1BCouncilDirective2006112Ec),
482            "VATEX-EU-143-1C" => Some(VATEX::ExemptBasedOnArticle143Section1CCouncilDirective2006112Ec),
483            "VATEX-EU-143-1D" => Some(VATEX::ExemptBasedOnArticle143Section1DCouncilDirective2006112Ec),
484            "VATEX-EU-143-1E" => Some(VATEX::ExemptBasedOnArticle143Section1ECouncilDirective2006112Ec),
485            "VATEX-EU-143-1F" => Some(VATEX::ExemptBasedOnArticle143Section1FCouncilDirective2006112Ec),
486            "VATEX-EU-143-1FA" => Some(VATEX::ExemptBasedOnArticle143Section1FaCouncilDirective2006112Ec),
487            "VATEX-EU-143-1G" => Some(VATEX::ExemptBasedOnArticle143Section1GCouncilDirective2006112Ec),
488            "VATEX-EU-143-1H" => Some(VATEX::ExemptBasedOnArticle143Section1HCouncilDirective2006112Ec),
489            "VATEX-EU-143-1I" => Some(VATEX::ExemptBasedOnArticle143Section1ICouncilDirective2006112Ec),
490            "VATEX-EU-143-1J" => Some(VATEX::ExemptBasedOnArticle143Section1JCouncilDirective2006112Ec),
491            "VATEX-EU-143-1K" => Some(VATEX::ExemptBasedOnArticle143Section1KCouncilDirective2006112Ec),
492            "VATEX-EU-143-1L" => Some(VATEX::ExemptBasedOnArticle143Section1LCouncilDirective2006112Ec),
493            "VATEX-EU-144" => Some(VATEX::ExemptBasedOnArticle144CouncilDirective2006112Ec),
494            "VATEX-EU-146-1E" => Some(VATEX::ExemptBasedOnArticle146Section1ECouncilDirective2006112Ec),
495            "VATEX-EU-148" => Some(VATEX::ExemptBasedOnArticle148CouncilDirective2006112Ec),
496            "VATEX-EU-148-A" => Some(VATEX::ExemptBasedOnArticle148SectionACouncilDirective2006112Ec),
497            "VATEX-EU-148-B" => Some(VATEX::ExemptBasedOnArticle148SectionBCouncilDirective2006112Ec),
498            "VATEX-EU-148-C" => Some(VATEX::ExemptBasedOnArticle148SectionCCouncilDirective2006112Ec),
499            "VATEX-EU-148-D" => Some(VATEX::ExemptBasedOnArticle148SectionDCouncilDirective2006112Ec),
500            "VATEX-EU-148-E" => Some(VATEX::ExemptBasedOnArticle148SectionECouncilDirective2006112Ec),
501            "VATEX-EU-148-F" => Some(VATEX::ExemptBasedOnArticle148SectionFCouncilDirective2006112Ec),
502            "VATEX-EU-148-G" => Some(VATEX::ExemptBasedOnArticle148SectionGCouncilDirective2006112Ec),
503            "VATEX-EU-151" => Some(VATEX::ExemptBasedOnArticle151CouncilDirective2006112Ec),
504            "VATEX-EU-151-1A" => Some(VATEX::ExemptBasedOnArticle151Section1ACouncilDirective2006112Ec),
505            "VATEX-EU-151-1AA" => Some(VATEX::ExemptBasedOnArticle151Section1AaCouncilDirective2006112Ec),
506            "VATEX-EU-151-1B" => Some(VATEX::ExemptBasedOnArticle151Section1BCouncilDirective2006112Ec),
507            "VATEX-EU-151-1C" => Some(VATEX::ExemptBasedOnArticle151Section1CCouncilDirective2006112Ec),
508            "VATEX-EU-151-1D" => Some(VATEX::ExemptBasedOnArticle151Section1DCouncilDirective2006112Ec),
509            "VATEX-EU-151-1E" => Some(VATEX::ExemptBasedOnArticle151Section1ECouncilDirective2006112Ec),
510            "VATEX-EU-153" => Some(VATEX::ExemptBasedOnArticle153CouncilDirective2006112Ec),
511            "VATEX-EU-159" => Some(VATEX::ExemptBasedOnArticle159CouncilDirective2006112Ec),
512            "VATEX-EU-309" => Some(VATEX::ExemptBasedOnArticle309CouncilDirective2006112Ec),
513            "VATEX-EU-AE" => Some(VATEX::ReverseCharge),
514            "VATEX-EU-D" => Some(VATEX::TravelAgentsVatScheme),
515            "VATEX-EU-F" => Some(VATEX::SecondHandGoodsVatScheme),
516            "VATEX-EU-G" => Some(VATEX::ExportOutsideEu),
517            "VATEX-EU-I" => Some(VATEX::WorksArtVatScheme),
518            "VATEX-EU-IC" => Some(VATEX::IntraCommunitySupply),
519            "VATEX-EU-J" => Some(VATEX::CollectorsItemsAndAntiquesVatScheme),
520            "VATEX-EU-O" => Some(VATEX::NotSubjectToVat),
521            "VATEX-FR-FRANCHISE" => Some(VATEX::FranceDomesticVatFranchiseInBase),
522            "VATEX-FR-CNWVAT" => Some(VATEX::FranceDomesticCreditNotesWithoutVatDueToSupplierForfeitVatForDiscount),
523            "VATEX-FR-CGI261-1" => Some(VATEX::ExemptBasedOn1Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
524            "VATEX-FR-CGI261-2" => Some(VATEX::ExemptBasedOn2Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
525            "VATEX-FR-CGI261-3" => Some(VATEX::ExemptBasedOn3Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
526            "VATEX-FR-CGI261-4" => Some(VATEX::ExemptBasedOn4Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
527            "VATEX-FR-CGI261-5" => Some(VATEX::ExemptBasedOn5Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
528            "VATEX-FR-CGI261-7" => Some(VATEX::ExemptBasedOn7Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
529            "VATEX-FR-CGI261-8" => Some(VATEX::ExemptBasedOn8Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
530            "VATEX-FR-CGI261A" => Some(VATEX::ExemptBasedOnArticle261ACodeGénéralDesImpôtsCgiGeneralTaxCode),
531            "VATEX-FR-CGI261B" => Some(VATEX::ExemptBasedOnArticle261BCodeGénéralDesImpôtsCgiGeneralTaxCode),
532            "VATEX-FR-CGI261C-1" => Some(VATEX::ExemptBasedOn1Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode),
533            "VATEX-FR-CGI261C-2" => Some(VATEX::ExemptBasedOn2Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode),
534            "VATEX-FR-CGI261C-3" => Some(VATEX::ExemptBasedOn3Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode),
535            "VATEX-FR-CGI261D-1" => Some(VATEX::ExemptBasedOn1Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode),
536            "VATEX-FR-CGI261D-1BIS" => Some(VATEX::ExemptBasedOn1BisArticle261DCodeGénéralDesImpôtsCgiGeneralTaxCode),
537            "VATEX-FR-CGI261D-2" => Some(VATEX::ExemptBasedOn2Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode),
538            "VATEX-FR-CGI261D-3" => Some(VATEX::ExemptBasedOn3Article261DCodeGénéralDesImpôtsCgiGeneralTaxCodeExonérationDeTvaArticle261D3DuCodeGénéralDesImpôts),
539            "VATEX-FR-CGI261D-4" => Some(VATEX::ExemptBasedOn4Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode),
540            "VATEX-FR-CGI261E-1" => Some(VATEX::ExemptBasedOn1Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode),
541            "VATEX-FR-CGI261E-2" => Some(VATEX::ExemptBasedOn2Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode),
542            "VATEX-FR-CGI277A" => Some(VATEX::ExemptBasedOnArticle277ACodeGénéralDesImpôtsCgiGeneralTaxCode),
543            "VATEX-FR-CGI275" => Some(VATEX::ExemptBasedOnArticle275CodeGénéralDesImpôtsCgiGeneralTaxCode),
544            "VATEX-FR-298SEXDECIESA" => Some(VATEX::ExemptBasedOnArticle298SexdeciesACodeGénéralDesImpôtsCgiGeneralTaxCode),
545            "VATEX-FR-CGI295" => Some(VATEX::ExemptBasedOnArticle295CodeGénéralDesImpôtsCgiGeneralTaxCode),
546            "VATEX-FR-AE" => Some(VATEX::ExemptBasedOn2Article283CodeGénéralDesImpôtsCgiGeneralTaxCode),
547            _ => None,
548        }
549    }
550}