e-invoice-api 0.12.0 → 0.13.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.
@@ -428,8 +428,7 @@ module EInvoiceAPI
428
428
 
429
429
  # @!attribute multiplier_factor
430
430
  # The percentage that may be used, in conjunction with the allowance base amount,
431
- # to calculate the allowance amount. To state 20%, use value 20. Must be rounded
432
- # to maximum 2 decimals
431
+ # to calculate the allowance amount. To state 20%, use value 20
433
432
  #
434
433
  # @return [Float, String, nil]
435
434
  optional :multiplier_factor,
@@ -443,23 +442,24 @@ module EInvoiceAPI
443
442
  optional :reason, String, nil?: true
444
443
 
445
444
  # @!attribute reason_code
446
- # Allowance reason codes for invoice discounts and charges
445
+ # The code for the allowance reason
447
446
  #
448
- # @return [Symbol, EInvoiceAPI::Models::DocumentCreate::Allowance::ReasonCode, nil]
449
- optional :reason_code, enum: -> { EInvoiceAPI::DocumentCreate::Allowance::ReasonCode }, nil?: true
447
+ # @return [String, nil]
448
+ optional :reason_code, String, nil?: true
450
449
 
451
450
  # @!attribute tax_code
452
- # The VAT category code that applies to the allowance
451
+ # Duty or tax or fee category codes (Subset of UNCL5305)
452
+ #
453
+ # Agency: UN/CEFACT Version: D.16B Subset: OpenPEPPOL
453
454
  #
454
455
  # @return [Symbol, EInvoiceAPI::Models::DocumentCreate::Allowance::TaxCode, nil]
455
- optional :tax_code, enum: -> { EInvoiceAPI::DocumentCreate::Allowance::TaxCode }
456
+ optional :tax_code, enum: -> { EInvoiceAPI::DocumentCreate::Allowance::TaxCode }, nil?: true
456
457
 
457
458
  # @!attribute tax_rate
458
- # The VAT rate, represented as percentage that applies to the allowance. Must be
459
- # rounded to maximum 2 decimals
459
+ # The VAT rate, represented as percentage that applies to the allowance
460
460
  #
461
- # @return [Float, String, nil]
462
- optional :tax_rate, union: -> { EInvoiceAPI::DocumentCreate::Allowance::TaxRate }, nil?: true
461
+ # @return [String, nil]
462
+ optional :tax_rate, String, nil?: true
463
463
 
464
464
  # @!method initialize(amount: nil, base_amount: nil, multiplier_factor: nil, reason: nil, reason_code: nil, tax_code: nil, tax_rate: nil)
465
465
  # Some parameter documentations has been truncated, see
@@ -475,11 +475,11 @@ module EInvoiceAPI
475
475
  #
476
476
  # @param reason [String, nil] The reason for the allowance
477
477
  #
478
- # @param reason_code [Symbol, EInvoiceAPI::Models::DocumentCreate::Allowance::ReasonCode, nil] Allowance reason codes for invoice discounts and charges
478
+ # @param reason_code [String, nil] The code for the allowance reason
479
479
  #
480
- # @param tax_code [Symbol, EInvoiceAPI::Models::DocumentCreate::Allowance::TaxCode] The VAT category code that applies to the allowance
480
+ # @param tax_code [Symbol, EInvoiceAPI::Models::DocumentCreate::Allowance::TaxCode, nil] Duty or tax or fee category codes (Subset of UNCL5305)
481
481
  #
482
- # @param tax_rate [Float, String, nil] The VAT rate, represented as percentage that applies to the allowance. Must be r
482
+ # @param tax_rate [String, nil] The VAT rate, represented as percentage that applies to the allowance
483
483
 
484
484
  # The allowance amount, without VAT. Must be rounded to maximum 2 decimals
485
485
  #
@@ -511,8 +511,7 @@ module EInvoiceAPI
511
511
  end
512
512
 
513
513
  # The percentage that may be used, in conjunction with the allowance base amount,
514
- # to calculate the allowance amount. To state 20%, use value 20. Must be rounded
515
- # to maximum 2 decimals
514
+ # to calculate the allowance amount. To state 20%, use value 20
516
515
  #
517
516
  # @see EInvoiceAPI::Models::DocumentCreate::Allowance#multiplier_factor
518
517
  module MultiplierFactor
@@ -526,37 +525,9 @@ module EInvoiceAPI
526
525
  # @return [Array(Float, String)]
527
526
  end
528
527
 
529
- # Allowance reason codes for invoice discounts and charges
528
+ # Duty or tax or fee category codes (Subset of UNCL5305)
530
529
  #
531
- # @see EInvoiceAPI::Models::DocumentCreate::Allowance#reason_code
532
- module ReasonCode
533
- extend EInvoiceAPI::Internal::Type::Enum
534
-
535
- REASON_CODE_41 = :"41"
536
- REASON_CODE_42 = :"42"
537
- REASON_CODE_60 = :"60"
538
- REASON_CODE_62 = :"62"
539
- REASON_CODE_63 = :"63"
540
- REASON_CODE_64 = :"64"
541
- REASON_CODE_65 = :"65"
542
- REASON_CODE_66 = :"66"
543
- REASON_CODE_67 = :"67"
544
- REASON_CODE_68 = :"68"
545
- REASON_CODE_70 = :"70"
546
- REASON_CODE_71 = :"71"
547
- REASON_CODE_88 = :"88"
548
- REASON_CODE_95 = :"95"
549
- REASON_CODE_100 = :"100"
550
- REASON_CODE_102 = :"102"
551
- REASON_CODE_103 = :"103"
552
- REASON_CODE_104 = :"104"
553
- REASON_CODE_105 = :"105"
554
-
555
- # @!method self.values
556
- # @return [Array<Symbol>]
557
- end
558
-
559
- # The VAT category code that applies to the allowance
530
+ # Agency: UN/CEFACT Version: D.16B Subset: OpenPEPPOL
560
531
  #
561
532
  # @see EInvoiceAPI::Models::DocumentCreate::Allowance#tax_code
562
533
  module TaxCode
@@ -576,21 +547,6 @@ module EInvoiceAPI
576
547
  # @!method self.values
577
548
  # @return [Array<Symbol>]
578
549
  end
579
-
580
- # The VAT rate, represented as percentage that applies to the allowance. Must be
581
- # rounded to maximum 2 decimals
582
- #
583
- # @see EInvoiceAPI::Models::DocumentCreate::Allowance#tax_rate
584
- module TaxRate
585
- extend EInvoiceAPI::Internal::Type::Union
586
-
587
- variant Float
588
-
589
- variant String
590
-
591
- # @!method self.variants
592
- # @return [Array(Float, String)]
593
- end
594
550
  end
595
551
 
596
552
  # The amount due for payment. Must be positive and rounded to maximum 2 decimals
@@ -637,10 +593,10 @@ module EInvoiceAPI
637
593
  optional :reason, String, nil?: true
638
594
 
639
595
  # @!attribute reason_code
640
- # Charge reason codes for invoice charges and fees
596
+ # The code for the charge reason
641
597
  #
642
- # @return [Symbol, EInvoiceAPI::Models::DocumentCreate::Charge::ReasonCode, nil]
643
- optional :reason_code, enum: -> { EInvoiceAPI::DocumentCreate::Charge::ReasonCode }, nil?: true
598
+ # @return [String, nil]
599
+ optional :reason_code, String, nil?: true
644
600
 
645
601
  # @!attribute tax_code
646
602
  # Duty or tax or fee category codes (Subset of UNCL5305)
@@ -653,8 +609,8 @@ module EInvoiceAPI
653
609
  # @!attribute tax_rate
654
610
  # The VAT rate, represented as percentage that applies to the charge
655
611
  #
656
- # @return [Float, String, nil]
657
- optional :tax_rate, union: -> { EInvoiceAPI::DocumentCreate::Charge::TaxRate }, nil?: true
612
+ # @return [String, nil]
613
+ optional :tax_rate, String, nil?: true
658
614
 
659
615
  # @!method initialize(amount: nil, base_amount: nil, multiplier_factor: nil, reason: nil, reason_code: nil, tax_code: nil, tax_rate: nil)
660
616
  # Some parameter documentations has been truncated, see
@@ -670,11 +626,11 @@ module EInvoiceAPI
670
626
  #
671
627
  # @param reason [String, nil] The reason for the charge
672
628
  #
673
- # @param reason_code [Symbol, EInvoiceAPI::Models::DocumentCreate::Charge::ReasonCode, nil] Charge reason codes for invoice charges and fees
629
+ # @param reason_code [String, nil] The code for the charge reason
674
630
  #
675
631
  # @param tax_code [Symbol, EInvoiceAPI::Models::DocumentCreate::Charge::TaxCode, nil] Duty or tax or fee category codes (Subset of UNCL5305)
676
632
  #
677
- # @param tax_rate [Float, String, nil] The VAT rate, represented as percentage that applies to the charge
633
+ # @param tax_rate [String, nil] The VAT rate, represented as percentage that applies to the charge
678
634
 
679
635
  # The charge amount, without VAT. Must be rounded to maximum 2 decimals
680
636
  #
@@ -720,195 +676,6 @@ module EInvoiceAPI
720
676
  # @return [Array(Float, String)]
721
677
  end
722
678
 
723
- # Charge reason codes for invoice charges and fees
724
- #
725
- # @see EInvoiceAPI::Models::DocumentCreate::Charge#reason_code
726
- module ReasonCode
727
- extend EInvoiceAPI::Internal::Type::Enum
728
-
729
- AA = :AA
730
- AAA = :AAA
731
- AAC = :AAC
732
- AAD = :AAD
733
- AAE = :AAE
734
- AAF = :AAF
735
- AAH = :AAH
736
- AAI = :AAI
737
- AAS = :AAS
738
- AAT = :AAT
739
- AAV = :AAV
740
- AAY = :AAY
741
- AAZ = :AAZ
742
- ABA = :ABA
743
- ABB = :ABB
744
- ABC = :ABC
745
- ABD = :ABD
746
- ABF = :ABF
747
- ABK = :ABK
748
- ABL = :ABL
749
- ABN = :ABN
750
- ABR = :ABR
751
- ABS = :ABS
752
- ABT = :ABT
753
- ABU = :ABU
754
- ACF = :ACF
755
- ACG = :ACG
756
- ACH = :ACH
757
- ACI = :ACI
758
- ACJ = :ACJ
759
- ACK = :ACK
760
- ACL = :ACL
761
- ACM = :ACM
762
- ACS = :ACS
763
- ADC = :ADC
764
- ADE = :ADE
765
- ADJ = :ADJ
766
- ADK = :ADK
767
- ADL = :ADL
768
- ADM = :ADM
769
- ADN = :ADN
770
- ADO = :ADO
771
- ADP = :ADP
772
- ADQ = :ADQ
773
- ADR = :ADR
774
- ADT = :ADT
775
- ADW = :ADW
776
- ADY = :ADY
777
- ADZ = :ADZ
778
- AEA = :AEA
779
- AEB = :AEB
780
- AEC = :AEC
781
- AED = :AED
782
- AEF = :AEF
783
- AEH = :AEH
784
- AEI = :AEI
785
- AEJ = :AEJ
786
- AEK = :AEK
787
- AEL = :AEL
788
- AEM = :AEM
789
- AEN = :AEN
790
- AEO = :AEO
791
- AEP = :AEP
792
- AES = :AES
793
- AET = :AET
794
- AEU = :AEU
795
- AEV = :AEV
796
- AEW = :AEW
797
- AEX = :AEX
798
- AEY = :AEY
799
- AEZ = :AEZ
800
- AJ = :AJ
801
- AU = :AU
802
- CA = :CA
803
- CAB = :CAB
804
- CAD = :CAD
805
- CAE = :CAE
806
- CAF = :CAF
807
- CAI = :CAI
808
- CAJ = :CAJ
809
- CAK = :CAK
810
- CAL = :CAL
811
- CAM = :CAM
812
- CAN = :CAN
813
- CAO = :CAO
814
- CAP = :CAP
815
- CAQ = :CAQ
816
- CAR = :CAR
817
- CAS = :CAS
818
- CAT = :CAT
819
- CAU = :CAU
820
- CAV = :CAV
821
- CAW = :CAW
822
- CAX = :CAX
823
- CAY = :CAY
824
- CAZ = :CAZ
825
- CD = :CD
826
- CG = :CG
827
- CS = :CS
828
- CT = :CT
829
- DAB = :DAB
830
- DAC = :DAC
831
- DAD = :DAD
832
- DAF = :DAF
833
- DAG = :DAG
834
- DAH = :DAH
835
- DAI = :DAI
836
- DAJ = :DAJ
837
- DAK = :DAK
838
- DAL = :DAL
839
- DAM = :DAM
840
- DAN = :DAN
841
- DAO = :DAO
842
- DAP = :DAP
843
- DAQ = :DAQ
844
- DL = :DL
845
- EG = :EG
846
- EP = :EP
847
- ER = :ER
848
- FAA = :FAA
849
- FAB = :FAB
850
- FAC = :FAC
851
- FC = :FC
852
- FH = :FH
853
- FI = :FI
854
- GAA = :GAA
855
- HAA = :HAA
856
- HD = :HD
857
- HH = :HH
858
- IAA = :IAA
859
- IAB = :IAB
860
- ID = :ID
861
- IF = :IF
862
- IR = :IR
863
- IS = :IS
864
- KO = :KO
865
- L1 = :L1
866
- LA = :LA
867
- LAA = :LAA
868
- LAB = :LAB
869
- LF = :LF
870
- MAE = :MAE
871
- MI = :MI
872
- ML = :ML
873
- NAA = :NAA
874
- OA = :OA
875
- PA = :PA
876
- PAA = :PAA
877
- PC = :PC
878
- PL = :PL
879
- PRV = :PRV
880
- RAB = :RAB
881
- RAC = :RAC
882
- RAD = :RAD
883
- RAF = :RAF
884
- RE = :RE
885
- RF = :RF
886
- RH = :RH
887
- RV = :RV
888
- SA = :SA
889
- SAA = :SAA
890
- SAD = :SAD
891
- SAE = :SAE
892
- SAI = :SAI
893
- SG = :SG
894
- SH = :SH
895
- SM = :SM
896
- SU = :SU
897
- TAB = :TAB
898
- TAC = :TAC
899
- TT = :TT
900
- TV = :TV
901
- V1 = :V1
902
- V2 = :V2
903
- WH = :WH
904
- XAA = :XAA
905
- YY = :YY
906
- ZZZ = :ZZZ
907
-
908
- # @!method self.values
909
- # @return [Array<Symbol>]
910
- end
911
-
912
679
  # Duty or tax or fee category codes (Subset of UNCL5305)
913
680
  #
914
681
  # Agency: UN/CEFACT Version: D.16B Subset: OpenPEPPOL
@@ -931,20 +698,6 @@ module EInvoiceAPI
931
698
  # @!method self.values
932
699
  # @return [Array<Symbol>]
933
700
  end
934
-
935
- # The VAT rate, represented as percentage that applies to the charge
936
- #
937
- # @see EInvoiceAPI::Models::DocumentCreate::Charge#tax_rate
938
- module TaxRate
939
- extend EInvoiceAPI::Internal::Type::Union
940
-
941
- variant Float
942
-
943
- variant String
944
-
945
- # @!method self.variants
946
- # @return [Array(Float, String)]
947
- end
948
701
  end
949
702
 
950
703
  # The total amount of the invoice including tax (invoice_total = subtotal +
@@ -972,9 +725,9 @@ module EInvoiceAPI
972
725
  nil?: true
973
726
 
974
727
  # @!attribute amount
975
- # The invoice line net amount (BT-131), exclusive of VAT, inclusive of line level
976
- # allowances and charges. Calculated as: ((unit_price / price_base_quantity) \*
977
- # quantity) - allowances + charges. Must be rounded to maximum 2 decimals
728
+ # The total amount of the line item, exclusive of VAT, after subtracting line
729
+ # level allowances and adding line level charges. Must be rounded to maximum 2
730
+ # decimals
978
731
  #
979
732
  # @return [Float, String, nil]
980
733
  optional :amount, union: -> { EInvoiceAPI::DocumentCreate::Item::Amount }, nil?: true
@@ -998,15 +751,6 @@ module EInvoiceAPI
998
751
  # @return [String, nil]
999
752
  optional :description, String, nil?: true
1000
753
 
1001
- # @!attribute price_base_quantity
1002
- # The item price base quantity (BT-149). The number of item units to which the
1003
- # price applies. Defaults to 1. Must be rounded to maximum 4 decimals
1004
- #
1005
- # @return [Float, String, nil]
1006
- optional :price_base_quantity,
1007
- union: -> { EInvoiceAPI::DocumentCreate::Item::PriceBaseQuantity },
1008
- nil?: true
1009
-
1010
754
  # @!attribute product_code
1011
755
  # The product code of the line item.
1012
756
  #
@@ -1029,8 +773,8 @@ module EInvoiceAPI
1029
773
  # @!attribute tax_rate
1030
774
  # The VAT rate of the line item expressed as percentage with 2 decimals
1031
775
  #
1032
- # @return [Float, String, nil]
1033
- optional :tax_rate, union: -> { EInvoiceAPI::DocumentCreate::Item::TaxRate }, nil?: true
776
+ # @return [String, nil]
777
+ optional :tax_rate, String, nil?: true
1034
778
 
1035
779
  # @!attribute unit
1036
780
  # Unit of Measure Codes from UNECERec20 used in Peppol BIS Billing 3.0.
@@ -1039,19 +783,18 @@ module EInvoiceAPI
1039
783
  optional :unit, enum: -> { EInvoiceAPI::UnitOfMeasureCode }, nil?: true
1040
784
 
1041
785
  # @!attribute unit_price
1042
- # The item net price (BT-146). The price of an item, exclusive of VAT, after
1043
- # subtracting item price discount. Must be rounded to maximum 4 decimals
786
+ # The unit price of the line item. Must be rounded to maximum 2 decimals
1044
787
  #
1045
788
  # @return [Float, String, nil]
1046
789
  optional :unit_price, union: -> { EInvoiceAPI::DocumentCreate::Item::UnitPrice }, nil?: true
1047
790
 
1048
- # @!method initialize(allowances: nil, amount: nil, charges: nil, date: nil, description: nil, price_base_quantity: nil, product_code: nil, quantity: nil, tax: nil, tax_rate: nil, unit: nil, unit_price: nil)
791
+ # @!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)
1049
792
  # Some parameter documentations has been truncated, see
1050
793
  # {EInvoiceAPI::Models::DocumentCreate::Item} for more details.
1051
794
  #
1052
795
  # @param allowances [Array<EInvoiceAPI::Models::DocumentCreate::Item::Allowance>, nil] The allowances of the line item.
1053
796
  #
1054
- # @param amount [Float, String, nil] The invoice line net amount (BT-131), exclusive of VAT, inclusive of line level
797
+ # @param amount [Float, String, nil] The total amount of the line item, exclusive of VAT, after subtracting line leve
1055
798
  #
1056
799
  # @param charges [Array<EInvoiceAPI::Models::DocumentCreate::Item::Charge>, nil] The charges of the line item.
1057
800
  #
@@ -1059,19 +802,17 @@ module EInvoiceAPI
1059
802
  #
1060
803
  # @param description [String, nil] The description of the line item.
1061
804
  #
1062
- # @param price_base_quantity [Float, String, nil] The item price base quantity (BT-149). The number of item units to which the pri
1063
- #
1064
805
  # @param product_code [String, nil] The product code of the line item.
1065
806
  #
1066
807
  # @param quantity [Float, String, nil] The quantity of items (goods or services) that is the subject of the line item.
1067
808
  #
1068
809
  # @param tax [Float, String, nil] The total VAT amount for the line item. Must be rounded to maximum 2 decimals
1069
810
  #
1070
- # @param tax_rate [Float, String, nil] The VAT rate of the line item expressed as percentage with 2 decimals
811
+ # @param tax_rate [String, nil] The VAT rate of the line item expressed as percentage with 2 decimals
1071
812
  #
1072
813
  # @param unit [Symbol, EInvoiceAPI::Models::UnitOfMeasureCode, nil] Unit of Measure Codes from UNECERec20 used in Peppol BIS Billing 3.0.
1073
814
  #
1074
- # @param unit_price [Float, String, nil] The item net price (BT-146). The price of an item, exclusive of VAT, after subtr
815
+ # @param unit_price [Float, String, nil] The unit price of the line item. Must be rounded to maximum 2 decimals
1075
816
 
1076
817
  class Allowance < EInvoiceAPI::Internal::Type::BaseModel
1077
818
  # @!attribute amount
@@ -1093,8 +834,7 @@ module EInvoiceAPI
1093
834
 
1094
835
  # @!attribute multiplier_factor
1095
836
  # The percentage that may be used, in conjunction with the allowance base amount,
1096
- # to calculate the allowance amount. To state 20%, use value 20. Must be rounded
1097
- # to maximum 2 decimals
837
+ # to calculate the allowance amount. To state 20%, use value 20
1098
838
  #
1099
839
  # @return [Float, String, nil]
1100
840
  optional :multiplier_factor,
@@ -1108,27 +848,24 @@ module EInvoiceAPI
1108
848
  optional :reason, String, nil?: true
1109
849
 
1110
850
  # @!attribute reason_code
1111
- # Allowance reason codes for invoice discounts and charges
851
+ # The code for the allowance reason
1112
852
  #
1113
- # @return [Symbol, EInvoiceAPI::Models::DocumentCreate::Item::Allowance::ReasonCode, nil]
1114
- optional :reason_code,
1115
- enum: -> {
1116
- EInvoiceAPI::DocumentCreate::Item::Allowance::ReasonCode
1117
- },
1118
- nil?: true
853
+ # @return [String, nil]
854
+ optional :reason_code, String, nil?: true
1119
855
 
1120
856
  # @!attribute tax_code
1121
- # The VAT category code that applies to the allowance
857
+ # Duty or tax or fee category codes (Subset of UNCL5305)
858
+ #
859
+ # Agency: UN/CEFACT Version: D.16B Subset: OpenPEPPOL
1122
860
  #
1123
861
  # @return [Symbol, EInvoiceAPI::Models::DocumentCreate::Item::Allowance::TaxCode, nil]
1124
- optional :tax_code, enum: -> { EInvoiceAPI::DocumentCreate::Item::Allowance::TaxCode }
862
+ optional :tax_code, enum: -> { EInvoiceAPI::DocumentCreate::Item::Allowance::TaxCode }, nil?: true
1125
863
 
1126
864
  # @!attribute tax_rate
1127
- # The VAT rate, represented as percentage that applies to the allowance. Must be
1128
- # rounded to maximum 2 decimals
865
+ # The VAT rate, represented as percentage that applies to the allowance
1129
866
  #
1130
- # @return [Float, String, nil]
1131
- optional :tax_rate, union: -> { EInvoiceAPI::DocumentCreate::Item::Allowance::TaxRate }, nil?: true
867
+ # @return [String, nil]
868
+ optional :tax_rate, String, nil?: true
1132
869
 
1133
870
  # @!method initialize(amount: nil, base_amount: nil, multiplier_factor: nil, reason: nil, reason_code: nil, tax_code: nil, tax_rate: nil)
1134
871
  # Some parameter documentations has been truncated, see
@@ -1144,11 +881,11 @@ module EInvoiceAPI
1144
881
  #
1145
882
  # @param reason [String, nil] The reason for the allowance
1146
883
  #
1147
- # @param reason_code [Symbol, EInvoiceAPI::Models::DocumentCreate::Item::Allowance::ReasonCode, nil] Allowance reason codes for invoice discounts and charges
884
+ # @param reason_code [String, nil] The code for the allowance reason
1148
885
  #
1149
- # @param tax_code [Symbol, EInvoiceAPI::Models::DocumentCreate::Item::Allowance::TaxCode] The VAT category code that applies to the allowance
886
+ # @param tax_code [Symbol, EInvoiceAPI::Models::DocumentCreate::Item::Allowance::TaxCode, nil] Duty or tax or fee category codes (Subset of UNCL5305)
1150
887
  #
1151
- # @param tax_rate [Float, String, nil] The VAT rate, represented as percentage that applies to the allowance. Must be r
888
+ # @param tax_rate [String, nil] The VAT rate, represented as percentage that applies to the allowance
1152
889
 
1153
890
  # The allowance amount, without VAT. Must be rounded to maximum 2 decimals
1154
891
  #
@@ -1180,8 +917,7 @@ module EInvoiceAPI
1180
917
  end
1181
918
 
1182
919
  # The percentage that may be used, in conjunction with the allowance base amount,
1183
- # to calculate the allowance amount. To state 20%, use value 20. Must be rounded
1184
- # to maximum 2 decimals
920
+ # to calculate the allowance amount. To state 20%, use value 20
1185
921
  #
1186
922
  # @see EInvoiceAPI::Models::DocumentCreate::Item::Allowance#multiplier_factor
1187
923
  module MultiplierFactor
@@ -1195,37 +931,9 @@ module EInvoiceAPI
1195
931
  # @return [Array(Float, String)]
1196
932
  end
1197
933
 
1198
- # Allowance reason codes for invoice discounts and charges
934
+ # Duty or tax or fee category codes (Subset of UNCL5305)
1199
935
  #
1200
- # @see EInvoiceAPI::Models::DocumentCreate::Item::Allowance#reason_code
1201
- module ReasonCode
1202
- extend EInvoiceAPI::Internal::Type::Enum
1203
-
1204
- REASON_CODE_41 = :"41"
1205
- REASON_CODE_42 = :"42"
1206
- REASON_CODE_60 = :"60"
1207
- REASON_CODE_62 = :"62"
1208
- REASON_CODE_63 = :"63"
1209
- REASON_CODE_64 = :"64"
1210
- REASON_CODE_65 = :"65"
1211
- REASON_CODE_66 = :"66"
1212
- REASON_CODE_67 = :"67"
1213
- REASON_CODE_68 = :"68"
1214
- REASON_CODE_70 = :"70"
1215
- REASON_CODE_71 = :"71"
1216
- REASON_CODE_88 = :"88"
1217
- REASON_CODE_95 = :"95"
1218
- REASON_CODE_100 = :"100"
1219
- REASON_CODE_102 = :"102"
1220
- REASON_CODE_103 = :"103"
1221
- REASON_CODE_104 = :"104"
1222
- REASON_CODE_105 = :"105"
1223
-
1224
- # @!method self.values
1225
- # @return [Array<Symbol>]
1226
- end
1227
-
1228
- # The VAT category code that applies to the allowance
936
+ # Agency: UN/CEFACT Version: D.16B Subset: OpenPEPPOL
1229
937
  #
1230
938
  # @see EInvoiceAPI::Models::DocumentCreate::Item::Allowance#tax_code
1231
939
  module TaxCode
@@ -1245,26 +953,11 @@ module EInvoiceAPI
1245
953
  # @!method self.values
1246
954
  # @return [Array<Symbol>]
1247
955
  end
1248
-
1249
- # The VAT rate, represented as percentage that applies to the allowance. Must be
1250
- # rounded to maximum 2 decimals
1251
- #
1252
- # @see EInvoiceAPI::Models::DocumentCreate::Item::Allowance#tax_rate
1253
- module TaxRate
1254
- extend EInvoiceAPI::Internal::Type::Union
1255
-
1256
- variant Float
1257
-
1258
- variant String
1259
-
1260
- # @!method self.variants
1261
- # @return [Array(Float, String)]
1262
- end
1263
956
  end
1264
957
 
1265
- # The invoice line net amount (BT-131), exclusive of VAT, inclusive of line level
1266
- # allowances and charges. Calculated as: ((unit_price / price_base_quantity) \*
1267
- # quantity) - allowances + charges. Must be rounded to maximum 2 decimals
958
+ # The total amount of the line item, exclusive of VAT, after subtracting line
959
+ # level allowances and adding line level charges. Must be rounded to maximum 2
960
+ # decimals
1268
961
  #
1269
962
  # @see EInvoiceAPI::Models::DocumentCreate::Item#amount
1270
963
  module Amount
@@ -1312,14 +1005,10 @@ module EInvoiceAPI
1312
1005
  optional :reason, String, nil?: true
1313
1006
 
1314
1007
  # @!attribute reason_code
1315
- # Charge reason codes for invoice charges and fees
1008
+ # The code for the charge reason
1316
1009
  #
1317
- # @return [Symbol, EInvoiceAPI::Models::DocumentCreate::Item::Charge::ReasonCode, nil]
1318
- optional :reason_code,
1319
- enum: -> {
1320
- EInvoiceAPI::DocumentCreate::Item::Charge::ReasonCode
1321
- },
1322
- nil?: true
1010
+ # @return [String, nil]
1011
+ optional :reason_code, String, nil?: true
1323
1012
 
1324
1013
  # @!attribute tax_code
1325
1014
  # Duty or tax or fee category codes (Subset of UNCL5305)
@@ -1332,8 +1021,8 @@ module EInvoiceAPI
1332
1021
  # @!attribute tax_rate
1333
1022
  # The VAT rate, represented as percentage that applies to the charge
1334
1023
  #
1335
- # @return [Float, String, nil]
1336
- optional :tax_rate, union: -> { EInvoiceAPI::DocumentCreate::Item::Charge::TaxRate }, nil?: true
1024
+ # @return [String, nil]
1025
+ optional :tax_rate, String, nil?: true
1337
1026
 
1338
1027
  # @!method initialize(amount: nil, base_amount: nil, multiplier_factor: nil, reason: nil, reason_code: nil, tax_code: nil, tax_rate: nil)
1339
1028
  # Some parameter documentations has been truncated, see
@@ -1349,11 +1038,11 @@ module EInvoiceAPI
1349
1038
  #
1350
1039
  # @param reason [String, nil] The reason for the charge
1351
1040
  #
1352
- # @param reason_code [Symbol, EInvoiceAPI::Models::DocumentCreate::Item::Charge::ReasonCode, nil] Charge reason codes for invoice charges and fees
1041
+ # @param reason_code [String, nil] The code for the charge reason
1353
1042
  #
1354
1043
  # @param tax_code [Symbol, EInvoiceAPI::Models::DocumentCreate::Item::Charge::TaxCode, nil] Duty or tax or fee category codes (Subset of UNCL5305)
1355
1044
  #
1356
- # @param tax_rate [Float, String, nil] The VAT rate, represented as percentage that applies to the charge
1045
+ # @param tax_rate [String, nil] The VAT rate, represented as percentage that applies to the charge
1357
1046
 
1358
1047
  # The charge amount, without VAT. Must be rounded to maximum 2 decimals
1359
1048
  #
@@ -1399,195 +1088,6 @@ module EInvoiceAPI
1399
1088
  # @return [Array(Float, String)]
1400
1089
  end
1401
1090
 
1402
- # Charge reason codes for invoice charges and fees
1403
- #
1404
- # @see EInvoiceAPI::Models::DocumentCreate::Item::Charge#reason_code
1405
- module ReasonCode
1406
- extend EInvoiceAPI::Internal::Type::Enum
1407
-
1408
- AA = :AA
1409
- AAA = :AAA
1410
- AAC = :AAC
1411
- AAD = :AAD
1412
- AAE = :AAE
1413
- AAF = :AAF
1414
- AAH = :AAH
1415
- AAI = :AAI
1416
- AAS = :AAS
1417
- AAT = :AAT
1418
- AAV = :AAV
1419
- AAY = :AAY
1420
- AAZ = :AAZ
1421
- ABA = :ABA
1422
- ABB = :ABB
1423
- ABC = :ABC
1424
- ABD = :ABD
1425
- ABF = :ABF
1426
- ABK = :ABK
1427
- ABL = :ABL
1428
- ABN = :ABN
1429
- ABR = :ABR
1430
- ABS = :ABS
1431
- ABT = :ABT
1432
- ABU = :ABU
1433
- ACF = :ACF
1434
- ACG = :ACG
1435
- ACH = :ACH
1436
- ACI = :ACI
1437
- ACJ = :ACJ
1438
- ACK = :ACK
1439
- ACL = :ACL
1440
- ACM = :ACM
1441
- ACS = :ACS
1442
- ADC = :ADC
1443
- ADE = :ADE
1444
- ADJ = :ADJ
1445
- ADK = :ADK
1446
- ADL = :ADL
1447
- ADM = :ADM
1448
- ADN = :ADN
1449
- ADO = :ADO
1450
- ADP = :ADP
1451
- ADQ = :ADQ
1452
- ADR = :ADR
1453
- ADT = :ADT
1454
- ADW = :ADW
1455
- ADY = :ADY
1456
- ADZ = :ADZ
1457
- AEA = :AEA
1458
- AEB = :AEB
1459
- AEC = :AEC
1460
- AED = :AED
1461
- AEF = :AEF
1462
- AEH = :AEH
1463
- AEI = :AEI
1464
- AEJ = :AEJ
1465
- AEK = :AEK
1466
- AEL = :AEL
1467
- AEM = :AEM
1468
- AEN = :AEN
1469
- AEO = :AEO
1470
- AEP = :AEP
1471
- AES = :AES
1472
- AET = :AET
1473
- AEU = :AEU
1474
- AEV = :AEV
1475
- AEW = :AEW
1476
- AEX = :AEX
1477
- AEY = :AEY
1478
- AEZ = :AEZ
1479
- AJ = :AJ
1480
- AU = :AU
1481
- CA = :CA
1482
- CAB = :CAB
1483
- CAD = :CAD
1484
- CAE = :CAE
1485
- CAF = :CAF
1486
- CAI = :CAI
1487
- CAJ = :CAJ
1488
- CAK = :CAK
1489
- CAL = :CAL
1490
- CAM = :CAM
1491
- CAN = :CAN
1492
- CAO = :CAO
1493
- CAP = :CAP
1494
- CAQ = :CAQ
1495
- CAR = :CAR
1496
- CAS = :CAS
1497
- CAT = :CAT
1498
- CAU = :CAU
1499
- CAV = :CAV
1500
- CAW = :CAW
1501
- CAX = :CAX
1502
- CAY = :CAY
1503
- CAZ = :CAZ
1504
- CD = :CD
1505
- CG = :CG
1506
- CS = :CS
1507
- CT = :CT
1508
- DAB = :DAB
1509
- DAC = :DAC
1510
- DAD = :DAD
1511
- DAF = :DAF
1512
- DAG = :DAG
1513
- DAH = :DAH
1514
- DAI = :DAI
1515
- DAJ = :DAJ
1516
- DAK = :DAK
1517
- DAL = :DAL
1518
- DAM = :DAM
1519
- DAN = :DAN
1520
- DAO = :DAO
1521
- DAP = :DAP
1522
- DAQ = :DAQ
1523
- DL = :DL
1524
- EG = :EG
1525
- EP = :EP
1526
- ER = :ER
1527
- FAA = :FAA
1528
- FAB = :FAB
1529
- FAC = :FAC
1530
- FC = :FC
1531
- FH = :FH
1532
- FI = :FI
1533
- GAA = :GAA
1534
- HAA = :HAA
1535
- HD = :HD
1536
- HH = :HH
1537
- IAA = :IAA
1538
- IAB = :IAB
1539
- ID = :ID
1540
- IF = :IF
1541
- IR = :IR
1542
- IS = :IS
1543
- KO = :KO
1544
- L1 = :L1
1545
- LA = :LA
1546
- LAA = :LAA
1547
- LAB = :LAB
1548
- LF = :LF
1549
- MAE = :MAE
1550
- MI = :MI
1551
- ML = :ML
1552
- NAA = :NAA
1553
- OA = :OA
1554
- PA = :PA
1555
- PAA = :PAA
1556
- PC = :PC
1557
- PL = :PL
1558
- PRV = :PRV
1559
- RAB = :RAB
1560
- RAC = :RAC
1561
- RAD = :RAD
1562
- RAF = :RAF
1563
- RE = :RE
1564
- RF = :RF
1565
- RH = :RH
1566
- RV = :RV
1567
- SA = :SA
1568
- SAA = :SAA
1569
- SAD = :SAD
1570
- SAE = :SAE
1571
- SAI = :SAI
1572
- SG = :SG
1573
- SH = :SH
1574
- SM = :SM
1575
- SU = :SU
1576
- TAB = :TAB
1577
- TAC = :TAC
1578
- TT = :TT
1579
- TV = :TV
1580
- V1 = :V1
1581
- V2 = :V2
1582
- WH = :WH
1583
- XAA = :XAA
1584
- YY = :YY
1585
- ZZZ = :ZZZ
1586
-
1587
- # @!method self.values
1588
- # @return [Array<Symbol>]
1589
- end
1590
-
1591
1091
  # Duty or tax or fee category codes (Subset of UNCL5305)
1592
1092
  #
1593
1093
  # Agency: UN/CEFACT Version: D.16B Subset: OpenPEPPOL
@@ -1610,35 +1110,6 @@ module EInvoiceAPI
1610
1110
  # @!method self.values
1611
1111
  # @return [Array<Symbol>]
1612
1112
  end
1613
-
1614
- # The VAT rate, represented as percentage that applies to the charge
1615
- #
1616
- # @see EInvoiceAPI::Models::DocumentCreate::Item::Charge#tax_rate
1617
- module TaxRate
1618
- extend EInvoiceAPI::Internal::Type::Union
1619
-
1620
- variant Float
1621
-
1622
- variant String
1623
-
1624
- # @!method self.variants
1625
- # @return [Array(Float, String)]
1626
- end
1627
- end
1628
-
1629
- # The item price base quantity (BT-149). The number of item units to which the
1630
- # price applies. Defaults to 1. Must be rounded to maximum 4 decimals
1631
- #
1632
- # @see EInvoiceAPI::Models::DocumentCreate::Item#price_base_quantity
1633
- module PriceBaseQuantity
1634
- extend EInvoiceAPI::Internal::Type::Union
1635
-
1636
- variant Float
1637
-
1638
- variant String
1639
-
1640
- # @!method self.variants
1641
- # @return [Array(Float, String)]
1642
1113
  end
1643
1114
 
1644
1115
  # The quantity of items (goods or services) that is the subject of the line item.
@@ -1670,22 +1141,7 @@ module EInvoiceAPI
1670
1141
  # @return [Array(Float, String)]
1671
1142
  end
1672
1143
 
1673
- # The VAT rate of the line item expressed as percentage with 2 decimals
1674
- #
1675
- # @see EInvoiceAPI::Models::DocumentCreate::Item#tax_rate
1676
- module TaxRate
1677
- extend EInvoiceAPI::Internal::Type::Union
1678
-
1679
- variant Float
1680
-
1681
- variant String
1682
-
1683
- # @!method self.variants
1684
- # @return [Array(Float, String)]
1685
- end
1686
-
1687
- # The item net price (BT-146). The price of an item, exclusive of VAT, after
1688
- # subtracting item price discount. Must be rounded to maximum 4 decimals
1144
+ # The unit price of the line item. Must be rounded to maximum 2 decimals
1689
1145
  #
1690
1146
  # @see EInvoiceAPI::Models::DocumentCreate::Item#unit_price
1691
1147
  module UnitPrice