1#![allow(non_camel_case_types)]
2
3#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4#[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Clone, Copy, Hash)]
5pub enum VATEX {
6 ExemptBasedOnArticle79PointCCouncilDirective2006112Ec,
10 ExemptBasedOnArticle132CouncilDirective2006112Ec,
12 ExemptBasedOnArticle132Section1ACouncilDirective2006112Ec,
14 ExemptBasedOnArticle132Section1BCouncilDirective2006112Ec,
16 ExemptBasedOnArticle132Section1CCouncilDirective2006112Ec,
18 ExemptBasedOnArticle132Section1DCouncilDirective2006112Ec,
20 ExemptBasedOnArticle132Section1ECouncilDirective2006112Ec,
22 ExemptBasedOnArticle132Section1FCouncilDirective2006112Ec,
24 ExemptBasedOnArticle132Section1GCouncilDirective2006112Ec,
26 ExemptBasedOnArticle132Section1HCouncilDirective2006112Ec,
28 ExemptBasedOnArticle132Section1ICouncilDirective2006112Ec,
30 ExemptBasedOnArticle132Section1JCouncilDirective2006112Ec,
32 ExemptBasedOnArticle132Section1KCouncilDirective2006112Ec,
34 ExemptBasedOnArticle132Section1LCouncilDirective2006112Ec,
36 ExemptBasedOnArticle132Section1MCouncilDirective2006112Ec,
38 ExemptBasedOnArticle132Section1NCouncilDirective2006112Ec,
40 ExemptBasedOnArticle132Section1OCouncilDirective2006112Ec,
42 ExemptBasedOnArticle132Section1PCouncilDirective2006112Ec,
44 ExemptBasedOnArticle132Section1QCouncilDirective2006112Ec,
46 ExemptBasedOnArticle143CouncilDirective2006112Ec,
48 ExemptBasedOnArticle143Section1ACouncilDirective2006112Ec,
50 ExemptBasedOnArticle143Section1BCouncilDirective2006112Ec,
52 ExemptBasedOnArticle143Section1CCouncilDirective2006112Ec,
54 ExemptBasedOnArticle143Section1DCouncilDirective2006112Ec,
56 ExemptBasedOnArticle143Section1ECouncilDirective2006112Ec,
58 ExemptBasedOnArticle143Section1FCouncilDirective2006112Ec,
60 ExemptBasedOnArticle143Section1FaCouncilDirective2006112Ec,
62 ExemptBasedOnArticle143Section1GCouncilDirective2006112Ec,
64 ExemptBasedOnArticle143Section1HCouncilDirective2006112Ec,
66 ExemptBasedOnArticle143Section1ICouncilDirective2006112Ec,
68 ExemptBasedOnArticle143Section1JCouncilDirective2006112Ec,
70 ExemptBasedOnArticle143Section1KCouncilDirective2006112Ec,
72 ExemptBasedOnArticle143Section1LCouncilDirective2006112Ec,
74 ExemptBasedOnArticle144CouncilDirective2006112Ec,
76 ExemptBasedOnArticle146Section1ECouncilDirective2006112Ec,
78 ExemptBasedOnArticle148CouncilDirective2006112Ec,
80 ExemptBasedOnArticle148SectionACouncilDirective2006112Ec,
82 ExemptBasedOnArticle148SectionBCouncilDirective2006112Ec,
84 ExemptBasedOnArticle148SectionCCouncilDirective2006112Ec,
86 ExemptBasedOnArticle148SectionDCouncilDirective2006112Ec,
88 ExemptBasedOnArticle148SectionECouncilDirective2006112Ec,
90 ExemptBasedOnArticle148SectionFCouncilDirective2006112Ec,
92 ExemptBasedOnArticle148SectionGCouncilDirective2006112Ec,
94 ExemptBasedOnArticle151CouncilDirective2006112Ec,
96 ExemptBasedOnArticle151Section1ACouncilDirective2006112Ec,
98 ExemptBasedOnArticle151Section1AaCouncilDirective2006112Ec,
100 ExemptBasedOnArticle151Section1BCouncilDirective2006112Ec,
102 ExemptBasedOnArticle151Section1CCouncilDirective2006112Ec,
104 ExemptBasedOnArticle151Section1DCouncilDirective2006112Ec,
106 ExemptBasedOnArticle151Section1ECouncilDirective2006112Ec,
108 ExemptBasedOnArticle153CouncilDirective2006112Ec,
110 ExemptBasedOnArticle159CouncilDirective2006112Ec,
112 ExemptBasedOnArticle309CouncilDirective2006112Ec,
114 ReverseCharge,
118 TravelAgentsVatScheme,
122 SecondHandGoodsVatScheme,
126 ExportOutsideEu,
130 WorksArtVatScheme,
134 IntraCommunitySupply,
138 CollectorsItemsAndAntiquesVatScheme,
142 NotSubjectToVat,
146 FranceDomesticVatFranchiseInBase,
150 FranceDomesticCreditNotesWithoutVatDueToSupplierForfeitVatForDiscount,
154 ExemptBasedOn1Article261CodeGénéralDesImpôtsCgiGeneralTaxCode,
158 ExemptBasedOn2Article261CodeGénéralDesImpôtsCgiGeneralTaxCode,
162 ExemptBasedOn3Article261CodeGénéralDesImpôtsCgiGeneralTaxCode,
166 ExemptBasedOn4Article261CodeGénéralDesImpôtsCgiGeneralTaxCode,
170 ExemptBasedOn5Article261CodeGénéralDesImpôtsCgiGeneralTaxCode,
174 ExemptBasedOn7Article261CodeGénéralDesImpôtsCgiGeneralTaxCode,
178 ExemptBasedOn8Article261CodeGénéralDesImpôtsCgiGeneralTaxCode,
182 ExemptBasedOnArticle261ACodeGénéralDesImpôtsCgiGeneralTaxCode,
186 ExemptBasedOnArticle261BCodeGénéralDesImpôtsCgiGeneralTaxCode,
190 ExemptBasedOn1Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode,
194 ExemptBasedOn2Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode,
198 ExemptBasedOn3Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode,
202 ExemptBasedOn1Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode,
206 ExemptBasedOn1BisArticle261DCodeGénéralDesImpôtsCgiGeneralTaxCode,
210 ExemptBasedOn2Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode,
214 ExemptBasedOn3Article261DCodeGénéralDesImpôtsCgiGeneralTaxCodeExonérationDeTvaArticle261D3DuCodeGénéralDesImpôts,
218 ExemptBasedOn4Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode,
222 ExemptBasedOn1Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode,
226 ExemptBasedOn2Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode,
230 ExemptBasedOnArticle277ACodeGénéralDesImpôtsCgiGeneralTaxCode,
234 ExemptBasedOnArticle275CodeGénéralDesImpôtsCgiGeneralTaxCode,
238 ExemptBasedOnArticle298SexdeciesACodeGénéralDesImpôtsCgiGeneralTaxCode,
242 ExemptBasedOnArticle295CodeGénéralDesImpôtsCgiGeneralTaxCode,
246 ExemptBasedOn2Article283CodeGénéralDesImpôtsCgiGeneralTaxCode,
250}
251
252impl crate::Code for VATEX {
253 fn code(self) -> &'static str {
254 match self {
255 VATEX::ExemptBasedOnArticle79PointCCouncilDirective2006112Ec => "VATEX-EU-79-C",
256 VATEX::ExemptBasedOnArticle132CouncilDirective2006112Ec => "VATEX-EU-132",
257 VATEX::ExemptBasedOnArticle132Section1ACouncilDirective2006112Ec => "VATEX-EU-132-1A",
258 VATEX::ExemptBasedOnArticle132Section1BCouncilDirective2006112Ec => "VATEX-EU-132-1B",
259 VATEX::ExemptBasedOnArticle132Section1CCouncilDirective2006112Ec => "VATEX-EU-132-1C",
260 VATEX::ExemptBasedOnArticle132Section1DCouncilDirective2006112Ec => "VATEX-EU-132-1D",
261 VATEX::ExemptBasedOnArticle132Section1ECouncilDirective2006112Ec => "VATEX-EU-132-1E",
262 VATEX::ExemptBasedOnArticle132Section1FCouncilDirective2006112Ec => "VATEX-EU-132-1F",
263 VATEX::ExemptBasedOnArticle132Section1GCouncilDirective2006112Ec => "VATEX-EU-132-1G",
264 VATEX::ExemptBasedOnArticle132Section1HCouncilDirective2006112Ec => "VATEX-EU-132-1H",
265 VATEX::ExemptBasedOnArticle132Section1ICouncilDirective2006112Ec => "VATEX-EU-132-1I",
266 VATEX::ExemptBasedOnArticle132Section1JCouncilDirective2006112Ec => "VATEX-EU-132-1J",
267 VATEX::ExemptBasedOnArticle132Section1KCouncilDirective2006112Ec => "VATEX-EU-132-1K",
268 VATEX::ExemptBasedOnArticle132Section1LCouncilDirective2006112Ec => "VATEX-EU-132-1L",
269 VATEX::ExemptBasedOnArticle132Section1MCouncilDirective2006112Ec => "VATEX-EU-132-1M",
270 VATEX::ExemptBasedOnArticle132Section1NCouncilDirective2006112Ec => "VATEX-EU-132-1N",
271 VATEX::ExemptBasedOnArticle132Section1OCouncilDirective2006112Ec => "VATEX-EU-132-1O",
272 VATEX::ExemptBasedOnArticle132Section1PCouncilDirective2006112Ec => "VATEX-EU-132-1P",
273 VATEX::ExemptBasedOnArticle132Section1QCouncilDirective2006112Ec => "VATEX-EU-132-1Q",
274 VATEX::ExemptBasedOnArticle143CouncilDirective2006112Ec => "VATEX-EU-143",
275 VATEX::ExemptBasedOnArticle143Section1ACouncilDirective2006112Ec => "VATEX-EU-143-1A",
276 VATEX::ExemptBasedOnArticle143Section1BCouncilDirective2006112Ec => "VATEX-EU-143-1B",
277 VATEX::ExemptBasedOnArticle143Section1CCouncilDirective2006112Ec => "VATEX-EU-143-1C",
278 VATEX::ExemptBasedOnArticle143Section1DCouncilDirective2006112Ec => "VATEX-EU-143-1D",
279 VATEX::ExemptBasedOnArticle143Section1ECouncilDirective2006112Ec => "VATEX-EU-143-1E",
280 VATEX::ExemptBasedOnArticle143Section1FCouncilDirective2006112Ec => "VATEX-EU-143-1F",
281 VATEX::ExemptBasedOnArticle143Section1FaCouncilDirective2006112Ec => "VATEX-EU-143-1FA",
282 VATEX::ExemptBasedOnArticle143Section1GCouncilDirective2006112Ec => "VATEX-EU-143-1G",
283 VATEX::ExemptBasedOnArticle143Section1HCouncilDirective2006112Ec => "VATEX-EU-143-1H",
284 VATEX::ExemptBasedOnArticle143Section1ICouncilDirective2006112Ec => "VATEX-EU-143-1I",
285 VATEX::ExemptBasedOnArticle143Section1JCouncilDirective2006112Ec => "VATEX-EU-143-1J",
286 VATEX::ExemptBasedOnArticle143Section1KCouncilDirective2006112Ec => "VATEX-EU-143-1K",
287 VATEX::ExemptBasedOnArticle143Section1LCouncilDirective2006112Ec => "VATEX-EU-143-1L",
288 VATEX::ExemptBasedOnArticle144CouncilDirective2006112Ec => "VATEX-EU-144",
289 VATEX::ExemptBasedOnArticle146Section1ECouncilDirective2006112Ec => "VATEX-EU-146-1E",
290 VATEX::ExemptBasedOnArticle148CouncilDirective2006112Ec => "VATEX-EU-148",
291 VATEX::ExemptBasedOnArticle148SectionACouncilDirective2006112Ec => "VATEX-EU-148-A",
292 VATEX::ExemptBasedOnArticle148SectionBCouncilDirective2006112Ec => "VATEX-EU-148-B",
293 VATEX::ExemptBasedOnArticle148SectionCCouncilDirective2006112Ec => "VATEX-EU-148-C",
294 VATEX::ExemptBasedOnArticle148SectionDCouncilDirective2006112Ec => "VATEX-EU-148-D",
295 VATEX::ExemptBasedOnArticle148SectionECouncilDirective2006112Ec => "VATEX-EU-148-E",
296 VATEX::ExemptBasedOnArticle148SectionFCouncilDirective2006112Ec => "VATEX-EU-148-F",
297 VATEX::ExemptBasedOnArticle148SectionGCouncilDirective2006112Ec => "VATEX-EU-148-G",
298 VATEX::ExemptBasedOnArticle151CouncilDirective2006112Ec => "VATEX-EU-151",
299 VATEX::ExemptBasedOnArticle151Section1ACouncilDirective2006112Ec => "VATEX-EU-151-1A",
300 VATEX::ExemptBasedOnArticle151Section1AaCouncilDirective2006112Ec => "VATEX-EU-151-1AA",
301 VATEX::ExemptBasedOnArticle151Section1BCouncilDirective2006112Ec => "VATEX-EU-151-1B",
302 VATEX::ExemptBasedOnArticle151Section1CCouncilDirective2006112Ec => "VATEX-EU-151-1C",
303 VATEX::ExemptBasedOnArticle151Section1DCouncilDirective2006112Ec => "VATEX-EU-151-1D",
304 VATEX::ExemptBasedOnArticle151Section1ECouncilDirective2006112Ec => "VATEX-EU-151-1E",
305 VATEX::ExemptBasedOnArticle153CouncilDirective2006112Ec => "VATEX-EU-153",
306 VATEX::ExemptBasedOnArticle159CouncilDirective2006112Ec => "VATEX-EU-159",
307 VATEX::ExemptBasedOnArticle309CouncilDirective2006112Ec => "VATEX-EU-309",
308 VATEX::ReverseCharge => "VATEX-EU-AE",
309 VATEX::TravelAgentsVatScheme => "VATEX-EU-D",
310 VATEX::SecondHandGoodsVatScheme => "VATEX-EU-F",
311 VATEX::ExportOutsideEu => "VATEX-EU-G",
312 VATEX::WorksArtVatScheme => "VATEX-EU-I",
313 VATEX::IntraCommunitySupply => "VATEX-EU-IC",
314 VATEX::CollectorsItemsAndAntiquesVatScheme => "VATEX-EU-J",
315 VATEX::NotSubjectToVat => "VATEX-EU-O",
316 VATEX::FranceDomesticVatFranchiseInBase => "VATEX-FR-FRANCHISE",
317 VATEX::FranceDomesticCreditNotesWithoutVatDueToSupplierForfeitVatForDiscount => "VATEX-FR-CNWVAT",
318 VATEX::ExemptBasedOn1Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261-1",
319 VATEX::ExemptBasedOn2Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261-2",
320 VATEX::ExemptBasedOn3Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261-3",
321 VATEX::ExemptBasedOn4Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261-4",
322 VATEX::ExemptBasedOn5Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261-5",
323 VATEX::ExemptBasedOn7Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261-7",
324 VATEX::ExemptBasedOn8Article261CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261-8",
325 VATEX::ExemptBasedOnArticle261ACodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261A",
326 VATEX::ExemptBasedOnArticle261BCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261B",
327 VATEX::ExemptBasedOn1Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261C-1",
328 VATEX::ExemptBasedOn2Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261C-2",
329 VATEX::ExemptBasedOn3Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261C-3",
330 VATEX::ExemptBasedOn1Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261D-1",
331 VATEX::ExemptBasedOn1BisArticle261DCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261D-1BIS",
332 VATEX::ExemptBasedOn2Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261D-2",
333 VATEX::ExemptBasedOn3Article261DCodeGénéralDesImpôtsCgiGeneralTaxCodeExonérationDeTvaArticle261D3DuCodeGénéralDesImpôts => "VATEX-FR-CGI261D-3",
334 VATEX::ExemptBasedOn4Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261D-4",
335 VATEX::ExemptBasedOn1Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261E-1",
336 VATEX::ExemptBasedOn2Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI261E-2",
337 VATEX::ExemptBasedOnArticle277ACodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI277A",
338 VATEX::ExemptBasedOnArticle275CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI275",
339 VATEX::ExemptBasedOnArticle298SexdeciesACodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-298SEXDECIESA",
340 VATEX::ExemptBasedOnArticle295CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-CGI295",
341 VATEX::ExemptBasedOn2Article283CodeGénéralDesImpôtsCgiGeneralTaxCode => "VATEX-FR-AE",
342 }
343 }
344}
345
346impl crate::Description for VATEX {
347 fn description(self) -> &'static str {
348 match self {
349 VATEX::ExemptBasedOnArticle79PointCCouncilDirective2006112Ec => "Exempt based on article 79, point c of Council Directive 2006/112/EC",
350 VATEX::ExemptBasedOnArticle132CouncilDirective2006112Ec => "Exempt based on article 132 of Council Directive 2006/112/EC",
351 VATEX::ExemptBasedOnArticle132Section1ACouncilDirective2006112Ec => "Exempt based on article 132, section 1 (a) of Council Directive 2006/112/EC",
352 VATEX::ExemptBasedOnArticle132Section1BCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (b) of Council Directive 2006/112/EC",
353 VATEX::ExemptBasedOnArticle132Section1CCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (c) of Council Directive 2006/112/EC",
354 VATEX::ExemptBasedOnArticle132Section1DCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (d) of Council Directive 2006/112/EC",
355 VATEX::ExemptBasedOnArticle132Section1ECouncilDirective2006112Ec => "Exempt based on article 132, section 1 (e) of Council Directive 2006/112/EC",
356 VATEX::ExemptBasedOnArticle132Section1FCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (f) of Council Directive 2006/112/EC",
357 VATEX::ExemptBasedOnArticle132Section1GCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (g) of Council Directive 2006/112/EC",
358 VATEX::ExemptBasedOnArticle132Section1HCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (h) of Council Directive 2006/112/EC",
359 VATEX::ExemptBasedOnArticle132Section1ICouncilDirective2006112Ec => "Exempt based on article 132, section 1 (i) of Council Directive 2006/112/EC",
360 VATEX::ExemptBasedOnArticle132Section1JCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (j) of Council Directive 2006/112/EC",
361 VATEX::ExemptBasedOnArticle132Section1KCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (k) of Council Directive 2006/112/EC",
362 VATEX::ExemptBasedOnArticle132Section1LCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (l) of Council Directive 2006/112/EC",
363 VATEX::ExemptBasedOnArticle132Section1MCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (m) of Council Directive 2006/112/EC",
364 VATEX::ExemptBasedOnArticle132Section1NCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (n) of Council Directive 2006/112/EC",
365 VATEX::ExemptBasedOnArticle132Section1OCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (o) of Council Directive 2006/112/EC",
366 VATEX::ExemptBasedOnArticle132Section1PCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (p) of Council Directive 2006/112/EC",
367 VATEX::ExemptBasedOnArticle132Section1QCouncilDirective2006112Ec => "Exempt based on article 132, section 1 (q) of Council Directive 2006/112/EC",
368 VATEX::ExemptBasedOnArticle143CouncilDirective2006112Ec => "Exempt based on article 143 of Council Directive 2006/112/EC",
369 VATEX::ExemptBasedOnArticle143Section1ACouncilDirective2006112Ec => "Exempt based on article 143, section 1 (a) of Council Directive 2006/112/EC",
370 VATEX::ExemptBasedOnArticle143Section1BCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (b) of Council Directive 2006/112/EC",
371 VATEX::ExemptBasedOnArticle143Section1CCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (c) of Council Directive 2006/112/EC",
372 VATEX::ExemptBasedOnArticle143Section1DCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (d) of Council Directive 2006/112/EC",
373 VATEX::ExemptBasedOnArticle143Section1ECouncilDirective2006112Ec => "Exempt based on article 143, section 1 (e) of Council Directive 2006/112/EC",
374 VATEX::ExemptBasedOnArticle143Section1FCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (f) of Council Directive 2006/112/EC",
375 VATEX::ExemptBasedOnArticle143Section1FaCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (fa) of Council Directive 2006/112/EC",
376 VATEX::ExemptBasedOnArticle143Section1GCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (g) of Council Directive 2006/112/EC",
377 VATEX::ExemptBasedOnArticle143Section1HCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (h) of Council Directive 2006/112/EC",
378 VATEX::ExemptBasedOnArticle143Section1ICouncilDirective2006112Ec => "Exempt based on article 143, section 1 (i) of Council Directive 2006/112/EC",
379 VATEX::ExemptBasedOnArticle143Section1JCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (j) of Council Directive 2006/112/EC",
380 VATEX::ExemptBasedOnArticle143Section1KCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (k) of Council Directive 2006/112/EC",
381 VATEX::ExemptBasedOnArticle143Section1LCouncilDirective2006112Ec => "Exempt based on article 143, section 1 (l) of Council Directive 2006/112/EC",
382 VATEX::ExemptBasedOnArticle144CouncilDirective2006112Ec => "Exempt based on article 144 of Council Directive 2006/112/EC",
383 VATEX::ExemptBasedOnArticle146Section1ECouncilDirective2006112Ec => "Exempt based on article 146 section 1 (e) of Council Directive 2006/112/EC",
384 VATEX::ExemptBasedOnArticle148CouncilDirective2006112Ec => "Exempt based on article 148 of Council Directive 2006/112/EC",
385 VATEX::ExemptBasedOnArticle148SectionACouncilDirective2006112Ec => "Exempt based on article 148, section (a) of Council Directive 2006/112/EC",
386 VATEX::ExemptBasedOnArticle148SectionBCouncilDirective2006112Ec => "Exempt based on article 148, section (b) of Council Directive 2006/112/EC",
387 VATEX::ExemptBasedOnArticle148SectionCCouncilDirective2006112Ec => "Exempt based on article 148, section (c) of Council Directive 2006/112/EC",
388 VATEX::ExemptBasedOnArticle148SectionDCouncilDirective2006112Ec => "Exempt based on article 148, section (d) of Council Directive 2006/112/EC",
389 VATEX::ExemptBasedOnArticle148SectionECouncilDirective2006112Ec => "Exempt based on article 148, section (e) of Council Directive 2006/112/EC",
390 VATEX::ExemptBasedOnArticle148SectionFCouncilDirective2006112Ec => "Exempt based on article 148, section (f) of Council Directive 2006/112/EC",
391 VATEX::ExemptBasedOnArticle148SectionGCouncilDirective2006112Ec => "Exempt based on article 148, section (g) of Council Directive 2006/112/EC",
392 VATEX::ExemptBasedOnArticle151CouncilDirective2006112Ec => "Exempt based on article 151 of Council Directive 2006/112/EC",
393 VATEX::ExemptBasedOnArticle151Section1ACouncilDirective2006112Ec => "Exempt based on article 151, section 1 (a) of Council Directive 2006/112/EC ",
394 VATEX::ExemptBasedOnArticle151Section1AaCouncilDirective2006112Ec => "Exempt based on article 151, section 1 (aa) of Council Directive 2006/112/EC ",
395 VATEX::ExemptBasedOnArticle151Section1BCouncilDirective2006112Ec => "Exempt based on article 151, section 1 (b) of Council Directive 2006/112/EC ",
396 VATEX::ExemptBasedOnArticle151Section1CCouncilDirective2006112Ec => "Exempt based on article 151, section 1 (c) of Council Directive 2006/112/EC ",
397 VATEX::ExemptBasedOnArticle151Section1DCouncilDirective2006112Ec => "Exempt based on article 151, section 1 (d) of Council Directive 2006/112/EC ",
398 VATEX::ExemptBasedOnArticle151Section1ECouncilDirective2006112Ec => "Exempt based on article 151, section 1 (e) of Council Directive 2006/112/EC ",
399 VATEX::ExemptBasedOnArticle153CouncilDirective2006112Ec => "Exempt based on article 153 of Council Directive 2006/112/EC",
400 VATEX::ExemptBasedOnArticle159CouncilDirective2006112Ec => "Exempt based on article 159 of Council Directive 2006/112/EC",
401 VATEX::ExemptBasedOnArticle309CouncilDirective2006112Ec => "Exempt based on article 309 of Council Directive 2006/112/EC ",
402 VATEX::ReverseCharge => "Reverse charge",
403 VATEX::TravelAgentsVatScheme => "Travel agents VAT scheme.",
404 VATEX::SecondHandGoodsVatScheme => "Second hand goods VAT scheme.",
405 VATEX::ExportOutsideEu => "Export outside the EU",
406 VATEX::WorksArtVatScheme => "Works of art VAT scheme.",
407 VATEX::IntraCommunitySupply => "Intra-community supply",
408 VATEX::CollectorsItemsAndAntiquesVatScheme => "Collectors items and antiques VAT scheme.",
409 VATEX::NotSubjectToVat => "Not subject to VAT",
410 VATEX::FranceDomesticVatFranchiseInBase => "France domestic VAT franchise in base",
411 VATEX::FranceDomesticCreditNotesWithoutVatDueToSupplierForfeitVatForDiscount => "France domestic Credit Notes without VAT, due to supplier forfeit of VAT for discount",
412 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)",
413 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)",
414 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)",
415 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)",
416 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) ",
417 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)",
418 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)",
419 VATEX::ExemptBasedOnArticle261ACodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on article 261 A of the Code Général des Impôts (CGI ; General tax code)",
420 VATEX::ExemptBasedOnArticle261BCodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on article 261 B of the Code Général des Impôts (CGI ; General tax code)",
421 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)",
422 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)",
423 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)",
424 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)",
425 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)",
426 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)",
427 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 ",
428 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)",
429 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)",
430 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)",
431 VATEX::ExemptBasedOnArticle277ACodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on article 277 A of the Code Général des Impôts (CGI ; General tax code)",
432 VATEX::ExemptBasedOnArticle275CodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on article 275 of the Code Général des Impôts (CGI ; General tax code)",
433 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)",
434 VATEX::ExemptBasedOnArticle295CodeGénéralDesImpôtsCgiGeneralTaxCode => "Exempt based on article 295 of the Code Général des Impôts (CGI ; General tax code)",
435 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)",
436 }
437 }
438}
439
440impl crate::FromCode for VATEX {
441 fn from_code(code: &str) -> Option<Self>
442 where
443 Self: Sized,
444 {
445 match code {
446 "VATEX-EU-79-C" => Some(VATEX::ExemptBasedOnArticle79PointCCouncilDirective2006112Ec),
447 "VATEX-EU-132" => Some(VATEX::ExemptBasedOnArticle132CouncilDirective2006112Ec),
448 "VATEX-EU-132-1A" => Some(VATEX::ExemptBasedOnArticle132Section1ACouncilDirective2006112Ec),
449 "VATEX-EU-132-1B" => Some(VATEX::ExemptBasedOnArticle132Section1BCouncilDirective2006112Ec),
450 "VATEX-EU-132-1C" => Some(VATEX::ExemptBasedOnArticle132Section1CCouncilDirective2006112Ec),
451 "VATEX-EU-132-1D" => Some(VATEX::ExemptBasedOnArticle132Section1DCouncilDirective2006112Ec),
452 "VATEX-EU-132-1E" => Some(VATEX::ExemptBasedOnArticle132Section1ECouncilDirective2006112Ec),
453 "VATEX-EU-132-1F" => Some(VATEX::ExemptBasedOnArticle132Section1FCouncilDirective2006112Ec),
454 "VATEX-EU-132-1G" => Some(VATEX::ExemptBasedOnArticle132Section1GCouncilDirective2006112Ec),
455 "VATEX-EU-132-1H" => Some(VATEX::ExemptBasedOnArticle132Section1HCouncilDirective2006112Ec),
456 "VATEX-EU-132-1I" => Some(VATEX::ExemptBasedOnArticle132Section1ICouncilDirective2006112Ec),
457 "VATEX-EU-132-1J" => Some(VATEX::ExemptBasedOnArticle132Section1JCouncilDirective2006112Ec),
458 "VATEX-EU-132-1K" => Some(VATEX::ExemptBasedOnArticle132Section1KCouncilDirective2006112Ec),
459 "VATEX-EU-132-1L" => Some(VATEX::ExemptBasedOnArticle132Section1LCouncilDirective2006112Ec),
460 "VATEX-EU-132-1M" => Some(VATEX::ExemptBasedOnArticle132Section1MCouncilDirective2006112Ec),
461 "VATEX-EU-132-1N" => Some(VATEX::ExemptBasedOnArticle132Section1NCouncilDirective2006112Ec),
462 "VATEX-EU-132-1O" => Some(VATEX::ExemptBasedOnArticle132Section1OCouncilDirective2006112Ec),
463 "VATEX-EU-132-1P" => Some(VATEX::ExemptBasedOnArticle132Section1PCouncilDirective2006112Ec),
464 "VATEX-EU-132-1Q" => Some(VATEX::ExemptBasedOnArticle132Section1QCouncilDirective2006112Ec),
465 "VATEX-EU-143" => Some(VATEX::ExemptBasedOnArticle143CouncilDirective2006112Ec),
466 "VATEX-EU-143-1A" => Some(VATEX::ExemptBasedOnArticle143Section1ACouncilDirective2006112Ec),
467 "VATEX-EU-143-1B" => Some(VATEX::ExemptBasedOnArticle143Section1BCouncilDirective2006112Ec),
468 "VATEX-EU-143-1C" => Some(VATEX::ExemptBasedOnArticle143Section1CCouncilDirective2006112Ec),
469 "VATEX-EU-143-1D" => Some(VATEX::ExemptBasedOnArticle143Section1DCouncilDirective2006112Ec),
470 "VATEX-EU-143-1E" => Some(VATEX::ExemptBasedOnArticle143Section1ECouncilDirective2006112Ec),
471 "VATEX-EU-143-1F" => Some(VATEX::ExemptBasedOnArticle143Section1FCouncilDirective2006112Ec),
472 "VATEX-EU-143-1FA" => Some(VATEX::ExemptBasedOnArticle143Section1FaCouncilDirective2006112Ec),
473 "VATEX-EU-143-1G" => Some(VATEX::ExemptBasedOnArticle143Section1GCouncilDirective2006112Ec),
474 "VATEX-EU-143-1H" => Some(VATEX::ExemptBasedOnArticle143Section1HCouncilDirective2006112Ec),
475 "VATEX-EU-143-1I" => Some(VATEX::ExemptBasedOnArticle143Section1ICouncilDirective2006112Ec),
476 "VATEX-EU-143-1J" => Some(VATEX::ExemptBasedOnArticle143Section1JCouncilDirective2006112Ec),
477 "VATEX-EU-143-1K" => Some(VATEX::ExemptBasedOnArticle143Section1KCouncilDirective2006112Ec),
478 "VATEX-EU-143-1L" => Some(VATEX::ExemptBasedOnArticle143Section1LCouncilDirective2006112Ec),
479 "VATEX-EU-144" => Some(VATEX::ExemptBasedOnArticle144CouncilDirective2006112Ec),
480 "VATEX-EU-146-1E" => Some(VATEX::ExemptBasedOnArticle146Section1ECouncilDirective2006112Ec),
481 "VATEX-EU-148" => Some(VATEX::ExemptBasedOnArticle148CouncilDirective2006112Ec),
482 "VATEX-EU-148-A" => Some(VATEX::ExemptBasedOnArticle148SectionACouncilDirective2006112Ec),
483 "VATEX-EU-148-B" => Some(VATEX::ExemptBasedOnArticle148SectionBCouncilDirective2006112Ec),
484 "VATEX-EU-148-C" => Some(VATEX::ExemptBasedOnArticle148SectionCCouncilDirective2006112Ec),
485 "VATEX-EU-148-D" => Some(VATEX::ExemptBasedOnArticle148SectionDCouncilDirective2006112Ec),
486 "VATEX-EU-148-E" => Some(VATEX::ExemptBasedOnArticle148SectionECouncilDirective2006112Ec),
487 "VATEX-EU-148-F" => Some(VATEX::ExemptBasedOnArticle148SectionFCouncilDirective2006112Ec),
488 "VATEX-EU-148-G" => Some(VATEX::ExemptBasedOnArticle148SectionGCouncilDirective2006112Ec),
489 "VATEX-EU-151" => Some(VATEX::ExemptBasedOnArticle151CouncilDirective2006112Ec),
490 "VATEX-EU-151-1A" => Some(VATEX::ExemptBasedOnArticle151Section1ACouncilDirective2006112Ec),
491 "VATEX-EU-151-1AA" => Some(VATEX::ExemptBasedOnArticle151Section1AaCouncilDirective2006112Ec),
492 "VATEX-EU-151-1B" => Some(VATEX::ExemptBasedOnArticle151Section1BCouncilDirective2006112Ec),
493 "VATEX-EU-151-1C" => Some(VATEX::ExemptBasedOnArticle151Section1CCouncilDirective2006112Ec),
494 "VATEX-EU-151-1D" => Some(VATEX::ExemptBasedOnArticle151Section1DCouncilDirective2006112Ec),
495 "VATEX-EU-151-1E" => Some(VATEX::ExemptBasedOnArticle151Section1ECouncilDirective2006112Ec),
496 "VATEX-EU-153" => Some(VATEX::ExemptBasedOnArticle153CouncilDirective2006112Ec),
497 "VATEX-EU-159" => Some(VATEX::ExemptBasedOnArticle159CouncilDirective2006112Ec),
498 "VATEX-EU-309" => Some(VATEX::ExemptBasedOnArticle309CouncilDirective2006112Ec),
499 "VATEX-EU-AE" => Some(VATEX::ReverseCharge),
500 "VATEX-EU-D" => Some(VATEX::TravelAgentsVatScheme),
501 "VATEX-EU-F" => Some(VATEX::SecondHandGoodsVatScheme),
502 "VATEX-EU-G" => Some(VATEX::ExportOutsideEu),
503 "VATEX-EU-I" => Some(VATEX::WorksArtVatScheme),
504 "VATEX-EU-IC" => Some(VATEX::IntraCommunitySupply),
505 "VATEX-EU-J" => Some(VATEX::CollectorsItemsAndAntiquesVatScheme),
506 "VATEX-EU-O" => Some(VATEX::NotSubjectToVat),
507 "VATEX-FR-FRANCHISE" => Some(VATEX::FranceDomesticVatFranchiseInBase),
508 "VATEX-FR-CNWVAT" => Some(VATEX::FranceDomesticCreditNotesWithoutVatDueToSupplierForfeitVatForDiscount),
509 "VATEX-FR-CGI261-1" => Some(VATEX::ExemptBasedOn1Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
510 "VATEX-FR-CGI261-2" => Some(VATEX::ExemptBasedOn2Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
511 "VATEX-FR-CGI261-3" => Some(VATEX::ExemptBasedOn3Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
512 "VATEX-FR-CGI261-4" => Some(VATEX::ExemptBasedOn4Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
513 "VATEX-FR-CGI261-5" => Some(VATEX::ExemptBasedOn5Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
514 "VATEX-FR-CGI261-7" => Some(VATEX::ExemptBasedOn7Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
515 "VATEX-FR-CGI261-8" => Some(VATEX::ExemptBasedOn8Article261CodeGénéralDesImpôtsCgiGeneralTaxCode),
516 "VATEX-FR-CGI261A" => Some(VATEX::ExemptBasedOnArticle261ACodeGénéralDesImpôtsCgiGeneralTaxCode),
517 "VATEX-FR-CGI261B" => Some(VATEX::ExemptBasedOnArticle261BCodeGénéralDesImpôtsCgiGeneralTaxCode),
518 "VATEX-FR-CGI261C-1" => Some(VATEX::ExemptBasedOn1Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode),
519 "VATEX-FR-CGI261C-2" => Some(VATEX::ExemptBasedOn2Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode),
520 "VATEX-FR-CGI261C-3" => Some(VATEX::ExemptBasedOn3Article261CCodeGénéralDesImpôtsCgiGeneralTaxCode),
521 "VATEX-FR-CGI261D-1" => Some(VATEX::ExemptBasedOn1Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode),
522 "VATEX-FR-CGI261D-1BIS" => Some(VATEX::ExemptBasedOn1BisArticle261DCodeGénéralDesImpôtsCgiGeneralTaxCode),
523 "VATEX-FR-CGI261D-2" => Some(VATEX::ExemptBasedOn2Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode),
524 "VATEX-FR-CGI261D-3" => Some(VATEX::ExemptBasedOn3Article261DCodeGénéralDesImpôtsCgiGeneralTaxCodeExonérationDeTvaArticle261D3DuCodeGénéralDesImpôts),
525 "VATEX-FR-CGI261D-4" => Some(VATEX::ExemptBasedOn4Article261DCodeGénéralDesImpôtsCgiGeneralTaxCode),
526 "VATEX-FR-CGI261E-1" => Some(VATEX::ExemptBasedOn1Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode),
527 "VATEX-FR-CGI261E-2" => Some(VATEX::ExemptBasedOn2Article261ECodeGénéralDesImpôtsCgiGeneralTaxCode),
528 "VATEX-FR-CGI277A" => Some(VATEX::ExemptBasedOnArticle277ACodeGénéralDesImpôtsCgiGeneralTaxCode),
529 "VATEX-FR-CGI275" => Some(VATEX::ExemptBasedOnArticle275CodeGénéralDesImpôtsCgiGeneralTaxCode),
530 "VATEX-FR-298SEXDECIESA" => Some(VATEX::ExemptBasedOnArticle298SexdeciesACodeGénéralDesImpôtsCgiGeneralTaxCode),
531 "VATEX-FR-CGI295" => Some(VATEX::ExemptBasedOnArticle295CodeGénéralDesImpôtsCgiGeneralTaxCode),
532 "VATEX-FR-AE" => Some(VATEX::ExemptBasedOn2Article283CodeGénéralDesImpôtsCgiGeneralTaxCode),
533 _ => None,
534 }
535 }
536}