e-invoice-api 0.7.0 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/README.md +5 -5
  4. data/lib/e_invoice_api/client.rb +4 -0
  5. data/lib/e_invoice_api/internal/type/base_model.rb +5 -5
  6. data/lib/e_invoice_api/models/allowance.rb +96 -0
  7. data/lib/e_invoice_api/models/charge.rb +96 -0
  8. data/lib/e_invoice_api/models/document_create_from_pdf_params.rb +32 -0
  9. data/lib/e_invoice_api/models/document_create_from_pdf_response.rb +584 -0
  10. data/lib/e_invoice_api/models/document_response.rb +6 -192
  11. data/lib/e_invoice_api/models/document_validate_params.rb +14 -0
  12. data/lib/e_invoice_api/models/documents/ubl_create_from_ubl_params.rb +22 -0
  13. data/lib/e_invoice_api/models/me_retrieve_params.rb +14 -0
  14. data/lib/e_invoice_api/models/me_retrieve_response.rb +149 -0
  15. data/lib/e_invoice_api/models.rb +10 -0
  16. data/lib/e_invoice_api/resources/documents/ubl.rb +22 -0
  17. data/lib/e_invoice_api/resources/documents.rb +52 -0
  18. data/lib/e_invoice_api/resources/me.rb +32 -0
  19. data/lib/e_invoice_api/version.rb +1 -1
  20. data/lib/e_invoice_api.rb +9 -0
  21. data/rbi/e_invoice_api/client.rbi +3 -0
  22. data/rbi/e_invoice_api/models/allowance.rbi +124 -0
  23. data/rbi/e_invoice_api/models/charge.rbi +122 -0
  24. data/rbi/e_invoice_api/models/document_create_from_pdf_params.rbi +56 -0
  25. data/rbi/e_invoice_api/models/document_create_from_pdf_response.rbi +1014 -0
  26. data/rbi/e_invoice_api/models/document_response.rbi +6 -388
  27. data/rbi/e_invoice_api/models/document_validate_params.rbi +30 -0
  28. data/rbi/e_invoice_api/models/documents/ubl_create_from_ubl_params.rbi +43 -0
  29. data/rbi/e_invoice_api/models/me_retrieve_params.rbi +27 -0
  30. data/rbi/e_invoice_api/models/me_retrieve_response.rbi +195 -0
  31. data/rbi/e_invoice_api/models.rbi +10 -0
  32. data/rbi/e_invoice_api/resources/documents/ubl.rbi +10 -0
  33. data/rbi/e_invoice_api/resources/documents.rbi +34 -0
  34. data/rbi/e_invoice_api/resources/me.rbi +21 -0
  35. data/sig/e_invoice_api/client.rbs +2 -0
  36. data/sig/e_invoice_api/models/allowance.rbs +69 -0
  37. data/sig/e_invoice_api/models/charge.rbs +69 -0
  38. data/sig/e_invoice_api/models/document_create_from_pdf_params.rbs +36 -0
  39. data/sig/e_invoice_api/models/document_create_from_pdf_response.rbs +512 -0
  40. data/sig/e_invoice_api/models/document_response.rbs +8 -140
  41. data/sig/e_invoice_api/models/document_validate_params.rbs +15 -0
  42. data/sig/e_invoice_api/models/documents/ubl_create_from_ubl_params.rbs +26 -0
  43. data/sig/e_invoice_api/models/me_retrieve_params.rbs +15 -0
  44. data/sig/e_invoice_api/models/me_retrieve_response.rbs +107 -0
  45. data/sig/e_invoice_api/models.rbs +10 -0
  46. data/sig/e_invoice_api/resources/documents/ubl.rbs +5 -0
  47. data/sig/e_invoice_api/resources/documents.rbs +12 -0
  48. data/sig/e_invoice_api/resources/me.rbs +11 -0
  49. metadata +28 -1
@@ -0,0 +1,584 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ # @see EInvoiceAPI::Resources::Documents#create_from_pdf
6
+ class DocumentCreateFromPdfResponse < EInvoiceAPI::Internal::Type::BaseModel
7
+ # @!attribute allowances
8
+ #
9
+ # @return [Array<EInvoiceAPI::Models::Allowance>, nil]
10
+ optional :allowances, -> { EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::Allowance] }, nil?: true
11
+
12
+ # @!attribute amount_due
13
+ # The amount due of the invoice. Must be positive and rounded to maximum 2
14
+ # decimals
15
+ #
16
+ # @return [String, nil]
17
+ optional :amount_due, String, nil?: true
18
+
19
+ # @!attribute attachments
20
+ #
21
+ # @return [Array<EInvoiceAPI::Models::DocumentAttachmentCreate>, nil]
22
+ optional :attachments,
23
+ -> { EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::DocumentAttachmentCreate] },
24
+ nil?: true
25
+
26
+ # @!attribute billing_address
27
+ #
28
+ # @return [String, nil]
29
+ optional :billing_address, String, nil?: true
30
+
31
+ # @!attribute billing_address_recipient
32
+ #
33
+ # @return [String, nil]
34
+ optional :billing_address_recipient, String, nil?: true
35
+
36
+ # @!attribute charges
37
+ #
38
+ # @return [Array<EInvoiceAPI::Models::Charge>, nil]
39
+ optional :charges, -> { EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::Charge] }, nil?: true
40
+
41
+ # @!attribute currency
42
+ # Currency of the invoice
43
+ #
44
+ # @return [Symbol, EInvoiceAPI::Models::CurrencyCode, nil]
45
+ optional :currency, enum: -> { EInvoiceAPI::CurrencyCode }
46
+
47
+ # @!attribute customer_address
48
+ #
49
+ # @return [String, nil]
50
+ optional :customer_address, String, nil?: true
51
+
52
+ # @!attribute customer_address_recipient
53
+ #
54
+ # @return [String, nil]
55
+ optional :customer_address_recipient, String, nil?: true
56
+
57
+ # @!attribute customer_email
58
+ #
59
+ # @return [String, nil]
60
+ optional :customer_email, String, nil?: true
61
+
62
+ # @!attribute customer_id
63
+ #
64
+ # @return [String, nil]
65
+ optional :customer_id, String, nil?: true
66
+
67
+ # @!attribute customer_name
68
+ #
69
+ # @return [String, nil]
70
+ optional :customer_name, String, nil?: true
71
+
72
+ # @!attribute customer_tax_id
73
+ #
74
+ # @return [String, nil]
75
+ optional :customer_tax_id, String, nil?: true
76
+
77
+ # @!attribute direction
78
+ #
79
+ # @return [Symbol, EInvoiceAPI::Models::DocumentDirection, nil]
80
+ optional :direction, enum: -> { EInvoiceAPI::DocumentDirection }
81
+
82
+ # @!attribute document_type
83
+ #
84
+ # @return [Symbol, EInvoiceAPI::Models::DocumentType, nil]
85
+ optional :document_type, enum: -> { EInvoiceAPI::DocumentType }
86
+
87
+ # @!attribute due_date
88
+ #
89
+ # @return [Date, nil]
90
+ optional :due_date, Date, nil?: true
91
+
92
+ # @!attribute invoice_date
93
+ #
94
+ # @return [Date, nil]
95
+ optional :invoice_date, Date, nil?: true
96
+
97
+ # @!attribute invoice_id
98
+ #
99
+ # @return [String, nil]
100
+ optional :invoice_id, String, nil?: true
101
+
102
+ # @!attribute invoice_total
103
+ # The total amount of the invoice (so invoice_total = subtotal + total_tax +
104
+ # total_discount). Must be positive and rounded to maximum 2 decimals
105
+ #
106
+ # @return [String, nil]
107
+ optional :invoice_total, String, nil?: true
108
+
109
+ # @!attribute items
110
+ # At least one line item is required
111
+ #
112
+ # @return [Array<EInvoiceAPI::Models::DocumentCreateFromPdfResponse::Item>, nil]
113
+ optional :items,
114
+ -> { EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::Models::DocumentCreateFromPdfResponse::Item] }
115
+
116
+ # @!attribute note
117
+ #
118
+ # @return [String, nil]
119
+ optional :note, String, nil?: true
120
+
121
+ # @!attribute payment_details
122
+ #
123
+ # @return [Array<EInvoiceAPI::Models::PaymentDetailCreate>, nil]
124
+ optional :payment_details,
125
+ -> { EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::PaymentDetailCreate] },
126
+ nil?: true
127
+
128
+ # @!attribute payment_term
129
+ #
130
+ # @return [String, nil]
131
+ optional :payment_term, String, nil?: true
132
+
133
+ # @!attribute previous_unpaid_balance
134
+ # The previous unpaid balance of the invoice, if any. Must be positive and rounded
135
+ # to maximum 2 decimals
136
+ #
137
+ # @return [String, nil]
138
+ optional :previous_unpaid_balance, String, nil?: true
139
+
140
+ # @!attribute purchase_order
141
+ #
142
+ # @return [String, nil]
143
+ optional :purchase_order, String, nil?: true
144
+
145
+ # @!attribute remittance_address
146
+ #
147
+ # @return [String, nil]
148
+ optional :remittance_address, String, nil?: true
149
+
150
+ # @!attribute remittance_address_recipient
151
+ #
152
+ # @return [String, nil]
153
+ optional :remittance_address_recipient, String, nil?: true
154
+
155
+ # @!attribute service_address
156
+ #
157
+ # @return [String, nil]
158
+ optional :service_address, String, nil?: true
159
+
160
+ # @!attribute service_address_recipient
161
+ #
162
+ # @return [String, nil]
163
+ optional :service_address_recipient, String, nil?: true
164
+
165
+ # @!attribute service_end_date
166
+ #
167
+ # @return [Date, nil]
168
+ optional :service_end_date, Date, nil?: true
169
+
170
+ # @!attribute service_start_date
171
+ #
172
+ # @return [Date, nil]
173
+ optional :service_start_date, Date, nil?: true
174
+
175
+ # @!attribute shipping_address
176
+ #
177
+ # @return [String, nil]
178
+ optional :shipping_address, String, nil?: true
179
+
180
+ # @!attribute shipping_address_recipient
181
+ #
182
+ # @return [String, nil]
183
+ optional :shipping_address_recipient, String, nil?: true
184
+
185
+ # @!attribute state
186
+ #
187
+ # @return [Symbol, EInvoiceAPI::Models::DocumentState, nil]
188
+ optional :state, enum: -> { EInvoiceAPI::DocumentState }
189
+
190
+ # @!attribute subtotal
191
+ # The taxable base of the invoice. Should be the sum of all line items -
192
+ # allowances (for example commercial discounts) + charges with impact on VAT. Must
193
+ # be positive and rounded to maximum 2 decimals
194
+ #
195
+ # @return [String, nil]
196
+ optional :subtotal, String, nil?: true
197
+
198
+ # @!attribute success
199
+ # Whether the PDF was successfully converted into a compliant e-invoice
200
+ #
201
+ # @return [Boolean, nil]
202
+ optional :success, EInvoiceAPI::Internal::Type::Boolean
203
+
204
+ # @!attribute tax_code
205
+ # Tax category code of the invoice
206
+ #
207
+ # @return [Symbol, EInvoiceAPI::Models::DocumentCreateFromPdfResponse::TaxCode, nil]
208
+ optional :tax_code, enum: -> { EInvoiceAPI::Models::DocumentCreateFromPdfResponse::TaxCode }
209
+
210
+ # @!attribute tax_details
211
+ #
212
+ # @return [Array<EInvoiceAPI::Models::DocumentCreateFromPdfResponse::TaxDetail>, nil]
213
+ optional :tax_details,
214
+ -> { EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::Models::DocumentCreateFromPdfResponse::TaxDetail] },
215
+ nil?: true
216
+
217
+ # @!attribute total_discount
218
+ # The total financial discount of the invoice (so discounts not subject to VAT).
219
+ # Must be positive and rounded to maximum 2 decimals
220
+ #
221
+ # @return [String, nil]
222
+ optional :total_discount, String, nil?: true
223
+
224
+ # @!attribute total_tax
225
+ # The total tax of the invoice. Must be positive and rounded to maximum 2 decimals
226
+ #
227
+ # @return [String, nil]
228
+ optional :total_tax, String, nil?: true
229
+
230
+ # @!attribute ubl_document
231
+ # The UBL document as an XML string
232
+ #
233
+ # @return [String, nil]
234
+ optional :ubl_document, String, nil?: true
235
+
236
+ # @!attribute vatex
237
+ # VATEX code list for VAT exemption reasons
238
+ #
239
+ # Agency: CEF Identifier: vatex
240
+ #
241
+ # @return [Symbol, EInvoiceAPI::Models::DocumentCreateFromPdfResponse::Vatex, nil]
242
+ optional :vatex, enum: -> { EInvoiceAPI::Models::DocumentCreateFromPdfResponse::Vatex }, nil?: true
243
+
244
+ # @!attribute vatex_note
245
+ # VAT exemption note of the invoice
246
+ #
247
+ # @return [String, nil]
248
+ optional :vatex_note, String, nil?: true
249
+
250
+ # @!attribute vendor_address
251
+ #
252
+ # @return [String, nil]
253
+ optional :vendor_address, String, nil?: true
254
+
255
+ # @!attribute vendor_address_recipient
256
+ #
257
+ # @return [String, nil]
258
+ optional :vendor_address_recipient, String, nil?: true
259
+
260
+ # @!attribute vendor_email
261
+ #
262
+ # @return [String, nil]
263
+ optional :vendor_email, String, nil?: true
264
+
265
+ # @!attribute vendor_name
266
+ #
267
+ # @return [String, nil]
268
+ optional :vendor_name, String, nil?: true
269
+
270
+ # @!attribute vendor_tax_id
271
+ #
272
+ # @return [String, nil]
273
+ optional :vendor_tax_id, String, nil?: true
274
+
275
+ # @!method initialize(allowances: nil, amount_due: nil, attachments: nil, billing_address: nil, billing_address_recipient: nil, charges: nil, currency: nil, customer_address: nil, customer_address_recipient: nil, customer_email: nil, customer_id: nil, customer_name: nil, customer_tax_id: nil, direction: nil, document_type: nil, due_date: nil, invoice_date: nil, invoice_id: nil, invoice_total: nil, items: nil, note: nil, payment_details: nil, payment_term: nil, previous_unpaid_balance: nil, purchase_order: nil, remittance_address: nil, remittance_address_recipient: nil, service_address: nil, service_address_recipient: nil, service_end_date: nil, service_start_date: nil, shipping_address: nil, shipping_address_recipient: nil, state: nil, subtotal: nil, success: nil, tax_code: nil, tax_details: nil, total_discount: nil, total_tax: nil, ubl_document: nil, vatex: nil, vatex_note: nil, vendor_address: nil, vendor_address_recipient: nil, vendor_email: nil, vendor_name: nil, vendor_tax_id: nil)
276
+ # Some parameter documentations has been truncated, see
277
+ # {EInvoiceAPI::Models::DocumentCreateFromPdfResponse} for more details.
278
+ #
279
+ # @param allowances [Array<EInvoiceAPI::Models::Allowance>, nil]
280
+ #
281
+ # @param amount_due [String, nil] The amount due of the invoice. Must be positive and rounded to maximum 2 decimal
282
+ #
283
+ # @param attachments [Array<EInvoiceAPI::Models::DocumentAttachmentCreate>, nil]
284
+ #
285
+ # @param billing_address [String, nil]
286
+ #
287
+ # @param billing_address_recipient [String, nil]
288
+ #
289
+ # @param charges [Array<EInvoiceAPI::Models::Charge>, nil]
290
+ #
291
+ # @param currency [Symbol, EInvoiceAPI::Models::CurrencyCode] Currency of the invoice
292
+ #
293
+ # @param customer_address [String, nil]
294
+ #
295
+ # @param customer_address_recipient [String, nil]
296
+ #
297
+ # @param customer_email [String, nil]
298
+ #
299
+ # @param customer_id [String, nil]
300
+ #
301
+ # @param customer_name [String, nil]
302
+ #
303
+ # @param customer_tax_id [String, nil]
304
+ #
305
+ # @param direction [Symbol, EInvoiceAPI::Models::DocumentDirection]
306
+ #
307
+ # @param document_type [Symbol, EInvoiceAPI::Models::DocumentType]
308
+ #
309
+ # @param due_date [Date, nil]
310
+ #
311
+ # @param invoice_date [Date, nil]
312
+ #
313
+ # @param invoice_id [String, nil]
314
+ #
315
+ # @param invoice_total [String, nil] The total amount of the invoice (so invoice_total = subtotal + total_tax + total
316
+ #
317
+ # @param items [Array<EInvoiceAPI::Models::DocumentCreateFromPdfResponse::Item>] At least one line item is required
318
+ #
319
+ # @param note [String, nil]
320
+ #
321
+ # @param payment_details [Array<EInvoiceAPI::Models::PaymentDetailCreate>, nil]
322
+ #
323
+ # @param payment_term [String, nil]
324
+ #
325
+ # @param previous_unpaid_balance [String, nil] The previous unpaid balance of the invoice, if any. Must be positive and rounded
326
+ #
327
+ # @param purchase_order [String, nil]
328
+ #
329
+ # @param remittance_address [String, nil]
330
+ #
331
+ # @param remittance_address_recipient [String, nil]
332
+ #
333
+ # @param service_address [String, nil]
334
+ #
335
+ # @param service_address_recipient [String, nil]
336
+ #
337
+ # @param service_end_date [Date, nil]
338
+ #
339
+ # @param service_start_date [Date, nil]
340
+ #
341
+ # @param shipping_address [String, nil]
342
+ #
343
+ # @param shipping_address_recipient [String, nil]
344
+ #
345
+ # @param state [Symbol, EInvoiceAPI::Models::DocumentState]
346
+ #
347
+ # @param subtotal [String, nil] The taxable base of the invoice. Should be the sum of all line items - allowance
348
+ #
349
+ # @param success [Boolean] Whether the PDF was successfully converted into a compliant e-invoice
350
+ #
351
+ # @param tax_code [Symbol, EInvoiceAPI::Models::DocumentCreateFromPdfResponse::TaxCode] Tax category code of the invoice
352
+ #
353
+ # @param tax_details [Array<EInvoiceAPI::Models::DocumentCreateFromPdfResponse::TaxDetail>, nil]
354
+ #
355
+ # @param total_discount [String, nil] The total financial discount of the invoice (so discounts not subject to VAT). M
356
+ #
357
+ # @param total_tax [String, nil] The total tax of the invoice. Must be positive and rounded to maximum 2 decimals
358
+ #
359
+ # @param ubl_document [String, nil] The UBL document as an XML string
360
+ #
361
+ # @param vatex [Symbol, EInvoiceAPI::Models::DocumentCreateFromPdfResponse::Vatex, nil] VATEX code list for VAT exemption reasons
362
+ #
363
+ # @param vatex_note [String, nil] VAT exemption note of the invoice
364
+ #
365
+ # @param vendor_address [String, nil]
366
+ #
367
+ # @param vendor_address_recipient [String, nil]
368
+ #
369
+ # @param vendor_email [String, nil]
370
+ #
371
+ # @param vendor_name [String, nil]
372
+ #
373
+ # @param vendor_tax_id [String, nil]
374
+
375
+ class Item < EInvoiceAPI::Internal::Type::BaseModel
376
+ # @!attribute allowances
377
+ # The allowances of the line item.
378
+ #
379
+ # @return [Array<EInvoiceAPI::Models::Allowance>, nil]
380
+ optional :allowances, -> { EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::Allowance] }, nil?: true
381
+
382
+ # @!attribute amount
383
+ # The total amount of the line item, exclusive of VAT, after subtracting line
384
+ # level allowances and adding line level charges. Must be rounded to maximum 2
385
+ # decimals
386
+ #
387
+ # @return [String, nil]
388
+ optional :amount, String, nil?: true
389
+
390
+ # @!attribute charges
391
+ # The charges of the line item.
392
+ #
393
+ # @return [Array<EInvoiceAPI::Models::Charge>, nil]
394
+ optional :charges, -> { EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::Charge] }, nil?: true
395
+
396
+ # @!attribute date
397
+ #
398
+ # @return [nil]
399
+ optional :date, NilClass
400
+
401
+ # @!attribute description
402
+ # The description of the line item.
403
+ #
404
+ # @return [String, nil]
405
+ optional :description, String, nil?: true
406
+
407
+ # @!attribute product_code
408
+ # The product code of the line item.
409
+ #
410
+ # @return [String, nil]
411
+ optional :product_code, String, nil?: true
412
+
413
+ # @!attribute quantity
414
+ # The quantity of items (goods or services) that is the subject of the line item.
415
+ # Must be rounded to maximum 4 decimals
416
+ #
417
+ # @return [String, nil]
418
+ optional :quantity, String, nil?: true
419
+
420
+ # @!attribute tax
421
+ # The total VAT amount for the line item. Must be rounded to maximum 2 decimals
422
+ #
423
+ # @return [String, nil]
424
+ optional :tax, String, nil?: true
425
+
426
+ # @!attribute tax_rate
427
+ # The VAT rate of the line item expressed as percentage with 2 decimals
428
+ #
429
+ # @return [String, nil]
430
+ optional :tax_rate, String, nil?: true
431
+
432
+ # @!attribute unit
433
+ # Unit of Measure Codes from UNECERec20 used in Peppol BIS Billing 3.0.
434
+ #
435
+ # @return [Symbol, EInvoiceAPI::Models::UnitOfMeasureCode, nil]
436
+ optional :unit, enum: -> { EInvoiceAPI::UnitOfMeasureCode }, nil?: true
437
+
438
+ # @!attribute unit_price
439
+ # The unit price of the line item. Must be rounded to maximum 2 decimals
440
+ #
441
+ # @return [String, nil]
442
+ optional :unit_price, String, nil?: true
443
+
444
+ # @!method initialize(allowances: nil, amount: nil, charges: nil, date: nil, description: nil, product_code: nil, quantity: nil, tax: nil, tax_rate: nil, unit: nil, unit_price: nil)
445
+ # Some parameter documentations has been truncated, see
446
+ # {EInvoiceAPI::Models::DocumentCreateFromPdfResponse::Item} for more details.
447
+ #
448
+ # @param allowances [Array<EInvoiceAPI::Models::Allowance>, nil] The allowances of the line item.
449
+ #
450
+ # @param amount [String, nil] The total amount of the line item, exclusive of VAT, after subtracting line leve
451
+ #
452
+ # @param charges [Array<EInvoiceAPI::Models::Charge>, nil] The charges of the line item.
453
+ #
454
+ # @param date [nil]
455
+ #
456
+ # @param description [String, nil] The description of the line item.
457
+ #
458
+ # @param product_code [String, nil] The product code of the line item.
459
+ #
460
+ # @param quantity [String, nil] The quantity of items (goods or services) that is the subject of the line item.
461
+ #
462
+ # @param tax [String, nil] The total VAT amount for the line item. Must be rounded to maximum 2 decimals
463
+ #
464
+ # @param tax_rate [String, nil] The VAT rate of the line item expressed as percentage with 2 decimals
465
+ #
466
+ # @param unit [Symbol, EInvoiceAPI::Models::UnitOfMeasureCode, nil] Unit of Measure Codes from UNECERec20 used in Peppol BIS Billing 3.0.
467
+ #
468
+ # @param unit_price [String, nil] The unit price of the line item. Must be rounded to maximum 2 decimals
469
+ end
470
+
471
+ # Tax category code of the invoice
472
+ #
473
+ # @see EInvoiceAPI::Models::DocumentCreateFromPdfResponse#tax_code
474
+ module TaxCode
475
+ extend EInvoiceAPI::Internal::Type::Enum
476
+
477
+ AE = :AE
478
+ E = :E
479
+ S = :S
480
+ Z = :Z
481
+ G = :G
482
+ O = :O
483
+ K = :K
484
+ L = :L
485
+ M = :M
486
+ B = :B
487
+
488
+ # @!method self.values
489
+ # @return [Array<Symbol>]
490
+ end
491
+
492
+ class TaxDetail < EInvoiceAPI::Internal::Type::BaseModel
493
+ # @!attribute amount
494
+ #
495
+ # @return [String, nil]
496
+ optional :amount, String, nil?: true
497
+
498
+ # @!attribute rate
499
+ #
500
+ # @return [String, nil]
501
+ optional :rate, String, nil?: true
502
+
503
+ # @!method initialize(amount: nil, rate: nil)
504
+ # @param amount [String, nil]
505
+ # @param rate [String, nil]
506
+ end
507
+
508
+ # VATEX code list for VAT exemption reasons
509
+ #
510
+ # Agency: CEF Identifier: vatex
511
+ #
512
+ # @see EInvoiceAPI::Models::DocumentCreateFromPdfResponse#vatex
513
+ module Vatex
514
+ extend EInvoiceAPI::Internal::Type::Enum
515
+
516
+ VATEX_EU_79_C = :"VATEX-EU-79-C"
517
+ VATEX_EU_132 = :"VATEX-EU-132"
518
+ VATEX_EU_132_1_A = :"VATEX-EU-132-1A"
519
+ VATEX_EU_132_1_B = :"VATEX-EU-132-1B"
520
+ VATEX_EU_132_1_C = :"VATEX-EU-132-1C"
521
+ VATEX_EU_132_1_D = :"VATEX-EU-132-1D"
522
+ VATEX_EU_132_1_E = :"VATEX-EU-132-1E"
523
+ VATEX_EU_132_1_F = :"VATEX-EU-132-1F"
524
+ VATEX_EU_132_1_G = :"VATEX-EU-132-1G"
525
+ VATEX_EU_132_1_H = :"VATEX-EU-132-1H"
526
+ VATEX_EU_132_1_I = :"VATEX-EU-132-1I"
527
+ VATEX_EU_132_1_J = :"VATEX-EU-132-1J"
528
+ VATEX_EU_132_1_K = :"VATEX-EU-132-1K"
529
+ VATEX_EU_132_1_L = :"VATEX-EU-132-1L"
530
+ VATEX_EU_132_1_M = :"VATEX-EU-132-1M"
531
+ VATEX_EU_132_1_N = :"VATEX-EU-132-1N"
532
+ VATEX_EU_132_1_O = :"VATEX-EU-132-1O"
533
+ VATEX_EU_132_1_P = :"VATEX-EU-132-1P"
534
+ VATEX_EU_132_1_Q = :"VATEX-EU-132-1Q"
535
+ VATEX_EU_143 = :"VATEX-EU-143"
536
+ VATEX_EU_143_1_A = :"VATEX-EU-143-1A"
537
+ VATEX_EU_143_1_B = :"VATEX-EU-143-1B"
538
+ VATEX_EU_143_1_C = :"VATEX-EU-143-1C"
539
+ VATEX_EU_143_1_D = :"VATEX-EU-143-1D"
540
+ VATEX_EU_143_1_E = :"VATEX-EU-143-1E"
541
+ VATEX_EU_143_1_F = :"VATEX-EU-143-1F"
542
+ VATEX_EU_143_1_FA = :"VATEX-EU-143-1FA"
543
+ VATEX_EU_143_1_G = :"VATEX-EU-143-1G"
544
+ VATEX_EU_143_1_H = :"VATEX-EU-143-1H"
545
+ VATEX_EU_143_1_I = :"VATEX-EU-143-1I"
546
+ VATEX_EU_143_1_J = :"VATEX-EU-143-1J"
547
+ VATEX_EU_143_1_K = :"VATEX-EU-143-1K"
548
+ VATEX_EU_143_1_L = :"VATEX-EU-143-1L"
549
+ VATEX_EU_144 = :"VATEX-EU-144"
550
+ VATEX_EU_146_1_E = :"VATEX-EU-146-1E"
551
+ VATEX_EU_148 = :"VATEX-EU-148"
552
+ VATEX_EU_148_A = :"VATEX-EU-148-A"
553
+ VATEX_EU_148_B = :"VATEX-EU-148-B"
554
+ VATEX_EU_148_C = :"VATEX-EU-148-C"
555
+ VATEX_EU_148_D = :"VATEX-EU-148-D"
556
+ VATEX_EU_148_E = :"VATEX-EU-148-E"
557
+ VATEX_EU_148_F = :"VATEX-EU-148-F"
558
+ VATEX_EU_148_G = :"VATEX-EU-148-G"
559
+ VATEX_EU_151 = :"VATEX-EU-151"
560
+ VATEX_EU_151_1_A = :"VATEX-EU-151-1A"
561
+ VATEX_EU_151_1_AA = :"VATEX-EU-151-1AA"
562
+ VATEX_EU_151_1_B = :"VATEX-EU-151-1B"
563
+ VATEX_EU_151_1_C = :"VATEX-EU-151-1C"
564
+ VATEX_EU_151_1_D = :"VATEX-EU-151-1D"
565
+ VATEX_EU_151_1_E = :"VATEX-EU-151-1E"
566
+ VATEX_EU_159 = :"VATEX-EU-159"
567
+ VATEX_EU_309 = :"VATEX-EU-309"
568
+ VATEX_EU_AE = :"VATEX-EU-AE"
569
+ VATEX_EU_D = :"VATEX-EU-D"
570
+ VATEX_EU_F = :"VATEX-EU-F"
571
+ VATEX_EU_G = :"VATEX-EU-G"
572
+ VATEX_EU_I = :"VATEX-EU-I"
573
+ VATEX_EU_IC = :"VATEX-EU-IC"
574
+ VATEX_EU_O = :"VATEX-EU-O"
575
+ VATEX_EU_J = :"VATEX-EU-J"
576
+ VATEX_FR_FRANCHISE = :"VATEX-FR-FRANCHISE"
577
+ VATEX_FR_CNWVAT = :"VATEX-FR-CNWVAT"
578
+
579
+ # @!method self.values
580
+ # @return [Array<Symbol>]
581
+ end
582
+ end
583
+ end
584
+ end