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.
@@ -2,10 +2,12 @@ module EInvoiceAPI
2
2
  module Models
3
3
  type document_create =
4
4
  {
5
+ allowances: ::Array[EInvoiceAPI::DocumentCreate::Allowance]?,
5
6
  amount_due: EInvoiceAPI::Models::DocumentCreate::amount_due?,
6
7
  attachments: ::Array[EInvoiceAPI::DocumentAttachmentCreate]?,
7
8
  billing_address: String?,
8
9
  billing_address_recipient: String?,
10
+ charges: ::Array[EInvoiceAPI::DocumentCreate::Charge]?,
9
11
  currency: EInvoiceAPI::Models::currency_code,
10
12
  customer_address: String?,
11
13
  customer_address_recipient: String?,
@@ -19,7 +21,7 @@ module EInvoiceAPI
19
21
  invoice_date: Date?,
20
22
  invoice_id: String?,
21
23
  invoice_total: EInvoiceAPI::Models::DocumentCreate::invoice_total?,
22
- items: ::Array[EInvoiceAPI::DocumentCreate::Item]?,
24
+ items: ::Array[EInvoiceAPI::DocumentCreate::Item],
23
25
  note: String?,
24
26
  payment_details: ::Array[EInvoiceAPI::PaymentDetailCreate]?,
25
27
  payment_term: String?,
@@ -35,9 +37,12 @@ module EInvoiceAPI
35
37
  shipping_address_recipient: String?,
36
38
  state: EInvoiceAPI::Models::document_state,
37
39
  subtotal: EInvoiceAPI::Models::DocumentCreate::subtotal?,
40
+ tax_code: EInvoiceAPI::Models::DocumentCreate::tax_code,
38
41
  tax_details: ::Array[EInvoiceAPI::DocumentCreate::TaxDetail]?,
39
42
  total_discount: EInvoiceAPI::Models::DocumentCreate::total_discount?,
40
43
  total_tax: EInvoiceAPI::Models::DocumentCreate::total_tax?,
44
+ vatex: EInvoiceAPI::Models::DocumentCreate::vatex?,
45
+ vatex_note: String?,
41
46
  vendor_address: String?,
42
47
  vendor_address_recipient: String?,
43
48
  vendor_email: String?,
@@ -46,6 +51,8 @@ module EInvoiceAPI
46
51
  }
47
52
 
48
53
  class DocumentCreate < EInvoiceAPI::Internal::Type::BaseModel
54
+ attr_accessor allowances: ::Array[EInvoiceAPI::DocumentCreate::Allowance]?
55
+
49
56
  attr_accessor amount_due: EInvoiceAPI::Models::DocumentCreate::amount_due?
50
57
 
51
58
  attr_accessor attachments: ::Array[EInvoiceAPI::DocumentAttachmentCreate]?
@@ -54,6 +61,8 @@ module EInvoiceAPI
54
61
 
55
62
  attr_accessor billing_address_recipient: String?
56
63
 
64
+ attr_accessor charges: ::Array[EInvoiceAPI::DocumentCreate::Charge]?
65
+
57
66
  attr_reader currency: EInvoiceAPI::Models::currency_code?
58
67
 
59
68
  def currency=: (
@@ -92,7 +101,11 @@ module EInvoiceAPI
92
101
 
93
102
  attr_accessor invoice_total: EInvoiceAPI::Models::DocumentCreate::invoice_total?
94
103
 
95
- attr_accessor items: ::Array[EInvoiceAPI::DocumentCreate::Item]?
104
+ attr_reader items: ::Array[EInvoiceAPI::DocumentCreate::Item]?
105
+
106
+ def items=: (
107
+ ::Array[EInvoiceAPI::DocumentCreate::Item]
108
+ ) -> ::Array[EInvoiceAPI::DocumentCreate::Item]
96
109
 
97
110
  attr_accessor note: String?
98
111
 
@@ -128,12 +141,22 @@ module EInvoiceAPI
128
141
 
129
142
  attr_accessor subtotal: EInvoiceAPI::Models::DocumentCreate::subtotal?
130
143
 
144
+ attr_reader tax_code: EInvoiceAPI::Models::DocumentCreate::tax_code?
145
+
146
+ def tax_code=: (
147
+ EInvoiceAPI::Models::DocumentCreate::tax_code
148
+ ) -> EInvoiceAPI::Models::DocumentCreate::tax_code
149
+
131
150
  attr_accessor tax_details: ::Array[EInvoiceAPI::DocumentCreate::TaxDetail]?
132
151
 
133
152
  attr_accessor total_discount: EInvoiceAPI::Models::DocumentCreate::total_discount?
134
153
 
135
154
  attr_accessor total_tax: EInvoiceAPI::Models::DocumentCreate::total_tax?
136
155
 
156
+ attr_accessor vatex: EInvoiceAPI::Models::DocumentCreate::vatex?
157
+
158
+ attr_accessor vatex_note: String?
159
+
137
160
  attr_accessor vendor_address: String?
138
161
 
139
162
  attr_accessor vendor_address_recipient: String?
@@ -145,10 +168,12 @@ module EInvoiceAPI
145
168
  attr_accessor vendor_tax_id: String?
146
169
 
147
170
  def initialize: (
171
+ ?allowances: ::Array[EInvoiceAPI::DocumentCreate::Allowance]?,
148
172
  ?amount_due: EInvoiceAPI::Models::DocumentCreate::amount_due?,
149
173
  ?attachments: ::Array[EInvoiceAPI::DocumentAttachmentCreate]?,
150
174
  ?billing_address: String?,
151
175
  ?billing_address_recipient: String?,
176
+ ?charges: ::Array[EInvoiceAPI::DocumentCreate::Charge]?,
152
177
  ?currency: EInvoiceAPI::Models::currency_code,
153
178
  ?customer_address: String?,
154
179
  ?customer_address_recipient: String?,
@@ -162,7 +187,7 @@ module EInvoiceAPI
162
187
  ?invoice_date: Date?,
163
188
  ?invoice_id: String?,
164
189
  ?invoice_total: EInvoiceAPI::Models::DocumentCreate::invoice_total?,
165
- ?items: ::Array[EInvoiceAPI::DocumentCreate::Item]?,
190
+ ?items: ::Array[EInvoiceAPI::DocumentCreate::Item],
166
191
  ?note: String?,
167
192
  ?payment_details: ::Array[EInvoiceAPI::PaymentDetailCreate]?,
168
193
  ?payment_term: String?,
@@ -178,9 +203,12 @@ module EInvoiceAPI
178
203
  ?shipping_address_recipient: String?,
179
204
  ?state: EInvoiceAPI::Models::document_state,
180
205
  ?subtotal: EInvoiceAPI::Models::DocumentCreate::subtotal?,
206
+ ?tax_code: EInvoiceAPI::Models::DocumentCreate::tax_code,
181
207
  ?tax_details: ::Array[EInvoiceAPI::DocumentCreate::TaxDetail]?,
182
208
  ?total_discount: EInvoiceAPI::Models::DocumentCreate::total_discount?,
183
209
  ?total_tax: EInvoiceAPI::Models::DocumentCreate::total_tax?,
210
+ ?vatex: EInvoiceAPI::Models::DocumentCreate::vatex?,
211
+ ?vatex_note: String?,
184
212
  ?vendor_address: String?,
185
213
  ?vendor_address_recipient: String?,
186
214
  ?vendor_email: String?,
@@ -189,10 +217,12 @@ module EInvoiceAPI
189
217
  ) -> void
190
218
 
191
219
  def to_hash: -> {
220
+ allowances: ::Array[EInvoiceAPI::DocumentCreate::Allowance]?,
192
221
  amount_due: EInvoiceAPI::Models::DocumentCreate::amount_due?,
193
222
  attachments: ::Array[EInvoiceAPI::DocumentAttachmentCreate]?,
194
223
  billing_address: String?,
195
224
  billing_address_recipient: String?,
225
+ charges: ::Array[EInvoiceAPI::DocumentCreate::Charge]?,
196
226
  currency: EInvoiceAPI::Models::currency_code,
197
227
  customer_address: String?,
198
228
  customer_address_recipient: String?,
@@ -206,7 +236,7 @@ module EInvoiceAPI
206
236
  invoice_date: Date?,
207
237
  invoice_id: String?,
208
238
  invoice_total: EInvoiceAPI::Models::DocumentCreate::invoice_total?,
209
- items: ::Array[EInvoiceAPI::DocumentCreate::Item]?,
239
+ items: ::Array[EInvoiceAPI::DocumentCreate::Item],
210
240
  note: String?,
211
241
  payment_details: ::Array[EInvoiceAPI::PaymentDetailCreate]?,
212
242
  payment_term: String?,
@@ -222,9 +252,12 @@ module EInvoiceAPI
222
252
  shipping_address_recipient: String?,
223
253
  state: EInvoiceAPI::Models::document_state,
224
254
  subtotal: EInvoiceAPI::Models::DocumentCreate::subtotal?,
255
+ tax_code: EInvoiceAPI::Models::DocumentCreate::tax_code,
225
256
  tax_details: ::Array[EInvoiceAPI::DocumentCreate::TaxDetail]?,
226
257
  total_discount: EInvoiceAPI::Models::DocumentCreate::total_discount?,
227
258
  total_tax: EInvoiceAPI::Models::DocumentCreate::total_tax?,
259
+ vatex: EInvoiceAPI::Models::DocumentCreate::vatex?,
260
+ vatex_note: String?,
228
261
  vendor_address: String?,
229
262
  vendor_address_recipient: String?,
230
263
  vendor_email: String?,
@@ -232,6 +265,96 @@ module EInvoiceAPI
232
265
  vendor_tax_id: String?
233
266
  }
234
267
 
268
+ type allowance =
269
+ {
270
+ amount: EInvoiceAPI::Models::DocumentCreate::Allowance::amount?,
271
+ base_amount: EInvoiceAPI::Models::DocumentCreate::Allowance::base_amount?,
272
+ multiplier_factor: EInvoiceAPI::Models::DocumentCreate::Allowance::multiplier_factor?,
273
+ reason: String?,
274
+ reason_code: String?,
275
+ tax_code: EInvoiceAPI::Models::DocumentCreate::Allowance::tax_code?,
276
+ tax_rate: String?
277
+ }
278
+
279
+ class Allowance < EInvoiceAPI::Internal::Type::BaseModel
280
+ attr_accessor amount: EInvoiceAPI::Models::DocumentCreate::Allowance::amount?
281
+
282
+ attr_accessor base_amount: EInvoiceAPI::Models::DocumentCreate::Allowance::base_amount?
283
+
284
+ attr_accessor multiplier_factor: EInvoiceAPI::Models::DocumentCreate::Allowance::multiplier_factor?
285
+
286
+ attr_accessor reason: String?
287
+
288
+ attr_accessor reason_code: String?
289
+
290
+ attr_accessor tax_code: EInvoiceAPI::Models::DocumentCreate::Allowance::tax_code?
291
+
292
+ attr_accessor tax_rate: String?
293
+
294
+ def initialize: (
295
+ ?amount: EInvoiceAPI::Models::DocumentCreate::Allowance::amount?,
296
+ ?base_amount: EInvoiceAPI::Models::DocumentCreate::Allowance::base_amount?,
297
+ ?multiplier_factor: EInvoiceAPI::Models::DocumentCreate::Allowance::multiplier_factor?,
298
+ ?reason: String?,
299
+ ?reason_code: String?,
300
+ ?tax_code: EInvoiceAPI::Models::DocumentCreate::Allowance::tax_code?,
301
+ ?tax_rate: String?
302
+ ) -> void
303
+
304
+ def to_hash: -> {
305
+ amount: EInvoiceAPI::Models::DocumentCreate::Allowance::amount?,
306
+ base_amount: EInvoiceAPI::Models::DocumentCreate::Allowance::base_amount?,
307
+ multiplier_factor: EInvoiceAPI::Models::DocumentCreate::Allowance::multiplier_factor?,
308
+ reason: String?,
309
+ reason_code: String?,
310
+ tax_code: EInvoiceAPI::Models::DocumentCreate::Allowance::tax_code?,
311
+ tax_rate: String?
312
+ }
313
+
314
+ type amount = Float | String
315
+
316
+ module Amount
317
+ extend EInvoiceAPI::Internal::Type::Union
318
+
319
+ def self?.variants: -> ::Array[EInvoiceAPI::Models::DocumentCreate::Allowance::amount]
320
+ end
321
+
322
+ type base_amount = Float | String
323
+
324
+ module BaseAmount
325
+ extend EInvoiceAPI::Internal::Type::Union
326
+
327
+ def self?.variants: -> ::Array[EInvoiceAPI::Models::DocumentCreate::Allowance::base_amount]
328
+ end
329
+
330
+ type multiplier_factor = Float | String
331
+
332
+ module MultiplierFactor
333
+ extend EInvoiceAPI::Internal::Type::Union
334
+
335
+ def self?.variants: -> ::Array[EInvoiceAPI::Models::DocumentCreate::Allowance::multiplier_factor]
336
+ end
337
+
338
+ type tax_code = :AE | :E | :S | :Z | :G | :O | :K | :L | :M | :B
339
+
340
+ module TaxCode
341
+ extend EInvoiceAPI::Internal::Type::Enum
342
+
343
+ AE: :AE
344
+ E: :E
345
+ S: :S
346
+ Z: :Z
347
+ G: :G
348
+ O: :O
349
+ K: :K
350
+ L: :L
351
+ M: :M
352
+ B: :B
353
+
354
+ def self?.values: -> ::Array[EInvoiceAPI::Models::DocumentCreate::Allowance::tax_code]
355
+ end
356
+ end
357
+
235
358
  type amount_due = Float | String
236
359
 
237
360
  module AmountDue
@@ -240,6 +363,96 @@ module EInvoiceAPI
240
363
  def self?.variants: -> ::Array[EInvoiceAPI::Models::DocumentCreate::amount_due]
241
364
  end
242
365
 
366
+ type charge =
367
+ {
368
+ amount: EInvoiceAPI::Models::DocumentCreate::Charge::amount?,
369
+ base_amount: EInvoiceAPI::Models::DocumentCreate::Charge::base_amount?,
370
+ multiplier_factor: EInvoiceAPI::Models::DocumentCreate::Charge::multiplier_factor?,
371
+ reason: String?,
372
+ reason_code: String?,
373
+ tax_code: EInvoiceAPI::Models::DocumentCreate::Charge::tax_code?,
374
+ tax_rate: String?
375
+ }
376
+
377
+ class Charge < EInvoiceAPI::Internal::Type::BaseModel
378
+ attr_accessor amount: EInvoiceAPI::Models::DocumentCreate::Charge::amount?
379
+
380
+ attr_accessor base_amount: EInvoiceAPI::Models::DocumentCreate::Charge::base_amount?
381
+
382
+ attr_accessor multiplier_factor: EInvoiceAPI::Models::DocumentCreate::Charge::multiplier_factor?
383
+
384
+ attr_accessor reason: String?
385
+
386
+ attr_accessor reason_code: String?
387
+
388
+ attr_accessor tax_code: EInvoiceAPI::Models::DocumentCreate::Charge::tax_code?
389
+
390
+ attr_accessor tax_rate: String?
391
+
392
+ def initialize: (
393
+ ?amount: EInvoiceAPI::Models::DocumentCreate::Charge::amount?,
394
+ ?base_amount: EInvoiceAPI::Models::DocumentCreate::Charge::base_amount?,
395
+ ?multiplier_factor: EInvoiceAPI::Models::DocumentCreate::Charge::multiplier_factor?,
396
+ ?reason: String?,
397
+ ?reason_code: String?,
398
+ ?tax_code: EInvoiceAPI::Models::DocumentCreate::Charge::tax_code?,
399
+ ?tax_rate: String?
400
+ ) -> void
401
+
402
+ def to_hash: -> {
403
+ amount: EInvoiceAPI::Models::DocumentCreate::Charge::amount?,
404
+ base_amount: EInvoiceAPI::Models::DocumentCreate::Charge::base_amount?,
405
+ multiplier_factor: EInvoiceAPI::Models::DocumentCreate::Charge::multiplier_factor?,
406
+ reason: String?,
407
+ reason_code: String?,
408
+ tax_code: EInvoiceAPI::Models::DocumentCreate::Charge::tax_code?,
409
+ tax_rate: String?
410
+ }
411
+
412
+ type amount = Float | String
413
+
414
+ module Amount
415
+ extend EInvoiceAPI::Internal::Type::Union
416
+
417
+ def self?.variants: -> ::Array[EInvoiceAPI::Models::DocumentCreate::Charge::amount]
418
+ end
419
+
420
+ type base_amount = Float | String
421
+
422
+ module BaseAmount
423
+ extend EInvoiceAPI::Internal::Type::Union
424
+
425
+ def self?.variants: -> ::Array[EInvoiceAPI::Models::DocumentCreate::Charge::base_amount]
426
+ end
427
+
428
+ type multiplier_factor = Float | String
429
+
430
+ module MultiplierFactor
431
+ extend EInvoiceAPI::Internal::Type::Union
432
+
433
+ def self?.variants: -> ::Array[EInvoiceAPI::Models::DocumentCreate::Charge::multiplier_factor]
434
+ end
435
+
436
+ type tax_code = :AE | :E | :S | :Z | :G | :O | :K | :L | :M | :B
437
+
438
+ module TaxCode
439
+ extend EInvoiceAPI::Internal::Type::Enum
440
+
441
+ AE: :AE
442
+ E: :E
443
+ S: :S
444
+ Z: :Z
445
+ G: :G
446
+ O: :O
447
+ K: :K
448
+ L: :L
449
+ M: :M
450
+ B: :B
451
+
452
+ def self?.values: -> ::Array[EInvoiceAPI::Models::DocumentCreate::Charge::tax_code]
453
+ end
454
+ end
455
+
243
456
  type invoice_total = Float | String
244
457
 
245
458
  module InvoiceTotal
@@ -250,7 +463,9 @@ module EInvoiceAPI
250
463
 
251
464
  type item =
252
465
  {
466
+ allowances: ::Array[EInvoiceAPI::DocumentCreate::Item::Allowance]?,
253
467
  amount: EInvoiceAPI::Models::DocumentCreate::Item::amount?,
468
+ charges: ::Array[EInvoiceAPI::DocumentCreate::Item::Charge]?,
254
469
  date: nil,
255
470
  description: String?,
256
471
  product_code: String?,
@@ -262,8 +477,12 @@ module EInvoiceAPI
262
477
  }
263
478
 
264
479
  class Item < EInvoiceAPI::Internal::Type::BaseModel
480
+ attr_accessor allowances: ::Array[EInvoiceAPI::DocumentCreate::Item::Allowance]?
481
+
265
482
  attr_accessor amount: EInvoiceAPI::Models::DocumentCreate::Item::amount?
266
483
 
484
+ attr_accessor charges: ::Array[EInvoiceAPI::DocumentCreate::Item::Charge]?
485
+
267
486
  attr_accessor date: nil
268
487
 
269
488
  attr_accessor description: String?
@@ -281,7 +500,9 @@ module EInvoiceAPI
281
500
  attr_accessor unit_price: EInvoiceAPI::Models::DocumentCreate::Item::unit_price?
282
501
 
283
502
  def initialize: (
503
+ ?allowances: ::Array[EInvoiceAPI::DocumentCreate::Item::Allowance]?,
284
504
  ?amount: EInvoiceAPI::Models::DocumentCreate::Item::amount?,
505
+ ?charges: ::Array[EInvoiceAPI::DocumentCreate::Item::Charge]?,
285
506
  ?date: nil,
286
507
  ?description: String?,
287
508
  ?product_code: String?,
@@ -293,7 +514,9 @@ module EInvoiceAPI
293
514
  ) -> void
294
515
 
295
516
  def to_hash: -> {
517
+ allowances: ::Array[EInvoiceAPI::DocumentCreate::Item::Allowance]?,
296
518
  amount: EInvoiceAPI::Models::DocumentCreate::Item::amount?,
519
+ charges: ::Array[EInvoiceAPI::DocumentCreate::Item::Charge]?,
297
520
  date: nil,
298
521
  description: String?,
299
522
  product_code: String?,
@@ -304,6 +527,96 @@ module EInvoiceAPI
304
527
  unit_price: EInvoiceAPI::Models::DocumentCreate::Item::unit_price?
305
528
  }
306
529
 
530
+ type allowance =
531
+ {
532
+ amount: EInvoiceAPI::Models::DocumentCreate::Item::Allowance::amount?,
533
+ base_amount: EInvoiceAPI::Models::DocumentCreate::Item::Allowance::base_amount?,
534
+ multiplier_factor: EInvoiceAPI::Models::DocumentCreate::Item::Allowance::multiplier_factor?,
535
+ reason: String?,
536
+ reason_code: String?,
537
+ tax_code: EInvoiceAPI::Models::DocumentCreate::Item::Allowance::tax_code?,
538
+ tax_rate: String?
539
+ }
540
+
541
+ class Allowance < EInvoiceAPI::Internal::Type::BaseModel
542
+ attr_accessor amount: EInvoiceAPI::Models::DocumentCreate::Item::Allowance::amount?
543
+
544
+ attr_accessor base_amount: EInvoiceAPI::Models::DocumentCreate::Item::Allowance::base_amount?
545
+
546
+ attr_accessor multiplier_factor: EInvoiceAPI::Models::DocumentCreate::Item::Allowance::multiplier_factor?
547
+
548
+ attr_accessor reason: String?
549
+
550
+ attr_accessor reason_code: String?
551
+
552
+ attr_accessor tax_code: EInvoiceAPI::Models::DocumentCreate::Item::Allowance::tax_code?
553
+
554
+ attr_accessor tax_rate: String?
555
+
556
+ def initialize: (
557
+ ?amount: EInvoiceAPI::Models::DocumentCreate::Item::Allowance::amount?,
558
+ ?base_amount: EInvoiceAPI::Models::DocumentCreate::Item::Allowance::base_amount?,
559
+ ?multiplier_factor: EInvoiceAPI::Models::DocumentCreate::Item::Allowance::multiplier_factor?,
560
+ ?reason: String?,
561
+ ?reason_code: String?,
562
+ ?tax_code: EInvoiceAPI::Models::DocumentCreate::Item::Allowance::tax_code?,
563
+ ?tax_rate: String?
564
+ ) -> void
565
+
566
+ def to_hash: -> {
567
+ amount: EInvoiceAPI::Models::DocumentCreate::Item::Allowance::amount?,
568
+ base_amount: EInvoiceAPI::Models::DocumentCreate::Item::Allowance::base_amount?,
569
+ multiplier_factor: EInvoiceAPI::Models::DocumentCreate::Item::Allowance::multiplier_factor?,
570
+ reason: String?,
571
+ reason_code: String?,
572
+ tax_code: EInvoiceAPI::Models::DocumentCreate::Item::Allowance::tax_code?,
573
+ tax_rate: String?
574
+ }
575
+
576
+ type amount = Float | String
577
+
578
+ module Amount
579
+ extend EInvoiceAPI::Internal::Type::Union
580
+
581
+ def self?.variants: -> ::Array[EInvoiceAPI::Models::DocumentCreate::Item::Allowance::amount]
582
+ end
583
+
584
+ type base_amount = Float | String
585
+
586
+ module BaseAmount
587
+ extend EInvoiceAPI::Internal::Type::Union
588
+
589
+ def self?.variants: -> ::Array[EInvoiceAPI::Models::DocumentCreate::Item::Allowance::base_amount]
590
+ end
591
+
592
+ type multiplier_factor = Float | String
593
+
594
+ module MultiplierFactor
595
+ extend EInvoiceAPI::Internal::Type::Union
596
+
597
+ def self?.variants: -> ::Array[EInvoiceAPI::Models::DocumentCreate::Item::Allowance::multiplier_factor]
598
+ end
599
+
600
+ type tax_code = :AE | :E | :S | :Z | :G | :O | :K | :L | :M | :B
601
+
602
+ module TaxCode
603
+ extend EInvoiceAPI::Internal::Type::Enum
604
+
605
+ AE: :AE
606
+ E: :E
607
+ S: :S
608
+ Z: :Z
609
+ G: :G
610
+ O: :O
611
+ K: :K
612
+ L: :L
613
+ M: :M
614
+ B: :B
615
+
616
+ def self?.values: -> ::Array[EInvoiceAPI::Models::DocumentCreate::Item::Allowance::tax_code]
617
+ end
618
+ end
619
+
307
620
  type amount = Float | String
308
621
 
309
622
  module Amount
@@ -312,6 +625,96 @@ module EInvoiceAPI
312
625
  def self?.variants: -> ::Array[EInvoiceAPI::Models::DocumentCreate::Item::amount]
313
626
  end
314
627
 
628
+ type charge =
629
+ {
630
+ amount: EInvoiceAPI::Models::DocumentCreate::Item::Charge::amount?,
631
+ base_amount: EInvoiceAPI::Models::DocumentCreate::Item::Charge::base_amount?,
632
+ multiplier_factor: EInvoiceAPI::Models::DocumentCreate::Item::Charge::multiplier_factor?,
633
+ reason: String?,
634
+ reason_code: String?,
635
+ tax_code: EInvoiceAPI::Models::DocumentCreate::Item::Charge::tax_code?,
636
+ tax_rate: String?
637
+ }
638
+
639
+ class Charge < EInvoiceAPI::Internal::Type::BaseModel
640
+ attr_accessor amount: EInvoiceAPI::Models::DocumentCreate::Item::Charge::amount?
641
+
642
+ attr_accessor base_amount: EInvoiceAPI::Models::DocumentCreate::Item::Charge::base_amount?
643
+
644
+ attr_accessor multiplier_factor: EInvoiceAPI::Models::DocumentCreate::Item::Charge::multiplier_factor?
645
+
646
+ attr_accessor reason: String?
647
+
648
+ attr_accessor reason_code: String?
649
+
650
+ attr_accessor tax_code: EInvoiceAPI::Models::DocumentCreate::Item::Charge::tax_code?
651
+
652
+ attr_accessor tax_rate: String?
653
+
654
+ def initialize: (
655
+ ?amount: EInvoiceAPI::Models::DocumentCreate::Item::Charge::amount?,
656
+ ?base_amount: EInvoiceAPI::Models::DocumentCreate::Item::Charge::base_amount?,
657
+ ?multiplier_factor: EInvoiceAPI::Models::DocumentCreate::Item::Charge::multiplier_factor?,
658
+ ?reason: String?,
659
+ ?reason_code: String?,
660
+ ?tax_code: EInvoiceAPI::Models::DocumentCreate::Item::Charge::tax_code?,
661
+ ?tax_rate: String?
662
+ ) -> void
663
+
664
+ def to_hash: -> {
665
+ amount: EInvoiceAPI::Models::DocumentCreate::Item::Charge::amount?,
666
+ base_amount: EInvoiceAPI::Models::DocumentCreate::Item::Charge::base_amount?,
667
+ multiplier_factor: EInvoiceAPI::Models::DocumentCreate::Item::Charge::multiplier_factor?,
668
+ reason: String?,
669
+ reason_code: String?,
670
+ tax_code: EInvoiceAPI::Models::DocumentCreate::Item::Charge::tax_code?,
671
+ tax_rate: String?
672
+ }
673
+
674
+ type amount = Float | String
675
+
676
+ module Amount
677
+ extend EInvoiceAPI::Internal::Type::Union
678
+
679
+ def self?.variants: -> ::Array[EInvoiceAPI::Models::DocumentCreate::Item::Charge::amount]
680
+ end
681
+
682
+ type base_amount = Float | String
683
+
684
+ module BaseAmount
685
+ extend EInvoiceAPI::Internal::Type::Union
686
+
687
+ def self?.variants: -> ::Array[EInvoiceAPI::Models::DocumentCreate::Item::Charge::base_amount]
688
+ end
689
+
690
+ type multiplier_factor = Float | String
691
+
692
+ module MultiplierFactor
693
+ extend EInvoiceAPI::Internal::Type::Union
694
+
695
+ def self?.variants: -> ::Array[EInvoiceAPI::Models::DocumentCreate::Item::Charge::multiplier_factor]
696
+ end
697
+
698
+ type tax_code = :AE | :E | :S | :Z | :G | :O | :K | :L | :M | :B
699
+
700
+ module TaxCode
701
+ extend EInvoiceAPI::Internal::Type::Enum
702
+
703
+ AE: :AE
704
+ E: :E
705
+ S: :S
706
+ Z: :Z
707
+ G: :G
708
+ O: :O
709
+ K: :K
710
+ L: :L
711
+ M: :M
712
+ B: :B
713
+
714
+ def self?.values: -> ::Array[EInvoiceAPI::Models::DocumentCreate::Item::Charge::tax_code]
715
+ end
716
+ end
717
+
315
718
  type quantity = Float | String
316
719
 
317
720
  module Quantity
@@ -353,6 +756,25 @@ module EInvoiceAPI
353
756
  def self?.variants: -> ::Array[EInvoiceAPI::Models::DocumentCreate::subtotal]
354
757
  end
355
758
 
759
+ type tax_code = :AE | :E | :S | :Z | :G | :O | :K | :L | :M | :B
760
+
761
+ module TaxCode
762
+ extend EInvoiceAPI::Internal::Type::Enum
763
+
764
+ AE: :AE
765
+ E: :E
766
+ S: :S
767
+ Z: :Z
768
+ G: :G
769
+ O: :O
770
+ K: :K
771
+ L: :L
772
+ M: :M
773
+ B: :B
774
+
775
+ def self?.values: -> ::Array[EInvoiceAPI::Models::DocumentCreate::tax_code]
776
+ end
777
+
356
778
  type tax_detail =
357
779
  {
358
780
  amount: EInvoiceAPI::Models::DocumentCreate::TaxDetail::amount?,
@@ -398,6 +820,139 @@ module EInvoiceAPI
398
820
 
399
821
  def self?.variants: -> ::Array[EInvoiceAPI::Models::DocumentCreate::total_tax]
400
822
  end
823
+
824
+ type vatex =
825
+ :"VATEX-EU-79-C"
826
+ | :"VATEX-EU-132"
827
+ | :"VATEX-EU-132-1A"
828
+ | :"VATEX-EU-132-1B"
829
+ | :"VATEX-EU-132-1C"
830
+ | :"VATEX-EU-132-1D"
831
+ | :"VATEX-EU-132-1E"
832
+ | :"VATEX-EU-132-1F"
833
+ | :"VATEX-EU-132-1G"
834
+ | :"VATEX-EU-132-1H"
835
+ | :"VATEX-EU-132-1I"
836
+ | :"VATEX-EU-132-1J"
837
+ | :"VATEX-EU-132-1K"
838
+ | :"VATEX-EU-132-1L"
839
+ | :"VATEX-EU-132-1M"
840
+ | :"VATEX-EU-132-1N"
841
+ | :"VATEX-EU-132-1O"
842
+ | :"VATEX-EU-132-1P"
843
+ | :"VATEX-EU-132-1Q"
844
+ | :"VATEX-EU-143"
845
+ | :"VATEX-EU-143-1A"
846
+ | :"VATEX-EU-143-1B"
847
+ | :"VATEX-EU-143-1C"
848
+ | :"VATEX-EU-143-1D"
849
+ | :"VATEX-EU-143-1E"
850
+ | :"VATEX-EU-143-1F"
851
+ | :"VATEX-EU-143-1FA"
852
+ | :"VATEX-EU-143-1G"
853
+ | :"VATEX-EU-143-1H"
854
+ | :"VATEX-EU-143-1I"
855
+ | :"VATEX-EU-143-1J"
856
+ | :"VATEX-EU-143-1K"
857
+ | :"VATEX-EU-143-1L"
858
+ | :"VATEX-EU-144"
859
+ | :"VATEX-EU-146-1E"
860
+ | :"VATEX-EU-148"
861
+ | :"VATEX-EU-148-A"
862
+ | :"VATEX-EU-148-B"
863
+ | :"VATEX-EU-148-C"
864
+ | :"VATEX-EU-148-D"
865
+ | :"VATEX-EU-148-E"
866
+ | :"VATEX-EU-148-F"
867
+ | :"VATEX-EU-148-G"
868
+ | :"VATEX-EU-151"
869
+ | :"VATEX-EU-151-1A"
870
+ | :"VATEX-EU-151-1AA"
871
+ | :"VATEX-EU-151-1B"
872
+ | :"VATEX-EU-151-1C"
873
+ | :"VATEX-EU-151-1D"
874
+ | :"VATEX-EU-151-1E"
875
+ | :"VATEX-EU-159"
876
+ | :"VATEX-EU-309"
877
+ | :"VATEX-EU-AE"
878
+ | :"VATEX-EU-D"
879
+ | :"VATEX-EU-F"
880
+ | :"VATEX-EU-G"
881
+ | :"VATEX-EU-I"
882
+ | :"VATEX-EU-IC"
883
+ | :"VATEX-EU-O"
884
+ | :"VATEX-EU-J"
885
+ | :"VATEX-FR-FRANCHISE"
886
+ | :"VATEX-FR-CNWVAT"
887
+
888
+ module Vatex
889
+ extend EInvoiceAPI::Internal::Type::Enum
890
+
891
+ VATEX_EU_79_C: :"VATEX-EU-79-C"
892
+ VATEX_EU_132: :"VATEX-EU-132"
893
+ VATEX_EU_132_1_A: :"VATEX-EU-132-1A"
894
+ VATEX_EU_132_1_B: :"VATEX-EU-132-1B"
895
+ VATEX_EU_132_1_C: :"VATEX-EU-132-1C"
896
+ VATEX_EU_132_1_D: :"VATEX-EU-132-1D"
897
+ VATEX_EU_132_1_E: :"VATEX-EU-132-1E"
898
+ VATEX_EU_132_1_F: :"VATEX-EU-132-1F"
899
+ VATEX_EU_132_1_G: :"VATEX-EU-132-1G"
900
+ VATEX_EU_132_1_H: :"VATEX-EU-132-1H"
901
+ VATEX_EU_132_1_I: :"VATEX-EU-132-1I"
902
+ VATEX_EU_132_1_J: :"VATEX-EU-132-1J"
903
+ VATEX_EU_132_1_K: :"VATEX-EU-132-1K"
904
+ VATEX_EU_132_1_L: :"VATEX-EU-132-1L"
905
+ VATEX_EU_132_1_M: :"VATEX-EU-132-1M"
906
+ VATEX_EU_132_1_N: :"VATEX-EU-132-1N"
907
+ VATEX_EU_132_1_O: :"VATEX-EU-132-1O"
908
+ VATEX_EU_132_1_P: :"VATEX-EU-132-1P"
909
+ VATEX_EU_132_1_Q: :"VATEX-EU-132-1Q"
910
+ VATEX_EU_143: :"VATEX-EU-143"
911
+ VATEX_EU_143_1_A: :"VATEX-EU-143-1A"
912
+ VATEX_EU_143_1_B: :"VATEX-EU-143-1B"
913
+ VATEX_EU_143_1_C: :"VATEX-EU-143-1C"
914
+ VATEX_EU_143_1_D: :"VATEX-EU-143-1D"
915
+ VATEX_EU_143_1_E: :"VATEX-EU-143-1E"
916
+ VATEX_EU_143_1_F: :"VATEX-EU-143-1F"
917
+ VATEX_EU_143_1_FA: :"VATEX-EU-143-1FA"
918
+ VATEX_EU_143_1_G: :"VATEX-EU-143-1G"
919
+ VATEX_EU_143_1_H: :"VATEX-EU-143-1H"
920
+ VATEX_EU_143_1_I: :"VATEX-EU-143-1I"
921
+ VATEX_EU_143_1_J: :"VATEX-EU-143-1J"
922
+ VATEX_EU_143_1_K: :"VATEX-EU-143-1K"
923
+ VATEX_EU_143_1_L: :"VATEX-EU-143-1L"
924
+ VATEX_EU_144: :"VATEX-EU-144"
925
+ VATEX_EU_146_1_E: :"VATEX-EU-146-1E"
926
+ VATEX_EU_148: :"VATEX-EU-148"
927
+ VATEX_EU_148_A: :"VATEX-EU-148-A"
928
+ VATEX_EU_148_B: :"VATEX-EU-148-B"
929
+ VATEX_EU_148_C: :"VATEX-EU-148-C"
930
+ VATEX_EU_148_D: :"VATEX-EU-148-D"
931
+ VATEX_EU_148_E: :"VATEX-EU-148-E"
932
+ VATEX_EU_148_F: :"VATEX-EU-148-F"
933
+ VATEX_EU_148_G: :"VATEX-EU-148-G"
934
+ VATEX_EU_151: :"VATEX-EU-151"
935
+ VATEX_EU_151_1_A: :"VATEX-EU-151-1A"
936
+ VATEX_EU_151_1_AA: :"VATEX-EU-151-1AA"
937
+ VATEX_EU_151_1_B: :"VATEX-EU-151-1B"
938
+ VATEX_EU_151_1_C: :"VATEX-EU-151-1C"
939
+ VATEX_EU_151_1_D: :"VATEX-EU-151-1D"
940
+ VATEX_EU_151_1_E: :"VATEX-EU-151-1E"
941
+ VATEX_EU_159: :"VATEX-EU-159"
942
+ VATEX_EU_309: :"VATEX-EU-309"
943
+ VATEX_EU_AE: :"VATEX-EU-AE"
944
+ VATEX_EU_D: :"VATEX-EU-D"
945
+ VATEX_EU_F: :"VATEX-EU-F"
946
+ VATEX_EU_G: :"VATEX-EU-G"
947
+ VATEX_EU_I: :"VATEX-EU-I"
948
+ VATEX_EU_IC: :"VATEX-EU-IC"
949
+ VATEX_EU_O: :"VATEX-EU-O"
950
+ VATEX_EU_J: :"VATEX-EU-J"
951
+ VATEX_FR_FRANCHISE: :"VATEX-FR-FRANCHISE"
952
+ VATEX_FR_CNWVAT: :"VATEX-FR-CNWVAT"
953
+
954
+ def self?.values: -> ::Array[EInvoiceAPI::Models::DocumentCreate::vatex]
955
+ end
401
956
  end
402
957
  end
403
958
  end