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 = crate::ParseError<Self>;
261    fn from_str(s: &str) -> Result<Self, Self::Err> {
262        <Self as crate::FromCode>::from_code(s)
263            .ok_or_else(|| crate::ParseError::<Self>::new(s.to_owned()))
264    }
265}
266
267impl crate::Code for VATEX {
268    fn code(self) -> &'static str {
269        match self {
270            VATEX::ExemptBasedOnArticle79PointCCouncilDirective2006112Ec => "VATEX-EU-79-C",
271            VATEX::ExemptBasedOnArticle132CouncilDirective2006112Ec => "VATEX-EU-132",
272            VATEX::ExemptBasedOnArticle132Section1ACouncilDirective2006112Ec => "VATEX-EU-132-1A",
273            VATEX::ExemptBasedOnArticle132Section1BCouncilDirective2006112Ec => "VATEX-EU-132-1B",
274            VATEX::ExemptBasedOnArticle132Section1CCouncilDirective2006112Ec => "VATEX-EU-132-1C",
275            VATEX::ExemptBasedOnArticle132Section1DCouncilDirective2006112Ec => "VATEX-EU-132-1D",
276            VATEX::ExemptBasedOnArticle132Section1ECouncilDirective2006112Ec => "VATEX-EU-132-1E",
277            VATEX::ExemptBasedOnArticle132Section1FCouncilDirective2006112Ec => "VATEX-EU-132-1F",
278            VATEX::ExemptBasedOnArticle132Section1GCouncilDirective2006112Ec => "VATEX-EU-132-1G",
279            VATEX::ExemptBasedOnArticle132Section1HCouncilDirective2006112Ec => "VATEX-EU-132-1H",
280            VATEX::ExemptBasedOnArticle132Section1ICouncilDirective2006112Ec => "VATEX-EU-132-1I",
281            VATEX::ExemptBasedOnArticle132Section1JCouncilDirective2006112Ec => "VATEX-EU-132-1J",
282            VATEX::ExemptBasedOnArticle132Section1KCouncilDirective2006112Ec => "VATEX-EU-132-1K",
283            VATEX::ExemptBasedOnArticle132Section1LCouncilDirective2006112Ec => "VATEX-EU-132-1L",
284            VATEX::ExemptBasedOnArticle132Section1MCouncilDirective2006112Ec => "VATEX-EU-132-1M",
285            VATEX::ExemptBasedOnArticle132Section1NCouncilDirective2006112Ec => "VATEX-EU-132-1N",
286            VATEX::ExemptBasedOnArticle132Section1OCouncilDirective2006112Ec => "VATEX-EU-132-1O",
287            VATEX::ExemptBasedOnArticle132Section1PCouncilDirective2006112Ec => "VATEX-EU-132-1P",
288            VATEX::ExemptBasedOnArticle132Section1QCouncilDirective2006112Ec => "VATEX-EU-132-1Q",
289            VATEX::ExemptBasedOnArticle143CouncilDirective2006112Ec => "VATEX-EU-143",
290            VATEX::ExemptBasedOnArticle143Section1ACouncilDirective2006112Ec => "VATEX-EU-143-1A",
291            VATEX::ExemptBasedOnArticle143Section1BCouncilDirective2006112Ec => "VATEX-EU-143-1B",
292            VATEX::ExemptBasedOnArticle143Section1CCouncilDirective2006112Ec => "VATEX-EU-143-1C",
293            VATEX::ExemptBasedOnArticle143Section1DCouncilDirective2006112Ec => "VATEX-EU-143-1D",
294            VATEX::ExemptBasedOnArticle143Section1ECouncilDirective2006112Ec => "VATEX-EU-143-1E",
295            VATEX::ExemptBasedOnArticle143Section1FCouncilDirective2006112Ec => "VATEX-EU-143-1F",
296            VATEX::ExemptBasedOnArticle143Section1FaCouncilDirective2006112Ec => "VATEX-EU-143-1FA",
297            VATEX::ExemptBasedOnArticle143Section1GCouncilDirective2006112Ec => "VATEX-EU-143-1G",
298            VATEX::ExemptBasedOnArticle143Section1HCouncilDirective2006112Ec => "VATEX-EU-143-1H",
299            VATEX::ExemptBasedOnArticle143Section1ICouncilDirective2006112Ec => "VATEX-EU-143-1I",
300            VATEX::ExemptBasedOnArticle143Section1JCouncilDirective2006112Ec => "VATEX-EU-143-1J",
301            VATEX::ExemptBasedOnArticle143Section1KCouncilDirective2006112Ec => "VATEX-EU-143-1K",
302            VATEX::ExemptBasedOnArticle143Section1LCouncilDirective2006112Ec => "VATEX-EU-143-1L",
303            VATEX::ExemptBasedOnArticle144CouncilDirective2006112Ec => "VATEX-EU-144",
304            VATEX::ExemptBasedOnArticle146Section1ECouncilDirective2006112Ec => "VATEX-EU-146-1E",
305            VATEX::ExemptBasedOnArticle148CouncilDirective2006112Ec => "VATEX-EU-148",
306            VATEX::ExemptBasedOnArticle148SectionACouncilDirective2006112Ec => "VATEX-EU-148-A",
307            VATEX::ExemptBasedOnArticle148SectionBCouncilDirective2006112Ec => "VATEX-EU-148-B",
308            VATEX::ExemptBasedOnArticle148SectionCCouncilDirective2006112Ec => "VATEX-EU-148-C",
309            VATEX::ExemptBasedOnArticle148SectionDCouncilDirective2006112Ec => "VATEX-EU-148-D",
310            VATEX::ExemptBasedOnArticle148SectionECouncilDirective2006112Ec => "VATEX-EU-148-E",
311            VATEX::ExemptBasedOnArticle148SectionFCouncilDirective2006112Ec => "VATEX-EU-148-F",
312            VATEX::ExemptBasedOnArticle148SectionGCouncilDirective2006112Ec => "VATEX-EU-148-G",
313            VATEX::ExemptBasedOnArticle151CouncilDirective2006112Ec => "VATEX-EU-151",
314            VATEX::ExemptBasedOnArticle151Section1ACouncilDirective2006112Ec => "VATEX-EU-151-1A",
315            VATEX::ExemptBasedOnArticle151Section1AaCouncilDirective2006112Ec => "VATEX-EU-151-1AA",
316            VATEX::ExemptBasedOnArticle151Section1BCouncilDirective2006112Ec => "VATEX-EU-151-1B",
317            VATEX::ExemptBasedOnArticle151Section1CCouncilDirective2006112Ec => "VATEX-EU-151-1C",
318            VATEX::ExemptBasedOnArticle151Section1DCouncilDirective2006112Ec => "VATEX-EU-151-1D",
319            VATEX::ExemptBasedOnArticle151Section1ECouncilDirective2006112Ec => "VATEX-EU-151-1E",
320            VATEX::ExemptBasedOnArticle153CouncilDirective2006112Ec => "VATEX-EU-153",
321            VATEX::ExemptBasedOnArticle159CouncilDirective2006112Ec => "VATEX-EU-159",
322            VATEX::ExemptBasedOnArticle309CouncilDirective2006112Ec => "VATEX-EU-309",
323            VATEX::ReverseCharge => "VATEX-EU-AE",
324            VATEX::TravelAgentsVatScheme => "VATEX-EU-D",
325            VATEX::SecondHandGoodsVatScheme => "VATEX-EU-F",
326            VATEX::ExportOutsideEu => "VATEX-EU-G",
327            VATEX::WorksArtVatScheme => "VATEX-EU-I",
328            VATEX::IntraCommunitySupply => "VATEX-EU-IC",
329            VATEX::CollectorsItemsAndAntiquesVatScheme => "VATEX-EU-J",
330            VATEX::NotSubjectToVat => "VATEX-EU-O",
331            VATEX::FranceDomesticVatFranchiseInBase => "VATEX-FR-FRANCHISE",
332            VATEX::FranceDomesticCreditNotesWithoutVatDueToSupplierForfeitVatForDiscount => "VATEX-FR-CNWVAT",
333            VATEX::ExemptBasedOn1Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261-1",
334            VATEX::ExemptBasedOn2Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261-2",
335            VATEX::ExemptBasedOn3Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261-3",
336            VATEX::ExemptBasedOn4Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261-4",
337            VATEX::ExemptBasedOn5Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261-5",
338            VATEX::ExemptBasedOn7Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261-7",
339            VATEX::ExemptBasedOn8Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261-8",
340            VATEX::ExemptBasedOnArticle261ACodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261A",
341            VATEX::ExemptBasedOnArticle261BCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261B",
342            VATEX::ExemptBasedOn1Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261C-1",
343            VATEX::ExemptBasedOn2Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261C-2",
344            VATEX::ExemptBasedOn3Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261C-3",
345            VATEX::ExemptBasedOn1Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261D-1",
346            VATEX::ExemptBasedOn1BisArticle261DCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261D-1BIS",
347            VATEX::ExemptBasedOn2Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261D-2",
348            VATEX::ExemptBasedOn3Article261DCodeGénéralDesImpôtsCgiGeneralTaxCodeExonérationDeTvaArticle261D3DuCodeGénéralDesImpôts => "VATEX-FR-CGI261D-3",
349            VATEX::ExemptBasedOn4Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261D-4",
350            VATEX::ExemptBasedOn1Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261E-1",
351            VATEX::ExemptBasedOn2Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261E-2",
352            VATEX::ExemptBasedOnArticle277ACodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI277A",
353            VATEX::ExemptBasedOnArticle275CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI275",
354            VATEX::ExemptBasedOnArticle298SexdeciesACodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-298SEXDECIESA",
355            VATEX::ExemptBasedOnArticle295CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI295",
356            VATEX::ExemptBasedOn2Article283CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-AE",
357        }
358    }
359}
360
361impl crate::Description for VATEX {
362    fn description(self) -> &'static str {
363        match self {
364            VATEX::ExemptBasedOnArticle79PointCCouncilDirective2006112Ec => "Exempt based on article 79, point c of Council Directive 2006/112/EC",
365            VATEX::ExemptBasedOnArticle132CouncilDirective2006112Ec => "Exempt based on article 132 of Council Directive 2006/112/EC",
366            VATEX::ExemptBasedOnArticle132Section1ACouncilDirective2006112Ec => "Exempt based on article 132, section 1 (a) of Council Directive 2006/112/EC",
367            VATEX::ExemptBasedOnArticle132Section1BCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (b) of Council Directive 2006/112/EC",
368            VATEX::ExemptBasedOnArticle132Section1CCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (c) of Council Directive 2006/112/EC",
369            VATEX::ExemptBasedOnArticle132Section1DCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (d) of Council Directive 2006/112/EC",
370            VATEX::ExemptBasedOnArticle132Section1ECouncilDirective2006112Ec => "Exempt based on article 132, section 1 (e) of Council Directive 2006/112/EC",
371            VATEX::ExemptBasedOnArticle132Section1FCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (f) of Council Directive 2006/112/EC",
372            VATEX::ExemptBasedOnArticle132Section1GCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (g) of Council Directive 2006/112/EC",
373            VATEX::ExemptBasedOnArticle132Section1HCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (h) of Council Directive 2006/112/EC",
374            VATEX::ExemptBasedOnArticle132Section1ICouncilDirective2006112Ec => "Exempt based on article 132, section 1 (i) of Council Directive 2006/112/EC",
375            VATEX::ExemptBasedOnArticle132Section1JCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (j) of Council Directive 2006/112/EC",
376            VATEX::ExemptBasedOnArticle132Section1KCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (k) of Council Directive 2006/112/EC",
377            VATEX::ExemptBasedOnArticle132Section1LCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (l) of Council Directive 2006/112/EC",
378            VATEX::ExemptBasedOnArticle132Section1MCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (m) of Council Directive 2006/112/EC",
379            VATEX::ExemptBasedOnArticle132Section1NCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (n) of Council Directive 2006/112/EC",
380            VATEX::ExemptBasedOnArticle132Section1OCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (o) of Council Directive 2006/112/EC",
381            VATEX::ExemptBasedOnArticle132Section1PCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (p) of Council Directive 2006/112/EC",
382            VATEX::ExemptBasedOnArticle132Section1QCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (q) of Council Directive 2006/112/EC",
383            VATEX::ExemptBasedOnArticle143CouncilDirective2006112Ec => "Exempt based on article 143 of Council Directive 2006/112/EC",
384            VATEX::ExemptBasedOnArticle143Section1ACouncilDirective2006112Ec => "Exempt based on article 143, section 1 (a) of Council Directive 2006/112/EC",
385            VATEX::ExemptBasedOnArticle143Section1BCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (b) of Council Directive 2006/112/EC",
386            VATEX::ExemptBasedOnArticle143Section1CCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (c) of Council Directive 2006/112/EC",
387            VATEX::ExemptBasedOnArticle143Section1DCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (d) of Council Directive 2006/112/EC",
388            VATEX::ExemptBasedOnArticle143Section1ECouncilDirective2006112Ec => "Exempt based on article 143, section 1 (e) of Council Directive 2006/112/EC",
389            VATEX::ExemptBasedOnArticle143Section1FCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (f) of Council Directive 2006/112/EC",
390            VATEX::ExemptBasedOnArticle143Section1FaCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (fa) of Council Directive 2006/112/EC",
391            VATEX::ExemptBasedOnArticle143Section1GCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (g) of Council Directive 2006/112/EC",
392            VATEX::ExemptBasedOnArticle143Section1HCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (h) of Council Directive 2006/112/EC",
393            VATEX::ExemptBasedOnArticle143Section1ICouncilDirective2006112Ec => "Exempt based on article 143, section 1 (i) of Council Directive 2006/112/EC",
394            VATEX::ExemptBasedOnArticle143Section1JCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (j) of Council Directive 2006/112/EC",
395            VATEX::ExemptBasedOnArticle143Section1KCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (k) of Council Directive 2006/112/EC",
396            VATEX::ExemptBasedOnArticle143Section1LCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (l) of Council Directive 2006/112/EC",
397            VATEX::ExemptBasedOnArticle144CouncilDirective2006112Ec => "Exempt based on article 144 of Council Directive 2006/112/EC",
398            VATEX::ExemptBasedOnArticle146Section1ECouncilDirective2006112Ec => "Exempt based on article 146 section 1 (e) of Council Directive 2006/112/EC",
399            VATEX::ExemptBasedOnArticle148CouncilDirective2006112Ec => "Exempt based on article 148 of Council Directive 2006/112/EC",
400            VATEX::ExemptBasedOnArticle148SectionACouncilDirective2006112Ec => "Exempt based on article 148, section (a) of Council Directive 2006/112/EC",
401            VATEX::ExemptBasedOnArticle148SectionBCouncilDirective2006112Ec => "Exempt based on article 148, section (b) of Council Directive 2006/112/EC",
402            VATEX::ExemptBasedOnArticle148SectionCCouncilDirective2006112Ec => "Exempt based on article 148, section (c) of Council Directive 2006/112/EC",
403            VATEX::ExemptBasedOnArticle148SectionDCouncilDirective2006112Ec => "Exempt based on article 148, section (d) of Council Directive 2006/112/EC",
404            VATEX::ExemptBasedOnArticle148SectionECouncilDirective2006112Ec => "Exempt based on article 148, section (e) of Council Directive 2006/112/EC",
405            VATEX::ExemptBasedOnArticle148SectionFCouncilDirective2006112Ec => "Exempt based on article 148, section (f) of Council Directive 2006/112/EC",
406            VATEX::ExemptBasedOnArticle148SectionGCouncilDirective2006112Ec => "Exempt based on article 148, section (g) of Council Directive 2006/112/EC",
407            VATEX::ExemptBasedOnArticle151CouncilDirective2006112Ec => "Exempt based on article 151 of Council Directive 2006/112/EC",
408            VATEX::ExemptBasedOnArticle151Section1ACouncilDirective2006112Ec => "Exempt based on article 151, section 1 (a) of Council Directive 2006/112/EC ",
409            VATEX::ExemptBasedOnArticle151Section1AaCouncilDirective2006112Ec => "Exempt based on article 151, section 1 (aa) of Council Directive 2006/112/EC ",
410            VATEX::ExemptBasedOnArticle151Section1BCouncilDirective2006112Ec => "Exempt based on article 151, section 1 (b) of Council Directive 2006/112/EC ",
411            VATEX::ExemptBasedOnArticle151Section1CCouncilDirective2006112Ec => "Exempt based on article 151, section 1 (c) of Council Directive 2006/112/EC ",
412            VATEX::ExemptBasedOnArticle151Section1DCouncilDirective2006112Ec => "Exempt based on article 151, section 1 (d) of Council Directive 2006/112/EC ",
413            VATEX::ExemptBasedOnArticle151Section1ECouncilDirective2006112Ec => "Exempt based on article 151, section 1 (e) of Council Directive 2006/112/EC ",
414            VATEX::ExemptBasedOnArticle153CouncilDirective2006112Ec => "Exempt based on article 153 of Council Directive 2006/112/EC",
415            VATEX::ExemptBasedOnArticle159CouncilDirective2006112Ec => "Exempt based on article 159 of Council Directive 2006/112/EC",
416            VATEX::ExemptBasedOnArticle309CouncilDirective2006112Ec => "Exempt based on article 309 of Council Directive 2006/112/EC ",
417            VATEX::ReverseCharge => "Reverse charge",
418            VATEX::TravelAgentsVatScheme => "Travel agents VAT scheme.",
419            VATEX::SecondHandGoodsVatScheme => "Second hand goods VAT scheme.",
420            VATEX::ExportOutsideEu => "Export outside the EU",
421            VATEX::WorksArtVatScheme => "Works of art VAT scheme.",
422            VATEX::IntraCommunitySupply => "Intra-community supply",
423            VATEX::CollectorsItemsAndAntiquesVatScheme => "Collectors items and antiques VAT scheme.",
424            VATEX::NotSubjectToVat => "Not subject to VAT",
425            VATEX::FranceDomesticVatFranchiseInBase => "France domestic VAT franchise in base",
426            VATEX::FranceDomesticCreditNotesWithoutVatDueToSupplierForfeitVatForDiscount => "France domestic Credit Notes without VAT, due to supplier forfeit of VAT for discount",
427            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)",
428            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)",
429            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)",
430            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)",
431            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) ",
432            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)",
433            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)",
434            VATEX::ExemptBasedOnArticle261ACodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on article 261 A of the Code Général des Impôts (CGI ; General tax code)",
435            VATEX::ExemptBasedOnArticle261BCodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on article 261 B of the Code Général des Impôts (CGI ; General tax code)",
436            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)",
437            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)",
438            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)",
439            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)",
440            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)",
441            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)",
442            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 ",
443            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)",
444            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)",
445            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)",
446            VATEX::ExemptBasedOnArticle277ACodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on article 277 A of the Code Général des Impôts (CGI ; General tax code)",
447            VATEX::ExemptBasedOnArticle275CodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on article 275 of the Code Général des Impôts (CGI ; General tax code)",
448            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)",
449            VATEX::ExemptBasedOnArticle295CodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on article 295 of the Code Général des Impôts (CGI ; General tax code)",
450            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)",
451        }
452    }
453}
454
455impl crate::FromCode for VATEX {
456    fn from_code(code: &str) -> Option<Self>
457    where
458        Self: Sized,
459    {
460        match code {
461            "VATEX-EU-79-C" => Some(VATEX::ExemptBasedOnArticle79PointCCouncilDirective2006112Ec),
462            "VATEX-EU-132" => Some(VATEX::ExemptBasedOnArticle132CouncilDirective2006112Ec),
463            "VATEX-EU-132-1A" => Some(VATEX::ExemptBasedOnArticle132Section1ACouncilDirective2006112Ec),
464            "VATEX-EU-132-1B" => Some(VATEX::ExemptBasedOnArticle132Section1BCouncilDirective2006112Ec),
465            "VATEX-EU-132-1C" => Some(VATEX::ExemptBasedOnArticle132Section1CCouncilDirective2006112Ec),
466            "VATEX-EU-132-1D" => Some(VATEX::ExemptBasedOnArticle132Section1DCouncilDirective2006112Ec),
467            "VATEX-EU-132-1E" => Some(VATEX::ExemptBasedOnArticle132Section1ECouncilDirective2006112Ec),
468            "VATEX-EU-132-1F" => Some(VATEX::ExemptBasedOnArticle132Section1FCouncilDirective2006112Ec),
469            "VATEX-EU-132-1G" => Some(VATEX::ExemptBasedOnArticle132Section1GCouncilDirective2006112Ec),
470            "VATEX-EU-132-1H" => Some(VATEX::ExemptBasedOnArticle132Section1HCouncilDirective2006112Ec),
471            "VATEX-EU-132-1I" => Some(VATEX::ExemptBasedOnArticle132Section1ICouncilDirective2006112Ec),
472            "VATEX-EU-132-1J" => Some(VATEX::ExemptBasedOnArticle132Section1JCouncilDirective2006112Ec),
473            "VATEX-EU-132-1K" => Some(VATEX::ExemptBasedOnArticle132Section1KCouncilDirective2006112Ec),
474            "VATEX-EU-132-1L" => Some(VATEX::ExemptBasedOnArticle132Section1LCouncilDirective2006112Ec),
475            "VATEX-EU-132-1M" => Some(VATEX::ExemptBasedOnArticle132Section1MCouncilDirective2006112Ec),
476            "VATEX-EU-132-1N" => Some(VATEX::ExemptBasedOnArticle132Section1NCouncilDirective2006112Ec),
477            "VATEX-EU-132-1O" => Some(VATEX::ExemptBasedOnArticle132Section1OCouncilDirective2006112Ec),
478            "VATEX-EU-132-1P" => Some(VATEX::ExemptBasedOnArticle132Section1PCouncilDirective2006112Ec),
479            "VATEX-EU-132-1Q" => Some(VATEX::ExemptBasedOnArticle132Section1QCouncilDirective2006112Ec),
480            "VATEX-EU-143" => Some(VATEX::ExemptBasedOnArticle143CouncilDirective2006112Ec),
481            "VATEX-EU-143-1A" => Some(VATEX::ExemptBasedOnArticle143Section1ACouncilDirective2006112Ec),
482            "VATEX-EU-143-1B" => Some(VATEX::ExemptBasedOnArticle143Section1BCouncilDirective2006112Ec),
483            "VATEX-EU-143-1C" => Some(VATEX::ExemptBasedOnArticle143Section1CCouncilDirective2006112Ec),
484            "VATEX-EU-143-1D" => Some(VATEX::ExemptBasedOnArticle143Section1DCouncilDirective2006112Ec),
485            "VATEX-EU-143-1E" => Some(VATEX::ExemptBasedOnArticle143Section1ECouncilDirective2006112Ec),
486            "VATEX-EU-143-1F" => Some(VATEX::ExemptBasedOnArticle143Section1FCouncilDirective2006112Ec),
487            "VATEX-EU-143-1FA" => Some(VATEX::ExemptBasedOnArticle143Section1FaCouncilDirective2006112Ec),
488            "VATEX-EU-143-1G" => Some(VATEX::ExemptBasedOnArticle143Section1GCouncilDirective2006112Ec),
489            "VATEX-EU-143-1H" => Some(VATEX::ExemptBasedOnArticle143Section1HCouncilDirective2006112Ec),
490            "VATEX-EU-143-1I" => Some(VATEX::ExemptBasedOnArticle143Section1ICouncilDirective2006112Ec),
491            "VATEX-EU-143-1J" => Some(VATEX::ExemptBasedOnArticle143Section1JCouncilDirective2006112Ec),
492            "VATEX-EU-143-1K" => Some(VATEX::ExemptBasedOnArticle143Section1KCouncilDirective2006112Ec),
493            "VATEX-EU-143-1L" => Some(VATEX::ExemptBasedOnArticle143Section1LCouncilDirective2006112Ec),
494            "VATEX-EU-144" => Some(VATEX::ExemptBasedOnArticle144CouncilDirective2006112Ec),
495            "VATEX-EU-146-1E" => Some(VATEX::ExemptBasedOnArticle146Section1ECouncilDirective2006112Ec),
496            "VATEX-EU-148" => Some(VATEX::ExemptBasedOnArticle148CouncilDirective2006112Ec),
497            "VATEX-EU-148-A" => Some(VATEX::ExemptBasedOnArticle148SectionACouncilDirective2006112Ec),
498            "VATEX-EU-148-B" => Some(VATEX::ExemptBasedOnArticle148SectionBCouncilDirective2006112Ec),
499            "VATEX-EU-148-C" => Some(VATEX::ExemptBasedOnArticle148SectionCCouncilDirective2006112Ec),
500            "VATEX-EU-148-D" => Some(VATEX::ExemptBasedOnArticle148SectionDCouncilDirective2006112Ec),
501            "VATEX-EU-148-E" => Some(VATEX::ExemptBasedOnArticle148SectionECouncilDirective2006112Ec),
502            "VATEX-EU-148-F" => Some(VATEX::ExemptBasedOnArticle148SectionFCouncilDirective2006112Ec),
503            "VATEX-EU-148-G" => Some(VATEX::ExemptBasedOnArticle148SectionGCouncilDirective2006112Ec),
504            "VATEX-EU-151" => Some(VATEX::ExemptBasedOnArticle151CouncilDirective2006112Ec),
505            "VATEX-EU-151-1A" => Some(VATEX::ExemptBasedOnArticle151Section1ACouncilDirective2006112Ec),
506            "VATEX-EU-151-1AA" => Some(VATEX::ExemptBasedOnArticle151Section1AaCouncilDirective2006112Ec),
507            "VATEX-EU-151-1B" => Some(VATEX::ExemptBasedOnArticle151Section1BCouncilDirective2006112Ec),
508            "VATEX-EU-151-1C" => Some(VATEX::ExemptBasedOnArticle151Section1CCouncilDirective2006112Ec),
509            "VATEX-EU-151-1D" => Some(VATEX::ExemptBasedOnArticle151Section1DCouncilDirective2006112Ec),
510            "VATEX-EU-151-1E" => Some(VATEX::ExemptBasedOnArticle151Section1ECouncilDirective2006112Ec),
511            "VATEX-EU-153" => Some(VATEX::ExemptBasedOnArticle153CouncilDirective2006112Ec),
512            "VATEX-EU-159" => Some(VATEX::ExemptBasedOnArticle159CouncilDirective2006112Ec),
513            "VATEX-EU-309" => Some(VATEX::ExemptBasedOnArticle309CouncilDirective2006112Ec),
514            "VATEX-EU-AE" => Some(VATEX::ReverseCharge),
515            "VATEX-EU-D" => Some(VATEX::TravelAgentsVatScheme),
516            "VATEX-EU-F" => Some(VATEX::SecondHandGoodsVatScheme),
517            "VATEX-EU-G" => Some(VATEX::ExportOutsideEu),
518            "VATEX-EU-I" => Some(VATEX::WorksArtVatScheme),
519            "VATEX-EU-IC" => Some(VATEX::IntraCommunitySupply),
520            "VATEX-EU-J" => Some(VATEX::CollectorsItemsAndAntiquesVatScheme),
521            "VATEX-EU-O" => Some(VATEX::NotSubjectToVat),
522            "VATEX-FR-FRANCHISE" => Some(VATEX::FranceDomesticVatFranchiseInBase),
523            "VATEX-FR-CNWVAT" => Some(VATEX::FranceDomesticCreditNotesWithoutVatDueToSupplierForfeitVatForDiscount),
524            "VATEX-FR-CGI261-1" => Some(VATEX::ExemptBasedOn1Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
525            "VATEX-FR-CGI261-2" => Some(VATEX::ExemptBasedOn2Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
526            "VATEX-FR-CGI261-3" => Some(VATEX::ExemptBasedOn3Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
527            "VATEX-FR-CGI261-4" => Some(VATEX::ExemptBasedOn4Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
528            "VATEX-FR-CGI261-5" => Some(VATEX::ExemptBasedOn5Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
529            "VATEX-FR-CGI261-7" => Some(VATEX::ExemptBasedOn7Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
530            "VATEX-FR-CGI261-8" => Some(VATEX::ExemptBasedOn8Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
531            "VATEX-FR-CGI261A" => Some(VATEX::ExemptBasedOnArticle261ACodeGénéralDesImpôtsCgiGeneralTaxCode),
532            "VATEX-FR-CGI261B" => Some(VATEX::ExemptBasedOnArticle261BCodeGénéralDesImpôtsCgiGeneralTaxCode),
533            "VATEX-FR-CGI261C-1" => Some(VATEX::ExemptBasedOn1Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode),
534            "VATEX-FR-CGI261C-2" => Some(VATEX::ExemptBasedOn2Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode),
535            "VATEX-FR-CGI261C-3" => Some(VATEX::ExemptBasedOn3Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode),
536            "VATEX-FR-CGI261D-1" => Some(VATEX::ExemptBasedOn1Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode),
537            "VATEX-FR-CGI261D-1BIS" => Some(VATEX::ExemptBasedOn1BisArticle261DCodeGénéralDesImpôtsCgiGeneralTaxCode),
538            "VATEX-FR-CGI261D-2" => Some(VATEX::ExemptBasedOn2Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode),
539            "VATEX-FR-CGI261D-3" => Some(VATEX::ExemptBasedOn3Article261DCodeGénéralDesImpôtsCgiGeneralTaxCodeExonérationDeTvaArticle261D3DuCodeGénéralDesImpôts),
540            "VATEX-FR-CGI261D-4" => Some(VATEX::ExemptBasedOn4Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode),
541            "VATEX-FR-CGI261E-1" => Some(VATEX::ExemptBasedOn1Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode),
542            "VATEX-FR-CGI261E-2" => Some(VATEX::ExemptBasedOn2Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode),
543            "VATEX-FR-CGI277A" => Some(VATEX::ExemptBasedOnArticle277ACodeGénéralDesImpôtsCgiGeneralTaxCode),
544            "VATEX-FR-CGI275" => Some(VATEX::ExemptBasedOnArticle275CodeGénéralDesImpôtsCgiGeneralTaxCode),
545            "VATEX-FR-298SEXDECIESA" => Some(VATEX::ExemptBasedOnArticle298SexdeciesACodeGénéralDesImpôtsCgiGeneralTaxCode),
546            "VATEX-FR-CGI295" => Some(VATEX::ExemptBasedOnArticle295CodeGénéralDesImpôtsCgiGeneralTaxCode),
547            "VATEX-FR-AE" => Some(VATEX::ExemptBasedOn2Article283CodeGénéralDesImpôtsCgiGeneralTaxCode),
548            _ => None,
549        }
550    }
551}
552
553// Start: (Version) TryFrom VATEX to crate::zugferd_2_3_2::VATEX
554impl std::convert::TryFrom<VATEX> for crate::zugferd_2_3_2::VATEX {
555    type Error = ErrFromVatexToCrateZugferd232Vatex;
556    fn try_from(value: VATEX) -> Result<Self, Self::Error> {
557        match value {
558            VATEX::ExemptBasedOnArticle79PointCCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle79PointCCouncilDirective2006112Ec),
559            VATEX::ExemptBasedOnArticle132CouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132CouncilDirective2006112Ec),
560            VATEX::ExemptBasedOnArticle132Section1ACouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1ACouncilDirective2006112Ec),
561            VATEX::ExemptBasedOnArticle132Section1BCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1BCouncilDirective2006112Ec),
562            VATEX::ExemptBasedOnArticle132Section1CCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1CCouncilDirective2006112Ec),
563            VATEX::ExemptBasedOnArticle132Section1DCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1DCouncilDirective2006112Ec),
564            VATEX::ExemptBasedOnArticle132Section1ECouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1ECouncilDirective2006112Ec),
565            VATEX::ExemptBasedOnArticle132Section1FCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1FCouncilDirective2006112Ec),
566            VATEX::ExemptBasedOnArticle132Section1GCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1GCouncilDirective2006112Ec),
567            VATEX::ExemptBasedOnArticle132Section1HCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1HCouncilDirective2006112Ec),
568            VATEX::ExemptBasedOnArticle132Section1ICouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1ICouncilDirective2006112Ec),
569            VATEX::ExemptBasedOnArticle132Section1JCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1JCouncilDirective2006112Ec),
570            VATEX::ExemptBasedOnArticle132Section1KCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1KCouncilDirective2006112Ec),
571            VATEX::ExemptBasedOnArticle132Section1LCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1LCouncilDirective2006112Ec),
572            VATEX::ExemptBasedOnArticle132Section1MCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1MCouncilDirective2006112Ec),
573            VATEX::ExemptBasedOnArticle132Section1NCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1NCouncilDirective2006112Ec),
574            VATEX::ExemptBasedOnArticle132Section1OCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1OCouncilDirective2006112Ec),
575            VATEX::ExemptBasedOnArticle132Section1PCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1PCouncilDirective2006112Ec),
576            VATEX::ExemptBasedOnArticle132Section1QCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1QCouncilDirective2006112Ec),
577            VATEX::ExemptBasedOnArticle143CouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143CouncilDirective2006112Ec),
578            VATEX::ExemptBasedOnArticle143Section1ACouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1ACouncilDirective2006112Ec),
579            VATEX::ExemptBasedOnArticle143Section1BCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1BCouncilDirective2006112Ec),
580            VATEX::ExemptBasedOnArticle143Section1CCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1CCouncilDirective2006112Ec),
581            VATEX::ExemptBasedOnArticle143Section1DCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1DCouncilDirective2006112Ec),
582            VATEX::ExemptBasedOnArticle143Section1ECouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1ECouncilDirective2006112Ec),
583            VATEX::ExemptBasedOnArticle143Section1FCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1FCouncilDirective2006112Ec),
584            VATEX::ExemptBasedOnArticle143Section1FaCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1FaCouncilDirective2006112Ec),
585            VATEX::ExemptBasedOnArticle143Section1GCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1GCouncilDirective2006112Ec),
586            VATEX::ExemptBasedOnArticle143Section1HCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1HCouncilDirective2006112Ec),
587            VATEX::ExemptBasedOnArticle143Section1ICouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1ICouncilDirective2006112Ec),
588            VATEX::ExemptBasedOnArticle143Section1JCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1JCouncilDirective2006112Ec),
589            VATEX::ExemptBasedOnArticle143Section1KCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1KCouncilDirective2006112Ec),
590            VATEX::ExemptBasedOnArticle143Section1LCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1LCouncilDirective2006112Ec),
591            VATEX::ExemptBasedOnArticle144CouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle144CouncilDirective2006112Ec),
592            VATEX::ExemptBasedOnArticle146Section1ECouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle146Section1ECouncilDirective2006112Ec),
593            VATEX::ExemptBasedOnArticle148CouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle148CouncilDirective2006112Ec),
594            VATEX::ExemptBasedOnArticle148SectionACouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle148SectionACouncilDirective2006112Ec),
595            VATEX::ExemptBasedOnArticle148SectionBCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle148SectionBCouncilDirective2006112Ec),
596            VATEX::ExemptBasedOnArticle148SectionCCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle148SectionCCouncilDirective2006112Ec),
597            VATEX::ExemptBasedOnArticle148SectionDCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle148SectionDCouncilDirective2006112Ec),
598            VATEX::ExemptBasedOnArticle148SectionECouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle148SectionECouncilDirective2006112Ec),
599            VATEX::ExemptBasedOnArticle148SectionFCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle148SectionFCouncilDirective2006112Ec),
600            VATEX::ExemptBasedOnArticle148SectionGCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle148SectionGCouncilDirective2006112Ec),
601            VATEX::ExemptBasedOnArticle151CouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle151CouncilDirective2006112Ec),
602            VATEX::ExemptBasedOnArticle151Section1ACouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle151Section1ACouncilDirective2006112Ec),
603            VATEX::ExemptBasedOnArticle151Section1AaCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle151Section1AaCouncilDirective2006112Ec),
604            VATEX::ExemptBasedOnArticle151Section1BCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle151Section1BCouncilDirective2006112Ec),
605            VATEX::ExemptBasedOnArticle151Section1CCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle151Section1CCouncilDirective2006112Ec),
606            VATEX::ExemptBasedOnArticle151Section1DCouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle151Section1DCouncilDirective2006112Ec),
607            VATEX::ExemptBasedOnArticle151Section1ECouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle151Section1ECouncilDirective2006112Ec),
608            VATEX::ExemptBasedOnArticle159CouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle159CouncilDirective2006112Ec),
609            VATEX::ExemptBasedOnArticle309CouncilDirective2006112Ec => Ok(crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle309CouncilDirective2006112Ec),
610            VATEX::ReverseCharge => Ok(crate::zugferd_2_3_2::VATEX::ReverseCharge),
611            VATEX::TravelAgentsVatScheme => Ok(crate::zugferd_2_3_2::VATEX::TravelAgentsVatScheme),
612            VATEX::SecondHandGoodsVatScheme => Ok(crate::zugferd_2_3_2::VATEX::SecondHandGoodsVatScheme),
613            VATEX::ExportOutsideEu => Ok(crate::zugferd_2_3_2::VATEX::ExportOutsideEu),
614            VATEX::WorksArtVatScheme => Ok(crate::zugferd_2_3_2::VATEX::WorksArtVatScheme),
615            VATEX::IntraCommunitySupply => Ok(crate::zugferd_2_3_2::VATEX::IntraCommunitySupply),
616            VATEX::CollectorsItemsAndAntiquesVatScheme => Ok(crate::zugferd_2_3_2::VATEX::CollectorsItemsAndAntiquesVatScheme),
617            VATEX::NotSubjectToVat => Ok(crate::zugferd_2_3_2::VATEX::NotSubjectToVat),
618            VATEX::FranceDomesticVatFranchiseInBase => Ok(crate::zugferd_2_3_2::VATEX::FranceDomesticVatFranchiseInBase),
619            VATEX::FranceDomesticCreditNotesWithoutVatDueToSupplierForfeitVatForDiscount => Ok(crate::zugferd_2_3_2::VATEX::FranceDomesticCreditNotesWithoutVatDueToSupplierForfeitVatForDiscount),
620            VATEX::ExemptBasedOnArticle153CouncilDirective2006112Ec => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOnArticle153CouncilDirective2006112Ec),
621            VATEX::ExemptBasedOn1Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn1Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
622            VATEX::ExemptBasedOn2Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn2Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
623            VATEX::ExemptBasedOn3Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn3Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
624            VATEX::ExemptBasedOn4Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn4Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
625            VATEX::ExemptBasedOn5Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn5Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
626            VATEX::ExemptBasedOn7Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn7Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
627            VATEX::ExemptBasedOn8Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn8Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
628            VATEX::ExemptBasedOnArticle261ACodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOnArticle261ACodeGénéralDesImpôtsCgiGeneralTaxCode),
629            VATEX::ExemptBasedOnArticle261BCodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOnArticle261BCodeGénéralDesImpôtsCgiGeneralTaxCode),
630            VATEX::ExemptBasedOn1Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn1Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode),
631            VATEX::ExemptBasedOn2Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn2Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode),
632            VATEX::ExemptBasedOn3Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn3Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode),
633            VATEX::ExemptBasedOn1Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn1Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode),
634            VATEX::ExemptBasedOn1BisArticle261DCodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn1BisArticle261DCodeGénéralDesImpôtsCgiGeneralTaxCode),
635            VATEX::ExemptBasedOn2Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn2Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode),
636            VATEX::ExemptBasedOn3Article261DCodeGénéralDesImpôtsCgiGeneralTaxCodeExonérationDeTvaArticle261D3DuCodeGénéralDesImpôts => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn3Article261DCodeGénéralDesImpôtsCgiGeneralTaxCodeExonérationDeTvaArticle261D3DuCodeGénéralDesImpôts),
637            VATEX::ExemptBasedOn4Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn4Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode),
638            VATEX::ExemptBasedOn1Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn1Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode),
639            VATEX::ExemptBasedOn2Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn2Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode),
640            VATEX::ExemptBasedOnArticle277ACodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOnArticle277ACodeGénéralDesImpôtsCgiGeneralTaxCode),
641            VATEX::ExemptBasedOnArticle275CodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOnArticle275CodeGénéralDesImpôtsCgiGeneralTaxCode),
642            VATEX::ExemptBasedOnArticle298SexdeciesACodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOnArticle298SexdeciesACodeGénéralDesImpôtsCgiGeneralTaxCode),
643            VATEX::ExemptBasedOnArticle295CodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOnArticle295CodeGénéralDesImpôtsCgiGeneralTaxCode),
644            VATEX::ExemptBasedOn2Article283CodeGénéralDesImpôtsCgiGeneralTaxCode => Err(ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn2Article283CodeGénéralDesImpôtsCgiGeneralTaxCode),
645        }
646    }
647}
648
649/// All the variants of VATEX that are not matched to any variant of crate::zugferd_2_3_2::VATEX
650#[derive(Debug, PartialEq, Eq, Hash)]
651pub enum ErrFromVatexToCrateZugferd232Vatex {
652    ExemptBasedOnArticle153CouncilDirective2006112Ec,
653    ExemptBasedOn1Article261CodeGénéralDesImpôtsCgiGeneralTaxCode,
654    ExemptBasedOn2Article261CodeGénéralDesImpôtsCgiGeneralTaxCode,
655    ExemptBasedOn3Article261CodeGénéralDesImpôtsCgiGeneralTaxCode,
656    ExemptBasedOn4Article261CodeGénéralDesImpôtsCgiGeneralTaxCode,
657    ExemptBasedOn5Article261CodeGénéralDesImpôtsCgiGeneralTaxCode,
658    ExemptBasedOn7Article261CodeGénéralDesImpôtsCgiGeneralTaxCode,
659    ExemptBasedOn8Article261CodeGénéralDesImpôtsCgiGeneralTaxCode,
660    ExemptBasedOnArticle261ACodeGénéralDesImpôtsCgiGeneralTaxCode,
661    ExemptBasedOnArticle261BCodeGénéralDesImpôtsCgiGeneralTaxCode,
662    ExemptBasedOn1Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode,
663    ExemptBasedOn2Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode,
664    ExemptBasedOn3Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode,
665    ExemptBasedOn1Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode,
666    ExemptBasedOn1BisArticle261DCodeGénéralDesImpôtsCgiGeneralTaxCode,
667    ExemptBasedOn2Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode,
668    ExemptBasedOn3Article261DCodeGénéralDesImpôtsCgiGeneralTaxCodeExonérationDeTvaArticle261D3DuCodeGénéralDesImpôts,
669    ExemptBasedOn4Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode,
670    ExemptBasedOn1Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode,
671    ExemptBasedOn2Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode,
672    ExemptBasedOnArticle277ACodeGénéralDesImpôtsCgiGeneralTaxCode,
673    ExemptBasedOnArticle275CodeGénéralDesImpôtsCgiGeneralTaxCode,
674    ExemptBasedOnArticle298SexdeciesACodeGénéralDesImpôtsCgiGeneralTaxCode,
675    ExemptBasedOnArticle295CodeGénéralDesImpôtsCgiGeneralTaxCode,
676    ExemptBasedOn2Article283CodeGénéralDesImpôtsCgiGeneralTaxCode,
677}
678
679impl std::fmt::Display for ErrFromVatexToCrateZugferd232Vatex {
680    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
681        match self {
682            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOnArticle153CouncilDirective2006112Ec => write!(f, "ExemptBasedOnArticle153CouncilDirective2006112Ec has no corresponding value in crate::zugferd_2_3_2::VATEX"),
683            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn1Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOn1Article261CodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
684            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn2Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOn2Article261CodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
685            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn3Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOn3Article261CodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
686            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn4Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOn4Article261CodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
687            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn5Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOn5Article261CodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
688            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn7Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOn7Article261CodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
689            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn8Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOn8Article261CodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
690            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOnArticle261ACodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOnArticle261ACodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
691            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOnArticle261BCodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOnArticle261BCodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
692            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn1Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOn1Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
693            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn2Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOn2Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
694            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn3Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOn3Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
695            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn1Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOn1Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
696            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn1BisArticle261DCodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOn1BisArticle261DCodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
697            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn2Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOn2Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
698            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn3Article261DCodeGénéralDesImpôtsCgiGeneralTaxCodeExonérationDeTvaArticle261D3DuCodeGénéralDesImpôts => write!(f, "ExemptBasedOn3Article261DCodeGénéralDesImpôtsCgiGeneralTaxCodeExonérationDeTvaArticle261D3DuCodeGénéralDesImpôts has no corresponding value in crate::zugferd_2_3_2::VATEX"),
699            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn4Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOn4Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
700            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn1Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOn1Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
701            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn2Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOn2Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
702            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOnArticle277ACodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOnArticle277ACodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
703            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOnArticle275CodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOnArticle275CodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
704            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOnArticle298SexdeciesACodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOnArticle298SexdeciesACodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
705            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOnArticle295CodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOnArticle295CodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
706            ErrFromVatexToCrateZugferd232Vatex::ExemptBasedOn2Article283CodeGénéralDesImpôtsCgiGeneralTaxCode => write!(f, "ExemptBasedOn2Article283CodeGénéralDesImpôtsCgiGeneralTaxCode has no corresponding value in crate::zugferd_2_3_2::VATEX"),
707        }
708    }
709}
710
711impl std::error::Error for ErrFromVatexToCrateZugferd232Vatex {}
712
713impl std::convert::TryFrom<crate::zugferd_2_3_2::VATEX> for VATEX {
714    type Error = std::convert::Infallible;
715    fn try_from(value: crate::zugferd_2_3_2::VATEX) -> Result<VATEX, Self::Error> {
716        match value {
717            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle79PointCCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle79PointCCouncilDirective2006112Ec),
718            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132CouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle132CouncilDirective2006112Ec),
719            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1ACouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle132Section1ACouncilDirective2006112Ec),
720            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1BCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle132Section1BCouncilDirective2006112Ec),
721            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1CCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle132Section1CCouncilDirective2006112Ec),
722            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1DCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle132Section1DCouncilDirective2006112Ec),
723            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1ECouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle132Section1ECouncilDirective2006112Ec),
724            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1FCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle132Section1FCouncilDirective2006112Ec),
725            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1GCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle132Section1GCouncilDirective2006112Ec),
726            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1HCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle132Section1HCouncilDirective2006112Ec),
727            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1ICouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle132Section1ICouncilDirective2006112Ec),
728            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1JCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle132Section1JCouncilDirective2006112Ec),
729            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1KCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle132Section1KCouncilDirective2006112Ec),
730            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1LCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle132Section1LCouncilDirective2006112Ec),
731            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1MCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle132Section1MCouncilDirective2006112Ec),
732            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1NCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle132Section1NCouncilDirective2006112Ec),
733            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1OCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle132Section1OCouncilDirective2006112Ec),
734            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1PCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle132Section1PCouncilDirective2006112Ec),
735            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle132Section1QCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle132Section1QCouncilDirective2006112Ec),
736            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143CouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle143CouncilDirective2006112Ec),
737            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1ACouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle143Section1ACouncilDirective2006112Ec),
738            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1BCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle143Section1BCouncilDirective2006112Ec),
739            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1CCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle143Section1CCouncilDirective2006112Ec),
740            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1DCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle143Section1DCouncilDirective2006112Ec),
741            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1ECouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle143Section1ECouncilDirective2006112Ec),
742            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1FCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle143Section1FCouncilDirective2006112Ec),
743            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1FaCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle143Section1FaCouncilDirective2006112Ec),
744            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1GCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle143Section1GCouncilDirective2006112Ec),
745            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1HCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle143Section1HCouncilDirective2006112Ec),
746            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1ICouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle143Section1ICouncilDirective2006112Ec),
747            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1JCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle143Section1JCouncilDirective2006112Ec),
748            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1KCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle143Section1KCouncilDirective2006112Ec),
749            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle143Section1LCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle143Section1LCouncilDirective2006112Ec),
750            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle144CouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle144CouncilDirective2006112Ec),
751            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle146Section1ECouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle146Section1ECouncilDirective2006112Ec),
752            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle148CouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle148CouncilDirective2006112Ec),
753            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle148SectionACouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle148SectionACouncilDirective2006112Ec),
754            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle148SectionBCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle148SectionBCouncilDirective2006112Ec),
755            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle148SectionCCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle148SectionCCouncilDirective2006112Ec),
756            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle148SectionDCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle148SectionDCouncilDirective2006112Ec),
757            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle148SectionECouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle148SectionECouncilDirective2006112Ec),
758            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle148SectionFCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle148SectionFCouncilDirective2006112Ec),
759            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle148SectionGCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle148SectionGCouncilDirective2006112Ec),
760            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle151CouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle151CouncilDirective2006112Ec),
761            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle151Section1ACouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle151Section1ACouncilDirective2006112Ec),
762            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle151Section1AaCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle151Section1AaCouncilDirective2006112Ec),
763            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle151Section1BCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle151Section1BCouncilDirective2006112Ec),
764            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle151Section1CCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle151Section1CCouncilDirective2006112Ec),
765            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle151Section1DCouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle151Section1DCouncilDirective2006112Ec),
766            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle151Section1ECouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle151Section1ECouncilDirective2006112Ec),
767            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle159CouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle159CouncilDirective2006112Ec),
768            crate::zugferd_2_3_2::VATEX::ExemptBasedOnArticle309CouncilDirective2006112Ec => Ok(VATEX::ExemptBasedOnArticle309CouncilDirective2006112Ec),
769            crate::zugferd_2_3_2::VATEX::ReverseCharge => Ok(VATEX::ReverseCharge),
770            crate::zugferd_2_3_2::VATEX::TravelAgentsVatScheme => Ok(VATEX::TravelAgentsVatScheme),
771            crate::zugferd_2_3_2::VATEX::SecondHandGoodsVatScheme => Ok(VATEX::SecondHandGoodsVatScheme),
772            crate::zugferd_2_3_2::VATEX::ExportOutsideEu => Ok(VATEX::ExportOutsideEu),
773            crate::zugferd_2_3_2::VATEX::WorksArtVatScheme => Ok(VATEX::WorksArtVatScheme),
774            crate::zugferd_2_3_2::VATEX::IntraCommunitySupply => Ok(VATEX::IntraCommunitySupply),
775            crate::zugferd_2_3_2::VATEX::CollectorsItemsAndAntiquesVatScheme => Ok(VATEX::CollectorsItemsAndAntiquesVatScheme),
776            crate::zugferd_2_3_2::VATEX::NotSubjectToVat => Ok(VATEX::NotSubjectToVat),
777            crate::zugferd_2_3_2::VATEX::FranceDomesticVatFranchiseInBase => Ok(VATEX::FranceDomesticVatFranchiseInBase),
778            crate::zugferd_2_3_2::VATEX::FranceDomesticCreditNotesWithoutVatDueToSupplierForfeitVatForDiscount => Ok(VATEX::FranceDomesticCreditNotesWithoutVatDueToSupplierForfeitVatForDiscount),
779
780        }
781    }
782}
783// End: (Version) TryFrom crate::zugferd_2_3_2::VATEX to VATEX