e-invoice-api 0.5.3 → 0.7.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.
@@ -11,21 +11,20 @@ module EInvoiceAPI
11
11
  sig { returns(String) }
12
12
  attr_accessor :id
13
13
 
14
+ sig do
15
+ returns(T.nilable(T::Array[EInvoiceAPI::DocumentResponse::Allowance]))
16
+ end
17
+ attr_accessor :allowances
18
+
19
+ # The amount due of the invoice. Must be positive and rounded to maximum 2
20
+ # decimals
14
21
  sig { returns(T.nilable(String)) }
15
22
  attr_accessor :amount_due
16
23
 
17
24
  sig do
18
25
  returns(T.nilable(T::Array[EInvoiceAPI::Documents::DocumentAttachment]))
19
26
  end
20
- attr_reader :attachments
21
-
22
- sig do
23
- params(
24
- attachments:
25
- T::Array[EInvoiceAPI::Documents::DocumentAttachment::OrHash]
26
- ).void
27
- end
28
- attr_writer :attachments
27
+ attr_accessor :attachments
29
28
 
30
29
  sig { returns(T.nilable(String)) }
31
30
  attr_accessor :billing_address
@@ -33,6 +32,11 @@ module EInvoiceAPI
33
32
  sig { returns(T.nilable(String)) }
34
33
  attr_accessor :billing_address_recipient
35
34
 
35
+ sig do
36
+ returns(T.nilable(T::Array[EInvoiceAPI::DocumentResponse::Charge]))
37
+ end
38
+ attr_accessor :charges
39
+
36
40
  # Currency of the invoice
37
41
  sig { returns(T.nilable(EInvoiceAPI::CurrencyCode::TaggedSymbol)) }
38
42
  attr_reader :currency
@@ -79,18 +83,13 @@ module EInvoiceAPI
79
83
  sig { returns(T.nilable(String)) }
80
84
  attr_accessor :invoice_id
81
85
 
86
+ # The total amount of the invoice (so invoice_total = subtotal + total_tax +
87
+ # total_discount). Must be positive and rounded to maximum 2 decimals
82
88
  sig { returns(T.nilable(String)) }
83
89
  attr_accessor :invoice_total
84
90
 
85
91
  sig { returns(T.nilable(T::Array[EInvoiceAPI::DocumentResponse::Item])) }
86
- attr_reader :items
87
-
88
- sig do
89
- params(
90
- items: T::Array[EInvoiceAPI::DocumentResponse::Item::OrHash]
91
- ).void
92
- end
93
- attr_writer :items
92
+ attr_accessor :items
94
93
 
95
94
  sig { returns(T.nilable(String)) }
96
95
  attr_accessor :note
@@ -100,19 +99,13 @@ module EInvoiceAPI
100
99
  T.nilable(T::Array[EInvoiceAPI::DocumentResponse::PaymentDetail])
101
100
  )
102
101
  end
103
- attr_reader :payment_details
104
-
105
- sig do
106
- params(
107
- payment_details:
108
- T::Array[EInvoiceAPI::DocumentResponse::PaymentDetail::OrHash]
109
- ).void
110
- end
111
- attr_writer :payment_details
102
+ attr_accessor :payment_details
112
103
 
113
104
  sig { returns(T.nilable(String)) }
114
105
  attr_accessor :payment_term
115
106
 
107
+ # The previous unpaid balance of the invoice, if any. Must be positive and rounded
108
+ # to maximum 2 decimals
116
109
  sig { returns(T.nilable(String)) }
117
110
  attr_accessor :previous_unpaid_balance
118
111
 
@@ -149,28 +142,49 @@ module EInvoiceAPI
149
142
  sig { params(state: EInvoiceAPI::DocumentState::OrSymbol).void }
150
143
  attr_writer :state
151
144
 
145
+ # The taxable base of the invoice. Should be the sum of all line items -
146
+ # allowances (for example commercial discounts) + charges with impact on VAT. Must
147
+ # be positive and rounded to maximum 2 decimals
152
148
  sig { returns(T.nilable(String)) }
153
149
  attr_accessor :subtotal
154
150
 
151
+ # Tax category code of the invoice
155
152
  sig do
156
- returns(T.nilable(T::Array[EInvoiceAPI::DocumentResponse::TaxDetail]))
153
+ returns(T.nilable(EInvoiceAPI::DocumentResponse::TaxCode::TaggedSymbol))
157
154
  end
158
- attr_reader :tax_details
155
+ attr_reader :tax_code
159
156
 
160
157
  sig do
161
- params(
162
- tax_details:
163
- T::Array[EInvoiceAPI::DocumentResponse::TaxDetail::OrHash]
164
- ).void
158
+ params(tax_code: EInvoiceAPI::DocumentResponse::TaxCode::OrSymbol).void
159
+ end
160
+ attr_writer :tax_code
161
+
162
+ sig do
163
+ returns(T.nilable(T::Array[EInvoiceAPI::DocumentResponse::TaxDetail]))
165
164
  end
166
- attr_writer :tax_details
165
+ attr_accessor :tax_details
167
166
 
167
+ # The total financial discount of the invoice (so discounts not subject to VAT).
168
+ # Must be positive and rounded to maximum 2 decimals
168
169
  sig { returns(T.nilable(String)) }
169
170
  attr_accessor :total_discount
170
171
 
172
+ # The total tax of the invoice. Must be positive and rounded to maximum 2 decimals
171
173
  sig { returns(T.nilable(String)) }
172
174
  attr_accessor :total_tax
173
175
 
176
+ # VATEX code list for VAT exemption reasons
177
+ #
178
+ # Agency: CEF Identifier: vatex
179
+ sig do
180
+ returns(T.nilable(EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol))
181
+ end
182
+ attr_accessor :vatex
183
+
184
+ # VAT exemption note of the invoice
185
+ sig { returns(T.nilable(String)) }
186
+ attr_accessor :vatex_note
187
+
174
188
  sig { returns(T.nilable(String)) }
175
189
  attr_accessor :vendor_address
176
190
 
@@ -189,11 +203,19 @@ module EInvoiceAPI
189
203
  sig do
190
204
  params(
191
205
  id: String,
206
+ allowances:
207
+ T.nilable(
208
+ T::Array[EInvoiceAPI::DocumentResponse::Allowance::OrHash]
209
+ ),
192
210
  amount_due: T.nilable(String),
193
211
  attachments:
194
- T::Array[EInvoiceAPI::Documents::DocumentAttachment::OrHash],
212
+ T.nilable(
213
+ T::Array[EInvoiceAPI::Documents::DocumentAttachment::OrHash]
214
+ ),
195
215
  billing_address: T.nilable(String),
196
216
  billing_address_recipient: T.nilable(String),
217
+ charges:
218
+ T.nilable(T::Array[EInvoiceAPI::DocumentResponse::Charge::OrHash]),
197
219
  currency: EInvoiceAPI::CurrencyCode::OrSymbol,
198
220
  customer_address: T.nilable(String),
199
221
  customer_address_recipient: T.nilable(String),
@@ -207,10 +229,13 @@ module EInvoiceAPI
207
229
  invoice_date: T.nilable(Date),
208
230
  invoice_id: T.nilable(String),
209
231
  invoice_total: T.nilable(String),
210
- items: T::Array[EInvoiceAPI::DocumentResponse::Item::OrHash],
232
+ items:
233
+ T.nilable(T::Array[EInvoiceAPI::DocumentResponse::Item::OrHash]),
211
234
  note: T.nilable(String),
212
235
  payment_details:
213
- T::Array[EInvoiceAPI::DocumentResponse::PaymentDetail::OrHash],
236
+ T.nilable(
237
+ T::Array[EInvoiceAPI::DocumentResponse::PaymentDetail::OrHash]
238
+ ),
214
239
  payment_term: T.nilable(String),
215
240
  previous_unpaid_balance: T.nilable(String),
216
241
  purchase_order: T.nilable(String),
@@ -224,10 +249,15 @@ module EInvoiceAPI
224
249
  shipping_address_recipient: T.nilable(String),
225
250
  state: EInvoiceAPI::DocumentState::OrSymbol,
226
251
  subtotal: T.nilable(String),
252
+ tax_code: EInvoiceAPI::DocumentResponse::TaxCode::OrSymbol,
227
253
  tax_details:
228
- T::Array[EInvoiceAPI::DocumentResponse::TaxDetail::OrHash],
254
+ T.nilable(
255
+ T::Array[EInvoiceAPI::DocumentResponse::TaxDetail::OrHash]
256
+ ),
229
257
  total_discount: T.nilable(String),
230
258
  total_tax: T.nilable(String),
259
+ vatex: T.nilable(EInvoiceAPI::DocumentResponse::Vatex::OrSymbol),
260
+ vatex_note: T.nilable(String),
231
261
  vendor_address: T.nilable(String),
232
262
  vendor_address_recipient: T.nilable(String),
233
263
  vendor_email: T.nilable(String),
@@ -237,10 +267,14 @@ module EInvoiceAPI
237
267
  end
238
268
  def self.new(
239
269
  id:,
270
+ allowances: nil,
271
+ # The amount due of the invoice. Must be positive and rounded to maximum 2
272
+ # decimals
240
273
  amount_due: nil,
241
274
  attachments: nil,
242
275
  billing_address: nil,
243
276
  billing_address_recipient: nil,
277
+ charges: nil,
244
278
  # Currency of the invoice
245
279
  currency: nil,
246
280
  customer_address: nil,
@@ -254,11 +288,15 @@ module EInvoiceAPI
254
288
  due_date: nil,
255
289
  invoice_date: nil,
256
290
  invoice_id: nil,
291
+ # The total amount of the invoice (so invoice_total = subtotal + total_tax +
292
+ # total_discount). Must be positive and rounded to maximum 2 decimals
257
293
  invoice_total: nil,
258
294
  items: nil,
259
295
  note: nil,
260
296
  payment_details: nil,
261
297
  payment_term: nil,
298
+ # The previous unpaid balance of the invoice, if any. Must be positive and rounded
299
+ # to maximum 2 decimals
262
300
  previous_unpaid_balance: nil,
263
301
  purchase_order: nil,
264
302
  remittance_address: nil,
@@ -270,10 +308,24 @@ module EInvoiceAPI
270
308
  shipping_address: nil,
271
309
  shipping_address_recipient: nil,
272
310
  state: nil,
311
+ # The taxable base of the invoice. Should be the sum of all line items -
312
+ # allowances (for example commercial discounts) + charges with impact on VAT. Must
313
+ # be positive and rounded to maximum 2 decimals
273
314
  subtotal: nil,
315
+ # Tax category code of the invoice
316
+ tax_code: nil,
274
317
  tax_details: nil,
318
+ # The total financial discount of the invoice (so discounts not subject to VAT).
319
+ # Must be positive and rounded to maximum 2 decimals
275
320
  total_discount: nil,
321
+ # The total tax of the invoice. Must be positive and rounded to maximum 2 decimals
276
322
  total_tax: nil,
323
+ # VATEX code list for VAT exemption reasons
324
+ #
325
+ # Agency: CEF Identifier: vatex
326
+ vatex: nil,
327
+ # VAT exemption note of the invoice
328
+ vatex_note: nil,
277
329
  vendor_address: nil,
278
330
  vendor_address_recipient: nil,
279
331
  vendor_email: nil,
@@ -286,10 +338,14 @@ module EInvoiceAPI
286
338
  override.returns(
287
339
  {
288
340
  id: String,
341
+ allowances:
342
+ T.nilable(T::Array[EInvoiceAPI::DocumentResponse::Allowance]),
289
343
  amount_due: T.nilable(String),
290
- attachments: T::Array[EInvoiceAPI::Documents::DocumentAttachment],
344
+ attachments:
345
+ T.nilable(T::Array[EInvoiceAPI::Documents::DocumentAttachment]),
291
346
  billing_address: T.nilable(String),
292
347
  billing_address_recipient: T.nilable(String),
348
+ charges: T.nilable(T::Array[EInvoiceAPI::DocumentResponse::Charge]),
293
349
  currency: EInvoiceAPI::CurrencyCode::TaggedSymbol,
294
350
  customer_address: T.nilable(String),
295
351
  customer_address_recipient: T.nilable(String),
@@ -303,10 +359,10 @@ module EInvoiceAPI
303
359
  invoice_date: T.nilable(Date),
304
360
  invoice_id: T.nilable(String),
305
361
  invoice_total: T.nilable(String),
306
- items: T::Array[EInvoiceAPI::DocumentResponse::Item],
362
+ items: T.nilable(T::Array[EInvoiceAPI::DocumentResponse::Item]),
307
363
  note: T.nilable(String),
308
364
  payment_details:
309
- T::Array[EInvoiceAPI::DocumentResponse::PaymentDetail],
365
+ T.nilable(T::Array[EInvoiceAPI::DocumentResponse::PaymentDetail]),
310
366
  payment_term: T.nilable(String),
311
367
  previous_unpaid_balance: T.nilable(String),
312
368
  purchase_order: T.nilable(String),
@@ -320,9 +376,14 @@ module EInvoiceAPI
320
376
  shipping_address_recipient: T.nilable(String),
321
377
  state: EInvoiceAPI::DocumentState::TaggedSymbol,
322
378
  subtotal: T.nilable(String),
323
- tax_details: T::Array[EInvoiceAPI::DocumentResponse::TaxDetail],
379
+ tax_code: EInvoiceAPI::DocumentResponse::TaxCode::TaggedSymbol,
380
+ tax_details:
381
+ T.nilable(T::Array[EInvoiceAPI::DocumentResponse::TaxDetail]),
324
382
  total_discount: T.nilable(String),
325
383
  total_tax: T.nilable(String),
384
+ vatex:
385
+ T.nilable(EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol),
386
+ vatex_note: T.nilable(String),
326
387
  vendor_address: T.nilable(String),
327
388
  vendor_address_recipient: T.nilable(String),
328
389
  vendor_email: T.nilable(String),
@@ -334,6 +395,360 @@ module EInvoiceAPI
334
395
  def to_hash
335
396
  end
336
397
 
398
+ class Allowance < EInvoiceAPI::Internal::Type::BaseModel
399
+ OrHash =
400
+ T.type_alias do
401
+ T.any(
402
+ EInvoiceAPI::DocumentResponse::Allowance,
403
+ EInvoiceAPI::Internal::AnyHash
404
+ )
405
+ end
406
+
407
+ # The allowance amount, without VAT. Must be rounded to maximum 2 decimals
408
+ sig { returns(T.nilable(String)) }
409
+ attr_accessor :amount
410
+
411
+ # The base amount that may be used, in conjunction with the allowance percentage,
412
+ # to calculate the allowance amount. Must be rounded to maximum 2 decimals
413
+ sig { returns(T.nilable(String)) }
414
+ attr_accessor :base_amount
415
+
416
+ # The percentage that may be used, in conjunction with the allowance base amount,
417
+ # to calculate the allowance amount. To state 20%, use value 20
418
+ sig { returns(T.nilable(String)) }
419
+ attr_accessor :multiplier_factor
420
+
421
+ # The reason for the allowance
422
+ sig { returns(T.nilable(String)) }
423
+ attr_accessor :reason
424
+
425
+ # The code for the allowance reason
426
+ sig { returns(T.nilable(String)) }
427
+ attr_accessor :reason_code
428
+
429
+ # Duty or tax or fee category codes (Subset of UNCL5305)
430
+ #
431
+ # Agency: UN/CEFACT Version: D.16B Subset: OpenPEPPOL
432
+ sig do
433
+ returns(
434
+ T.nilable(
435
+ EInvoiceAPI::DocumentResponse::Allowance::TaxCode::TaggedSymbol
436
+ )
437
+ )
438
+ end
439
+ attr_accessor :tax_code
440
+
441
+ # The VAT rate, represented as percentage that applies to the allowance
442
+ sig { returns(T.nilable(String)) }
443
+ attr_accessor :tax_rate
444
+
445
+ sig do
446
+ params(
447
+ amount: T.nilable(String),
448
+ base_amount: T.nilable(String),
449
+ multiplier_factor: T.nilable(String),
450
+ reason: T.nilable(String),
451
+ reason_code: T.nilable(String),
452
+ tax_code:
453
+ T.nilable(
454
+ EInvoiceAPI::DocumentResponse::Allowance::TaxCode::OrSymbol
455
+ ),
456
+ tax_rate: T.nilable(String)
457
+ ).returns(T.attached_class)
458
+ end
459
+ def self.new(
460
+ # The allowance amount, without VAT. Must be rounded to maximum 2 decimals
461
+ amount: nil,
462
+ # The base amount that may be used, in conjunction with the allowance percentage,
463
+ # to calculate the allowance amount. Must be rounded to maximum 2 decimals
464
+ base_amount: nil,
465
+ # The percentage that may be used, in conjunction with the allowance base amount,
466
+ # to calculate the allowance amount. To state 20%, use value 20
467
+ multiplier_factor: nil,
468
+ # The reason for the allowance
469
+ reason: nil,
470
+ # The code for the allowance reason
471
+ reason_code: nil,
472
+ # Duty or tax or fee category codes (Subset of UNCL5305)
473
+ #
474
+ # Agency: UN/CEFACT Version: D.16B Subset: OpenPEPPOL
475
+ tax_code: nil,
476
+ # The VAT rate, represented as percentage that applies to the allowance
477
+ tax_rate: nil
478
+ )
479
+ end
480
+
481
+ sig do
482
+ override.returns(
483
+ {
484
+ amount: T.nilable(String),
485
+ base_amount: T.nilable(String),
486
+ multiplier_factor: T.nilable(String),
487
+ reason: T.nilable(String),
488
+ reason_code: T.nilable(String),
489
+ tax_code:
490
+ T.nilable(
491
+ EInvoiceAPI::DocumentResponse::Allowance::TaxCode::TaggedSymbol
492
+ ),
493
+ tax_rate: T.nilable(String)
494
+ }
495
+ )
496
+ end
497
+ def to_hash
498
+ end
499
+
500
+ # Duty or tax or fee category codes (Subset of UNCL5305)
501
+ #
502
+ # Agency: UN/CEFACT Version: D.16B Subset: OpenPEPPOL
503
+ module TaxCode
504
+ extend EInvoiceAPI::Internal::Type::Enum
505
+
506
+ TaggedSymbol =
507
+ T.type_alias do
508
+ T.all(Symbol, EInvoiceAPI::DocumentResponse::Allowance::TaxCode)
509
+ end
510
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
511
+
512
+ AE =
513
+ T.let(
514
+ :AE,
515
+ EInvoiceAPI::DocumentResponse::Allowance::TaxCode::TaggedSymbol
516
+ )
517
+ E =
518
+ T.let(
519
+ :E,
520
+ EInvoiceAPI::DocumentResponse::Allowance::TaxCode::TaggedSymbol
521
+ )
522
+ S =
523
+ T.let(
524
+ :S,
525
+ EInvoiceAPI::DocumentResponse::Allowance::TaxCode::TaggedSymbol
526
+ )
527
+ Z =
528
+ T.let(
529
+ :Z,
530
+ EInvoiceAPI::DocumentResponse::Allowance::TaxCode::TaggedSymbol
531
+ )
532
+ G =
533
+ T.let(
534
+ :G,
535
+ EInvoiceAPI::DocumentResponse::Allowance::TaxCode::TaggedSymbol
536
+ )
537
+ O =
538
+ T.let(
539
+ :O,
540
+ EInvoiceAPI::DocumentResponse::Allowance::TaxCode::TaggedSymbol
541
+ )
542
+ K =
543
+ T.let(
544
+ :K,
545
+ EInvoiceAPI::DocumentResponse::Allowance::TaxCode::TaggedSymbol
546
+ )
547
+ L =
548
+ T.let(
549
+ :L,
550
+ EInvoiceAPI::DocumentResponse::Allowance::TaxCode::TaggedSymbol
551
+ )
552
+ M =
553
+ T.let(
554
+ :M,
555
+ EInvoiceAPI::DocumentResponse::Allowance::TaxCode::TaggedSymbol
556
+ )
557
+ B =
558
+ T.let(
559
+ :B,
560
+ EInvoiceAPI::DocumentResponse::Allowance::TaxCode::TaggedSymbol
561
+ )
562
+
563
+ sig do
564
+ override.returns(
565
+ T::Array[
566
+ EInvoiceAPI::DocumentResponse::Allowance::TaxCode::TaggedSymbol
567
+ ]
568
+ )
569
+ end
570
+ def self.values
571
+ end
572
+ end
573
+ end
574
+
575
+ class Charge < EInvoiceAPI::Internal::Type::BaseModel
576
+ OrHash =
577
+ T.type_alias do
578
+ T.any(
579
+ EInvoiceAPI::DocumentResponse::Charge,
580
+ EInvoiceAPI::Internal::AnyHash
581
+ )
582
+ end
583
+
584
+ # The charge amount, without VAT. Must be rounded to maximum 2 decimals
585
+ sig { returns(T.nilable(String)) }
586
+ attr_accessor :amount
587
+
588
+ # The base amount that may be used, in conjunction with the charge percentage, to
589
+ # calculate the charge amount. Must be rounded to maximum 2 decimals
590
+ sig { returns(T.nilable(String)) }
591
+ attr_accessor :base_amount
592
+
593
+ # The percentage that may be used, in conjunction with the charge base amount, to
594
+ # calculate the charge amount. To state 20%, use value 20
595
+ sig { returns(T.nilable(String)) }
596
+ attr_accessor :multiplier_factor
597
+
598
+ # The reason for the charge
599
+ sig { returns(T.nilable(String)) }
600
+ attr_accessor :reason
601
+
602
+ # The code for the charge reason
603
+ sig { returns(T.nilable(String)) }
604
+ attr_accessor :reason_code
605
+
606
+ # Duty or tax or fee category codes (Subset of UNCL5305)
607
+ #
608
+ # Agency: UN/CEFACT Version: D.16B Subset: OpenPEPPOL
609
+ sig do
610
+ returns(
611
+ T.nilable(
612
+ EInvoiceAPI::DocumentResponse::Charge::TaxCode::TaggedSymbol
613
+ )
614
+ )
615
+ end
616
+ attr_accessor :tax_code
617
+
618
+ # The VAT rate, represented as percentage that applies to the charge
619
+ sig { returns(T.nilable(String)) }
620
+ attr_accessor :tax_rate
621
+
622
+ sig do
623
+ params(
624
+ amount: T.nilable(String),
625
+ base_amount: T.nilable(String),
626
+ multiplier_factor: T.nilable(String),
627
+ reason: T.nilable(String),
628
+ reason_code: T.nilable(String),
629
+ tax_code:
630
+ T.nilable(
631
+ EInvoiceAPI::DocumentResponse::Charge::TaxCode::OrSymbol
632
+ ),
633
+ tax_rate: T.nilable(String)
634
+ ).returns(T.attached_class)
635
+ end
636
+ def self.new(
637
+ # The charge amount, without VAT. Must be rounded to maximum 2 decimals
638
+ amount: nil,
639
+ # The base amount that may be used, in conjunction with the charge percentage, to
640
+ # calculate the charge amount. Must be rounded to maximum 2 decimals
641
+ base_amount: nil,
642
+ # The percentage that may be used, in conjunction with the charge base amount, to
643
+ # calculate the charge amount. To state 20%, use value 20
644
+ multiplier_factor: nil,
645
+ # The reason for the charge
646
+ reason: nil,
647
+ # The code for the charge reason
648
+ reason_code: nil,
649
+ # Duty or tax or fee category codes (Subset of UNCL5305)
650
+ #
651
+ # Agency: UN/CEFACT Version: D.16B Subset: OpenPEPPOL
652
+ tax_code: nil,
653
+ # The VAT rate, represented as percentage that applies to the charge
654
+ tax_rate: nil
655
+ )
656
+ end
657
+
658
+ sig do
659
+ override.returns(
660
+ {
661
+ amount: T.nilable(String),
662
+ base_amount: T.nilable(String),
663
+ multiplier_factor: T.nilable(String),
664
+ reason: T.nilable(String),
665
+ reason_code: T.nilable(String),
666
+ tax_code:
667
+ T.nilable(
668
+ EInvoiceAPI::DocumentResponse::Charge::TaxCode::TaggedSymbol
669
+ ),
670
+ tax_rate: T.nilable(String)
671
+ }
672
+ )
673
+ end
674
+ def to_hash
675
+ end
676
+
677
+ # Duty or tax or fee category codes (Subset of UNCL5305)
678
+ #
679
+ # Agency: UN/CEFACT Version: D.16B Subset: OpenPEPPOL
680
+ module TaxCode
681
+ extend EInvoiceAPI::Internal::Type::Enum
682
+
683
+ TaggedSymbol =
684
+ T.type_alias do
685
+ T.all(Symbol, EInvoiceAPI::DocumentResponse::Charge::TaxCode)
686
+ end
687
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
688
+
689
+ AE =
690
+ T.let(
691
+ :AE,
692
+ EInvoiceAPI::DocumentResponse::Charge::TaxCode::TaggedSymbol
693
+ )
694
+ E =
695
+ T.let(
696
+ :E,
697
+ EInvoiceAPI::DocumentResponse::Charge::TaxCode::TaggedSymbol
698
+ )
699
+ S =
700
+ T.let(
701
+ :S,
702
+ EInvoiceAPI::DocumentResponse::Charge::TaxCode::TaggedSymbol
703
+ )
704
+ Z =
705
+ T.let(
706
+ :Z,
707
+ EInvoiceAPI::DocumentResponse::Charge::TaxCode::TaggedSymbol
708
+ )
709
+ G =
710
+ T.let(
711
+ :G,
712
+ EInvoiceAPI::DocumentResponse::Charge::TaxCode::TaggedSymbol
713
+ )
714
+ O =
715
+ T.let(
716
+ :O,
717
+ EInvoiceAPI::DocumentResponse::Charge::TaxCode::TaggedSymbol
718
+ )
719
+ K =
720
+ T.let(
721
+ :K,
722
+ EInvoiceAPI::DocumentResponse::Charge::TaxCode::TaggedSymbol
723
+ )
724
+ L =
725
+ T.let(
726
+ :L,
727
+ EInvoiceAPI::DocumentResponse::Charge::TaxCode::TaggedSymbol
728
+ )
729
+ M =
730
+ T.let(
731
+ :M,
732
+ EInvoiceAPI::DocumentResponse::Charge::TaxCode::TaggedSymbol
733
+ )
734
+ B =
735
+ T.let(
736
+ :B,
737
+ EInvoiceAPI::DocumentResponse::Charge::TaxCode::TaggedSymbol
738
+ )
739
+
740
+ sig do
741
+ override.returns(
742
+ T::Array[
743
+ EInvoiceAPI::DocumentResponse::Charge::TaxCode::TaggedSymbol
744
+ ]
745
+ )
746
+ end
747
+ def self.values
748
+ end
749
+ end
750
+ end
751
+
337
752
  class Item < EInvoiceAPI::Internal::Type::BaseModel
338
753
  OrHash =
339
754
  T.type_alias do
@@ -343,24 +758,49 @@ module EInvoiceAPI
343
758
  )
344
759
  end
345
760
 
761
+ # The allowances of the line item.
762
+ sig do
763
+ returns(
764
+ T.nilable(T::Array[EInvoiceAPI::DocumentResponse::Item::Allowance])
765
+ )
766
+ end
767
+ attr_accessor :allowances
768
+
769
+ # The total amount of the line item, exclusive of VAT, after subtracting line
770
+ # level allowances and adding line level charges. Must be rounded to maximum 2
771
+ # decimals
346
772
  sig { returns(T.nilable(String)) }
347
773
  attr_accessor :amount
348
774
 
775
+ # The charges of the line item.
776
+ sig do
777
+ returns(
778
+ T.nilable(T::Array[EInvoiceAPI::DocumentResponse::Item::Charge])
779
+ )
780
+ end
781
+ attr_accessor :charges
782
+
349
783
  sig { returns(NilClass) }
350
784
  attr_accessor :date
351
785
 
786
+ # The description of the line item.
352
787
  sig { returns(T.nilable(String)) }
353
788
  attr_accessor :description
354
789
 
790
+ # The product code of the line item.
355
791
  sig { returns(T.nilable(String)) }
356
792
  attr_accessor :product_code
357
793
 
794
+ # The quantity of items (goods or services) that is the subject of the line item.
795
+ # Must be rounded to maximum 4 decimals
358
796
  sig { returns(T.nilable(String)) }
359
797
  attr_accessor :quantity
360
798
 
799
+ # The total VAT amount for the line item. Must be rounded to maximum 2 decimals
361
800
  sig { returns(T.nilable(String)) }
362
801
  attr_accessor :tax
363
802
 
803
+ # The VAT rate of the line item expressed as percentage with 2 decimals
364
804
  sig { returns(T.nilable(String)) }
365
805
  attr_accessor :tax_rate
366
806
 
@@ -368,12 +808,21 @@ module EInvoiceAPI
368
808
  sig { returns(T.nilable(EInvoiceAPI::UnitOfMeasureCode::TaggedSymbol)) }
369
809
  attr_accessor :unit
370
810
 
811
+ # The unit price of the line item. Must be rounded to maximum 2 decimals
371
812
  sig { returns(T.nilable(String)) }
372
813
  attr_accessor :unit_price
373
814
 
374
815
  sig do
375
816
  params(
817
+ allowances:
818
+ T.nilable(
819
+ T::Array[EInvoiceAPI::DocumentResponse::Item::Allowance::OrHash]
820
+ ),
376
821
  amount: T.nilable(String),
822
+ charges:
823
+ T.nilable(
824
+ T::Array[EInvoiceAPI::DocumentResponse::Item::Charge::OrHash]
825
+ ),
377
826
  date: NilClass,
378
827
  description: T.nilable(String),
379
828
  product_code: T.nilable(String),
@@ -385,15 +834,29 @@ module EInvoiceAPI
385
834
  ).returns(T.attached_class)
386
835
  end
387
836
  def self.new(
837
+ # The allowances of the line item.
838
+ allowances: nil,
839
+ # The total amount of the line item, exclusive of VAT, after subtracting line
840
+ # level allowances and adding line level charges. Must be rounded to maximum 2
841
+ # decimals
388
842
  amount: nil,
843
+ # The charges of the line item.
844
+ charges: nil,
389
845
  date: nil,
846
+ # The description of the line item.
390
847
  description: nil,
848
+ # The product code of the line item.
391
849
  product_code: nil,
850
+ # The quantity of items (goods or services) that is the subject of the line item.
851
+ # Must be rounded to maximum 4 decimals
392
852
  quantity: nil,
853
+ # The total VAT amount for the line item. Must be rounded to maximum 2 decimals
393
854
  tax: nil,
855
+ # The VAT rate of the line item expressed as percentage with 2 decimals
394
856
  tax_rate: nil,
395
857
  # Unit of Measure Codes from UNECERec20 used in Peppol BIS Billing 3.0.
396
858
  unit: nil,
859
+ # The unit price of the line item. Must be rounded to maximum 2 decimals
397
860
  unit_price: nil
398
861
  )
399
862
  end
@@ -401,7 +864,15 @@ module EInvoiceAPI
401
864
  sig do
402
865
  override.returns(
403
866
  {
867
+ allowances:
868
+ T.nilable(
869
+ T::Array[EInvoiceAPI::DocumentResponse::Item::Allowance]
870
+ ),
404
871
  amount: T.nilable(String),
872
+ charges:
873
+ T.nilable(
874
+ T::Array[EInvoiceAPI::DocumentResponse::Item::Charge]
875
+ ),
405
876
  date: NilClass,
406
877
  description: T.nilable(String),
407
878
  product_code: T.nilable(String),
@@ -415,6 +886,368 @@ module EInvoiceAPI
415
886
  end
416
887
  def to_hash
417
888
  end
889
+
890
+ class Allowance < EInvoiceAPI::Internal::Type::BaseModel
891
+ OrHash =
892
+ T.type_alias do
893
+ T.any(
894
+ EInvoiceAPI::DocumentResponse::Item::Allowance,
895
+ EInvoiceAPI::Internal::AnyHash
896
+ )
897
+ end
898
+
899
+ # The allowance amount, without VAT. Must be rounded to maximum 2 decimals
900
+ sig { returns(T.nilable(String)) }
901
+ attr_accessor :amount
902
+
903
+ # The base amount that may be used, in conjunction with the allowance percentage,
904
+ # to calculate the allowance amount. Must be rounded to maximum 2 decimals
905
+ sig { returns(T.nilable(String)) }
906
+ attr_accessor :base_amount
907
+
908
+ # The percentage that may be used, in conjunction with the allowance base amount,
909
+ # to calculate the allowance amount. To state 20%, use value 20
910
+ sig { returns(T.nilable(String)) }
911
+ attr_accessor :multiplier_factor
912
+
913
+ # The reason for the allowance
914
+ sig { returns(T.nilable(String)) }
915
+ attr_accessor :reason
916
+
917
+ # The code for the allowance reason
918
+ sig { returns(T.nilable(String)) }
919
+ attr_accessor :reason_code
920
+
921
+ # Duty or tax or fee category codes (Subset of UNCL5305)
922
+ #
923
+ # Agency: UN/CEFACT Version: D.16B Subset: OpenPEPPOL
924
+ sig do
925
+ returns(
926
+ T.nilable(
927
+ EInvoiceAPI::DocumentResponse::Item::Allowance::TaxCode::TaggedSymbol
928
+ )
929
+ )
930
+ end
931
+ attr_accessor :tax_code
932
+
933
+ # The VAT rate, represented as percentage that applies to the allowance
934
+ sig { returns(T.nilable(String)) }
935
+ attr_accessor :tax_rate
936
+
937
+ # An allowance is a discount for example for early payment, volume discount, etc.
938
+ sig do
939
+ params(
940
+ amount: T.nilable(String),
941
+ base_amount: T.nilable(String),
942
+ multiplier_factor: T.nilable(String),
943
+ reason: T.nilable(String),
944
+ reason_code: T.nilable(String),
945
+ tax_code:
946
+ T.nilable(
947
+ EInvoiceAPI::DocumentResponse::Item::Allowance::TaxCode::OrSymbol
948
+ ),
949
+ tax_rate: T.nilable(String)
950
+ ).returns(T.attached_class)
951
+ end
952
+ def self.new(
953
+ # The allowance amount, without VAT. Must be rounded to maximum 2 decimals
954
+ amount: nil,
955
+ # The base amount that may be used, in conjunction with the allowance percentage,
956
+ # to calculate the allowance amount. Must be rounded to maximum 2 decimals
957
+ base_amount: nil,
958
+ # The percentage that may be used, in conjunction with the allowance base amount,
959
+ # to calculate the allowance amount. To state 20%, use value 20
960
+ multiplier_factor: nil,
961
+ # The reason for the allowance
962
+ reason: nil,
963
+ # The code for the allowance reason
964
+ reason_code: nil,
965
+ # Duty or tax or fee category codes (Subset of UNCL5305)
966
+ #
967
+ # Agency: UN/CEFACT Version: D.16B Subset: OpenPEPPOL
968
+ tax_code: nil,
969
+ # The VAT rate, represented as percentage that applies to the allowance
970
+ tax_rate: nil
971
+ )
972
+ end
973
+
974
+ sig do
975
+ override.returns(
976
+ {
977
+ amount: T.nilable(String),
978
+ base_amount: T.nilable(String),
979
+ multiplier_factor: T.nilable(String),
980
+ reason: T.nilable(String),
981
+ reason_code: T.nilable(String),
982
+ tax_code:
983
+ T.nilable(
984
+ EInvoiceAPI::DocumentResponse::Item::Allowance::TaxCode::TaggedSymbol
985
+ ),
986
+ tax_rate: T.nilable(String)
987
+ }
988
+ )
989
+ end
990
+ def to_hash
991
+ end
992
+
993
+ # Duty or tax or fee category codes (Subset of UNCL5305)
994
+ #
995
+ # Agency: UN/CEFACT Version: D.16B Subset: OpenPEPPOL
996
+ module TaxCode
997
+ extend EInvoiceAPI::Internal::Type::Enum
998
+
999
+ TaggedSymbol =
1000
+ T.type_alias do
1001
+ T.all(
1002
+ Symbol,
1003
+ EInvoiceAPI::DocumentResponse::Item::Allowance::TaxCode
1004
+ )
1005
+ end
1006
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1007
+
1008
+ AE =
1009
+ T.let(
1010
+ :AE,
1011
+ EInvoiceAPI::DocumentResponse::Item::Allowance::TaxCode::TaggedSymbol
1012
+ )
1013
+ E =
1014
+ T.let(
1015
+ :E,
1016
+ EInvoiceAPI::DocumentResponse::Item::Allowance::TaxCode::TaggedSymbol
1017
+ )
1018
+ S =
1019
+ T.let(
1020
+ :S,
1021
+ EInvoiceAPI::DocumentResponse::Item::Allowance::TaxCode::TaggedSymbol
1022
+ )
1023
+ Z =
1024
+ T.let(
1025
+ :Z,
1026
+ EInvoiceAPI::DocumentResponse::Item::Allowance::TaxCode::TaggedSymbol
1027
+ )
1028
+ G =
1029
+ T.let(
1030
+ :G,
1031
+ EInvoiceAPI::DocumentResponse::Item::Allowance::TaxCode::TaggedSymbol
1032
+ )
1033
+ O =
1034
+ T.let(
1035
+ :O,
1036
+ EInvoiceAPI::DocumentResponse::Item::Allowance::TaxCode::TaggedSymbol
1037
+ )
1038
+ K =
1039
+ T.let(
1040
+ :K,
1041
+ EInvoiceAPI::DocumentResponse::Item::Allowance::TaxCode::TaggedSymbol
1042
+ )
1043
+ L =
1044
+ T.let(
1045
+ :L,
1046
+ EInvoiceAPI::DocumentResponse::Item::Allowance::TaxCode::TaggedSymbol
1047
+ )
1048
+ M =
1049
+ T.let(
1050
+ :M,
1051
+ EInvoiceAPI::DocumentResponse::Item::Allowance::TaxCode::TaggedSymbol
1052
+ )
1053
+ B =
1054
+ T.let(
1055
+ :B,
1056
+ EInvoiceAPI::DocumentResponse::Item::Allowance::TaxCode::TaggedSymbol
1057
+ )
1058
+
1059
+ sig do
1060
+ override.returns(
1061
+ T::Array[
1062
+ EInvoiceAPI::DocumentResponse::Item::Allowance::TaxCode::TaggedSymbol
1063
+ ]
1064
+ )
1065
+ end
1066
+ def self.values
1067
+ end
1068
+ end
1069
+ end
1070
+
1071
+ class Charge < EInvoiceAPI::Internal::Type::BaseModel
1072
+ OrHash =
1073
+ T.type_alias do
1074
+ T.any(
1075
+ EInvoiceAPI::DocumentResponse::Item::Charge,
1076
+ EInvoiceAPI::Internal::AnyHash
1077
+ )
1078
+ end
1079
+
1080
+ # The charge amount, without VAT. Must be rounded to maximum 2 decimals
1081
+ sig { returns(T.nilable(String)) }
1082
+ attr_accessor :amount
1083
+
1084
+ # The base amount that may be used, in conjunction with the charge percentage, to
1085
+ # calculate the charge amount. Must be rounded to maximum 2 decimals
1086
+ sig { returns(T.nilable(String)) }
1087
+ attr_accessor :base_amount
1088
+
1089
+ # The percentage that may be used, in conjunction with the charge base amount, to
1090
+ # calculate the charge amount. To state 20%, use value 20
1091
+ sig { returns(T.nilable(String)) }
1092
+ attr_accessor :multiplier_factor
1093
+
1094
+ # The reason for the charge
1095
+ sig { returns(T.nilable(String)) }
1096
+ attr_accessor :reason
1097
+
1098
+ # The code for the charge reason
1099
+ sig { returns(T.nilable(String)) }
1100
+ attr_accessor :reason_code
1101
+
1102
+ # Duty or tax or fee category codes (Subset of UNCL5305)
1103
+ #
1104
+ # Agency: UN/CEFACT Version: D.16B Subset: OpenPEPPOL
1105
+ sig do
1106
+ returns(
1107
+ T.nilable(
1108
+ EInvoiceAPI::DocumentResponse::Item::Charge::TaxCode::TaggedSymbol
1109
+ )
1110
+ )
1111
+ end
1112
+ attr_accessor :tax_code
1113
+
1114
+ # The VAT rate, represented as percentage that applies to the charge
1115
+ sig { returns(T.nilable(String)) }
1116
+ attr_accessor :tax_rate
1117
+
1118
+ # A charge is an additional fee for example for late payment, late delivery, etc.
1119
+ sig do
1120
+ params(
1121
+ amount: T.nilable(String),
1122
+ base_amount: T.nilable(String),
1123
+ multiplier_factor: T.nilable(String),
1124
+ reason: T.nilable(String),
1125
+ reason_code: T.nilable(String),
1126
+ tax_code:
1127
+ T.nilable(
1128
+ EInvoiceAPI::DocumentResponse::Item::Charge::TaxCode::OrSymbol
1129
+ ),
1130
+ tax_rate: T.nilable(String)
1131
+ ).returns(T.attached_class)
1132
+ end
1133
+ def self.new(
1134
+ # The charge amount, without VAT. Must be rounded to maximum 2 decimals
1135
+ amount: nil,
1136
+ # The base amount that may be used, in conjunction with the charge percentage, to
1137
+ # calculate the charge amount. Must be rounded to maximum 2 decimals
1138
+ base_amount: nil,
1139
+ # The percentage that may be used, in conjunction with the charge base amount, to
1140
+ # calculate the charge amount. To state 20%, use value 20
1141
+ multiplier_factor: nil,
1142
+ # The reason for the charge
1143
+ reason: nil,
1144
+ # The code for the charge reason
1145
+ reason_code: nil,
1146
+ # Duty or tax or fee category codes (Subset of UNCL5305)
1147
+ #
1148
+ # Agency: UN/CEFACT Version: D.16B Subset: OpenPEPPOL
1149
+ tax_code: nil,
1150
+ # The VAT rate, represented as percentage that applies to the charge
1151
+ tax_rate: nil
1152
+ )
1153
+ end
1154
+
1155
+ sig do
1156
+ override.returns(
1157
+ {
1158
+ amount: T.nilable(String),
1159
+ base_amount: T.nilable(String),
1160
+ multiplier_factor: T.nilable(String),
1161
+ reason: T.nilable(String),
1162
+ reason_code: T.nilable(String),
1163
+ tax_code:
1164
+ T.nilable(
1165
+ EInvoiceAPI::DocumentResponse::Item::Charge::TaxCode::TaggedSymbol
1166
+ ),
1167
+ tax_rate: T.nilable(String)
1168
+ }
1169
+ )
1170
+ end
1171
+ def to_hash
1172
+ end
1173
+
1174
+ # Duty or tax or fee category codes (Subset of UNCL5305)
1175
+ #
1176
+ # Agency: UN/CEFACT Version: D.16B Subset: OpenPEPPOL
1177
+ module TaxCode
1178
+ extend EInvoiceAPI::Internal::Type::Enum
1179
+
1180
+ TaggedSymbol =
1181
+ T.type_alias do
1182
+ T.all(
1183
+ Symbol,
1184
+ EInvoiceAPI::DocumentResponse::Item::Charge::TaxCode
1185
+ )
1186
+ end
1187
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1188
+
1189
+ AE =
1190
+ T.let(
1191
+ :AE,
1192
+ EInvoiceAPI::DocumentResponse::Item::Charge::TaxCode::TaggedSymbol
1193
+ )
1194
+ E =
1195
+ T.let(
1196
+ :E,
1197
+ EInvoiceAPI::DocumentResponse::Item::Charge::TaxCode::TaggedSymbol
1198
+ )
1199
+ S =
1200
+ T.let(
1201
+ :S,
1202
+ EInvoiceAPI::DocumentResponse::Item::Charge::TaxCode::TaggedSymbol
1203
+ )
1204
+ Z =
1205
+ T.let(
1206
+ :Z,
1207
+ EInvoiceAPI::DocumentResponse::Item::Charge::TaxCode::TaggedSymbol
1208
+ )
1209
+ G =
1210
+ T.let(
1211
+ :G,
1212
+ EInvoiceAPI::DocumentResponse::Item::Charge::TaxCode::TaggedSymbol
1213
+ )
1214
+ O =
1215
+ T.let(
1216
+ :O,
1217
+ EInvoiceAPI::DocumentResponse::Item::Charge::TaxCode::TaggedSymbol
1218
+ )
1219
+ K =
1220
+ T.let(
1221
+ :K,
1222
+ EInvoiceAPI::DocumentResponse::Item::Charge::TaxCode::TaggedSymbol
1223
+ )
1224
+ L =
1225
+ T.let(
1226
+ :L,
1227
+ EInvoiceAPI::DocumentResponse::Item::Charge::TaxCode::TaggedSymbol
1228
+ )
1229
+ M =
1230
+ T.let(
1231
+ :M,
1232
+ EInvoiceAPI::DocumentResponse::Item::Charge::TaxCode::TaggedSymbol
1233
+ )
1234
+ B =
1235
+ T.let(
1236
+ :B,
1237
+ EInvoiceAPI::DocumentResponse::Item::Charge::TaxCode::TaggedSymbol
1238
+ )
1239
+
1240
+ sig do
1241
+ override.returns(
1242
+ T::Array[
1243
+ EInvoiceAPI::DocumentResponse::Item::Charge::TaxCode::TaggedSymbol
1244
+ ]
1245
+ )
1246
+ end
1247
+ def self.values
1248
+ end
1249
+ end
1250
+ end
418
1251
  end
419
1252
 
420
1253
  class PaymentDetail < EInvoiceAPI::Internal::Type::BaseModel
@@ -468,6 +1301,34 @@ module EInvoiceAPI
468
1301
  end
469
1302
  end
470
1303
 
1304
+ # Tax category code of the invoice
1305
+ module TaxCode
1306
+ extend EInvoiceAPI::Internal::Type::Enum
1307
+
1308
+ TaggedSymbol =
1309
+ T.type_alias { T.all(Symbol, EInvoiceAPI::DocumentResponse::TaxCode) }
1310
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1311
+
1312
+ AE = T.let(:AE, EInvoiceAPI::DocumentResponse::TaxCode::TaggedSymbol)
1313
+ E = T.let(:E, EInvoiceAPI::DocumentResponse::TaxCode::TaggedSymbol)
1314
+ S = T.let(:S, EInvoiceAPI::DocumentResponse::TaxCode::TaggedSymbol)
1315
+ Z = T.let(:Z, EInvoiceAPI::DocumentResponse::TaxCode::TaggedSymbol)
1316
+ G = T.let(:G, EInvoiceAPI::DocumentResponse::TaxCode::TaggedSymbol)
1317
+ O = T.let(:O, EInvoiceAPI::DocumentResponse::TaxCode::TaggedSymbol)
1318
+ K = T.let(:K, EInvoiceAPI::DocumentResponse::TaxCode::TaggedSymbol)
1319
+ L = T.let(:L, EInvoiceAPI::DocumentResponse::TaxCode::TaggedSymbol)
1320
+ M = T.let(:M, EInvoiceAPI::DocumentResponse::TaxCode::TaggedSymbol)
1321
+ B = T.let(:B, EInvoiceAPI::DocumentResponse::TaxCode::TaggedSymbol)
1322
+
1323
+ sig do
1324
+ override.returns(
1325
+ T::Array[EInvoiceAPI::DocumentResponse::TaxCode::TaggedSymbol]
1326
+ )
1327
+ end
1328
+ def self.values
1329
+ end
1330
+ end
1331
+
471
1332
  class TaxDetail < EInvoiceAPI::Internal::Type::BaseModel
472
1333
  OrHash =
473
1334
  T.type_alias do
@@ -499,6 +1360,336 @@ module EInvoiceAPI
499
1360
  def to_hash
500
1361
  end
501
1362
  end
1363
+
1364
+ # VATEX code list for VAT exemption reasons
1365
+ #
1366
+ # Agency: CEF Identifier: vatex
1367
+ module Vatex
1368
+ extend EInvoiceAPI::Internal::Type::Enum
1369
+
1370
+ TaggedSymbol =
1371
+ T.type_alias { T.all(Symbol, EInvoiceAPI::DocumentResponse::Vatex) }
1372
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1373
+
1374
+ VATEX_EU_79_C =
1375
+ T.let(
1376
+ :"VATEX-EU-79-C",
1377
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1378
+ )
1379
+ VATEX_EU_132 =
1380
+ T.let(
1381
+ :"VATEX-EU-132",
1382
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1383
+ )
1384
+ VATEX_EU_132_1_A =
1385
+ T.let(
1386
+ :"VATEX-EU-132-1A",
1387
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1388
+ )
1389
+ VATEX_EU_132_1_B =
1390
+ T.let(
1391
+ :"VATEX-EU-132-1B",
1392
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1393
+ )
1394
+ VATEX_EU_132_1_C =
1395
+ T.let(
1396
+ :"VATEX-EU-132-1C",
1397
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1398
+ )
1399
+ VATEX_EU_132_1_D =
1400
+ T.let(
1401
+ :"VATEX-EU-132-1D",
1402
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1403
+ )
1404
+ VATEX_EU_132_1_E =
1405
+ T.let(
1406
+ :"VATEX-EU-132-1E",
1407
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1408
+ )
1409
+ VATEX_EU_132_1_F =
1410
+ T.let(
1411
+ :"VATEX-EU-132-1F",
1412
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1413
+ )
1414
+ VATEX_EU_132_1_G =
1415
+ T.let(
1416
+ :"VATEX-EU-132-1G",
1417
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1418
+ )
1419
+ VATEX_EU_132_1_H =
1420
+ T.let(
1421
+ :"VATEX-EU-132-1H",
1422
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1423
+ )
1424
+ VATEX_EU_132_1_I =
1425
+ T.let(
1426
+ :"VATEX-EU-132-1I",
1427
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1428
+ )
1429
+ VATEX_EU_132_1_J =
1430
+ T.let(
1431
+ :"VATEX-EU-132-1J",
1432
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1433
+ )
1434
+ VATEX_EU_132_1_K =
1435
+ T.let(
1436
+ :"VATEX-EU-132-1K",
1437
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1438
+ )
1439
+ VATEX_EU_132_1_L =
1440
+ T.let(
1441
+ :"VATEX-EU-132-1L",
1442
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1443
+ )
1444
+ VATEX_EU_132_1_M =
1445
+ T.let(
1446
+ :"VATEX-EU-132-1M",
1447
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1448
+ )
1449
+ VATEX_EU_132_1_N =
1450
+ T.let(
1451
+ :"VATEX-EU-132-1N",
1452
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1453
+ )
1454
+ VATEX_EU_132_1_O =
1455
+ T.let(
1456
+ :"VATEX-EU-132-1O",
1457
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1458
+ )
1459
+ VATEX_EU_132_1_P =
1460
+ T.let(
1461
+ :"VATEX-EU-132-1P",
1462
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1463
+ )
1464
+ VATEX_EU_132_1_Q =
1465
+ T.let(
1466
+ :"VATEX-EU-132-1Q",
1467
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1468
+ )
1469
+ VATEX_EU_143 =
1470
+ T.let(
1471
+ :"VATEX-EU-143",
1472
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1473
+ )
1474
+ VATEX_EU_143_1_A =
1475
+ T.let(
1476
+ :"VATEX-EU-143-1A",
1477
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1478
+ )
1479
+ VATEX_EU_143_1_B =
1480
+ T.let(
1481
+ :"VATEX-EU-143-1B",
1482
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1483
+ )
1484
+ VATEX_EU_143_1_C =
1485
+ T.let(
1486
+ :"VATEX-EU-143-1C",
1487
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1488
+ )
1489
+ VATEX_EU_143_1_D =
1490
+ T.let(
1491
+ :"VATEX-EU-143-1D",
1492
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1493
+ )
1494
+ VATEX_EU_143_1_E =
1495
+ T.let(
1496
+ :"VATEX-EU-143-1E",
1497
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1498
+ )
1499
+ VATEX_EU_143_1_F =
1500
+ T.let(
1501
+ :"VATEX-EU-143-1F",
1502
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1503
+ )
1504
+ VATEX_EU_143_1_FA =
1505
+ T.let(
1506
+ :"VATEX-EU-143-1FA",
1507
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1508
+ )
1509
+ VATEX_EU_143_1_G =
1510
+ T.let(
1511
+ :"VATEX-EU-143-1G",
1512
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1513
+ )
1514
+ VATEX_EU_143_1_H =
1515
+ T.let(
1516
+ :"VATEX-EU-143-1H",
1517
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1518
+ )
1519
+ VATEX_EU_143_1_I =
1520
+ T.let(
1521
+ :"VATEX-EU-143-1I",
1522
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1523
+ )
1524
+ VATEX_EU_143_1_J =
1525
+ T.let(
1526
+ :"VATEX-EU-143-1J",
1527
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1528
+ )
1529
+ VATEX_EU_143_1_K =
1530
+ T.let(
1531
+ :"VATEX-EU-143-1K",
1532
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1533
+ )
1534
+ VATEX_EU_143_1_L =
1535
+ T.let(
1536
+ :"VATEX-EU-143-1L",
1537
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1538
+ )
1539
+ VATEX_EU_144 =
1540
+ T.let(
1541
+ :"VATEX-EU-144",
1542
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1543
+ )
1544
+ VATEX_EU_146_1_E =
1545
+ T.let(
1546
+ :"VATEX-EU-146-1E",
1547
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1548
+ )
1549
+ VATEX_EU_148 =
1550
+ T.let(
1551
+ :"VATEX-EU-148",
1552
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1553
+ )
1554
+ VATEX_EU_148_A =
1555
+ T.let(
1556
+ :"VATEX-EU-148-A",
1557
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1558
+ )
1559
+ VATEX_EU_148_B =
1560
+ T.let(
1561
+ :"VATEX-EU-148-B",
1562
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1563
+ )
1564
+ VATEX_EU_148_C =
1565
+ T.let(
1566
+ :"VATEX-EU-148-C",
1567
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1568
+ )
1569
+ VATEX_EU_148_D =
1570
+ T.let(
1571
+ :"VATEX-EU-148-D",
1572
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1573
+ )
1574
+ VATEX_EU_148_E =
1575
+ T.let(
1576
+ :"VATEX-EU-148-E",
1577
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1578
+ )
1579
+ VATEX_EU_148_F =
1580
+ T.let(
1581
+ :"VATEX-EU-148-F",
1582
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1583
+ )
1584
+ VATEX_EU_148_G =
1585
+ T.let(
1586
+ :"VATEX-EU-148-G",
1587
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1588
+ )
1589
+ VATEX_EU_151 =
1590
+ T.let(
1591
+ :"VATEX-EU-151",
1592
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1593
+ )
1594
+ VATEX_EU_151_1_A =
1595
+ T.let(
1596
+ :"VATEX-EU-151-1A",
1597
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1598
+ )
1599
+ VATEX_EU_151_1_AA =
1600
+ T.let(
1601
+ :"VATEX-EU-151-1AA",
1602
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1603
+ )
1604
+ VATEX_EU_151_1_B =
1605
+ T.let(
1606
+ :"VATEX-EU-151-1B",
1607
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1608
+ )
1609
+ VATEX_EU_151_1_C =
1610
+ T.let(
1611
+ :"VATEX-EU-151-1C",
1612
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1613
+ )
1614
+ VATEX_EU_151_1_D =
1615
+ T.let(
1616
+ :"VATEX-EU-151-1D",
1617
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1618
+ )
1619
+ VATEX_EU_151_1_E =
1620
+ T.let(
1621
+ :"VATEX-EU-151-1E",
1622
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1623
+ )
1624
+ VATEX_EU_159 =
1625
+ T.let(
1626
+ :"VATEX-EU-159",
1627
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1628
+ )
1629
+ VATEX_EU_309 =
1630
+ T.let(
1631
+ :"VATEX-EU-309",
1632
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1633
+ )
1634
+ VATEX_EU_AE =
1635
+ T.let(
1636
+ :"VATEX-EU-AE",
1637
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1638
+ )
1639
+ VATEX_EU_D =
1640
+ T.let(
1641
+ :"VATEX-EU-D",
1642
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1643
+ )
1644
+ VATEX_EU_F =
1645
+ T.let(
1646
+ :"VATEX-EU-F",
1647
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1648
+ )
1649
+ VATEX_EU_G =
1650
+ T.let(
1651
+ :"VATEX-EU-G",
1652
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1653
+ )
1654
+ VATEX_EU_I =
1655
+ T.let(
1656
+ :"VATEX-EU-I",
1657
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1658
+ )
1659
+ VATEX_EU_IC =
1660
+ T.let(
1661
+ :"VATEX-EU-IC",
1662
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1663
+ )
1664
+ VATEX_EU_O =
1665
+ T.let(
1666
+ :"VATEX-EU-O",
1667
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1668
+ )
1669
+ VATEX_EU_J =
1670
+ T.let(
1671
+ :"VATEX-EU-J",
1672
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1673
+ )
1674
+ VATEX_FR_FRANCHISE =
1675
+ T.let(
1676
+ :"VATEX-FR-FRANCHISE",
1677
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1678
+ )
1679
+ VATEX_FR_CNWVAT =
1680
+ T.let(
1681
+ :"VATEX-FR-CNWVAT",
1682
+ EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol
1683
+ )
1684
+
1685
+ sig do
1686
+ override.returns(
1687
+ T::Array[EInvoiceAPI::DocumentResponse::Vatex::TaggedSymbol]
1688
+ )
1689
+ end
1690
+ def self.values
1691
+ end
1692
+ end
502
1693
  end
503
1694
  end
504
1695
  end