metronome-sdk 2.0.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (102) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +36 -0
  3. data/README.md +1 -1
  4. data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +30 -24
  5. data/lib/metronome_sdk/models/contract.rb +1 -0
  6. data/lib/metronome_sdk/models/contract_v2.rb +40 -21
  7. data/lib/metronome_sdk/models/hierarchy_configuration.rb +45 -21
  8. data/lib/metronome_sdk/models/subscription.rb +10 -0
  9. data/lib/metronome_sdk/models/v1/contract_create_params.rb +77 -27
  10. data/lib/metronome_sdk/models/v1/contract_list_balances_params.rb +9 -1
  11. data/lib/metronome_sdk/models/v1/customer_create_params.rb +11 -1
  12. data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +14 -10
  13. data/lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb +1 -0
  14. data/lib/metronome_sdk/models/v1/customer_set_billing_configurations_params.rb +1 -0
  15. data/lib/metronome_sdk/models/v1/customers/billing_config_create_params.rb +6 -1
  16. data/lib/metronome_sdk/models/v1/customers/billing_config_delete_params.rb +1 -0
  17. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rb +1 -0
  18. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +6 -1
  19. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +1 -1
  20. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +1 -0
  21. data/lib/metronome_sdk/models/v1/customers/invoice.rb +126 -4
  22. data/lib/metronome_sdk/models/v1/payment.rb +7 -1
  23. data/lib/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rb +65 -0
  24. data/lib/metronome_sdk/models/v1/setting_upsert_avalara_credentials_response.rb +12 -0
  25. data/lib/metronome_sdk/models/v1/settings/billing_provider_create_params.rb +73 -0
  26. data/lib/metronome_sdk/models/v1/settings/billing_provider_create_response.rb +31 -0
  27. data/lib/metronome_sdk/models/v1/settings/billing_provider_list_params.rb +26 -0
  28. data/lib/metronome_sdk/models/v1/settings/billing_provider_list_response.rb +105 -0
  29. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +33 -6
  30. data/lib/metronome_sdk/resources/v1/contracts.rb +4 -2
  31. data/lib/metronome_sdk/resources/v1/credit_grants.rb +10 -5
  32. data/lib/metronome_sdk/resources/v1/customers/billing_config.rb +7 -4
  33. data/lib/metronome_sdk/resources/v1/customers/commits.rb +2 -1
  34. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +2 -1
  35. data/lib/metronome_sdk/resources/v1/customers/plans.rb +8 -4
  36. data/lib/metronome_sdk/resources/v1/customers.rb +7 -5
  37. data/lib/metronome_sdk/resources/v1/plans.rb +8 -4
  38. data/lib/metronome_sdk/resources/v1/settings/billing_providers.rb +75 -0
  39. data/lib/metronome_sdk/resources/v1/settings.rb +55 -0
  40. data/lib/metronome_sdk/resources/v1.rb +4 -0
  41. data/lib/metronome_sdk/version.rb +1 -1
  42. data/lib/metronome_sdk.rb +8 -0
  43. data/rbi/metronome_sdk/models/contract.rbi +5 -0
  44. data/rbi/metronome_sdk/models/contract_v2.rbi +59 -27
  45. data/rbi/metronome_sdk/models/hierarchy_configuration.rbi +63 -27
  46. data/rbi/metronome_sdk/models/subscription.rbi +15 -0
  47. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +96 -33
  48. data/rbi/metronome_sdk/models/v1/contract_list_balances_params.rbi +11 -0
  49. data/rbi/metronome_sdk/models/v1/customer_create_params.rbi +11 -0
  50. data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +18 -11
  51. data/rbi/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbi +5 -0
  52. data/rbi/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbi +5 -0
  53. data/rbi/metronome_sdk/models/v1/customers/billing_config_create_params.rbi +11 -0
  54. data/rbi/metronome_sdk/models/v1/customers/billing_config_delete_params.rbi +5 -0
  55. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rbi +5 -0
  56. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +6 -0
  57. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +2 -2
  58. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +5 -0
  59. data/rbi/metronome_sdk/models/v1/customers/invoice.rbi +236 -0
  60. data/rbi/metronome_sdk/models/v1/payment.rbi +11 -3
  61. data/rbi/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rbi +115 -0
  62. data/rbi/metronome_sdk/models/v1/setting_upsert_avalara_credentials_response.rbi +25 -0
  63. data/rbi/metronome_sdk/models/v1/settings/billing_provider_create_params.rbi +157 -0
  64. data/rbi/metronome_sdk/models/v1/settings/billing_provider_create_response.rbi +75 -0
  65. data/rbi/metronome_sdk/models/v1/settings/billing_provider_list_params.rbi +50 -0
  66. data/rbi/metronome_sdk/models/v1/settings/billing_provider_list_response.rbi +245 -0
  67. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +38 -6
  68. data/rbi/metronome_sdk/resources/v1/contracts.rbi +4 -1
  69. data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +10 -5
  70. data/rbi/metronome_sdk/resources/v1/customers/billing_config.rbi +8 -4
  71. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +3 -2
  72. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +2 -1
  73. data/rbi/metronome_sdk/resources/v1/customers/plans.rbi +8 -4
  74. data/rbi/metronome_sdk/resources/v1/customers.rbi +11 -8
  75. data/rbi/metronome_sdk/resources/v1/plans.rbi +8 -4
  76. data/rbi/metronome_sdk/resources/v1/settings/billing_providers.rbi +63 -0
  77. data/rbi/metronome_sdk/resources/v1/settings.rbi +47 -0
  78. data/rbi/metronome_sdk/resources/v1.rbi +3 -0
  79. data/sig/metronome_sdk/models/contract.rbs +2 -0
  80. data/sig/metronome_sdk/models/contract_v2.rbs +2 -0
  81. data/sig/metronome_sdk/models/v1/contract_list_balances_params.rbs +7 -0
  82. data/sig/metronome_sdk/models/v1/customer_create_params.rbs +2 -0
  83. data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbs +2 -0
  84. data/sig/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbs +2 -0
  85. data/sig/metronome_sdk/models/v1/customers/billing_config_create_params.rbs +2 -0
  86. data/sig/metronome_sdk/models/v1/customers/billing_config_delete_params.rbs +2 -0
  87. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rbs +2 -0
  88. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +2 -0
  89. data/sig/metronome_sdk/models/v1/customers/invoice.rbs +112 -0
  90. data/sig/metronome_sdk/models/v1/payment.rbs +10 -3
  91. data/sig/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rbs +54 -0
  92. data/sig/metronome_sdk/models/v1/setting_upsert_avalara_credentials_response.rbs +13 -0
  93. data/sig/metronome_sdk/models/v1/settings/billing_provider_create_params.rbs +64 -0
  94. data/sig/metronome_sdk/models/v1/settings/billing_provider_create_response.rbs +34 -0
  95. data/sig/metronome_sdk/models/v1/settings/billing_provider_list_params.rbs +28 -0
  96. data/sig/metronome_sdk/models/v1/settings/billing_provider_list_response.rbs +102 -0
  97. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +2 -0
  98. data/sig/metronome_sdk/resources/v1/contracts.rbs +1 -0
  99. data/sig/metronome_sdk/resources/v1/settings/billing_providers.rbs +23 -0
  100. data/sig/metronome_sdk/resources/v1/settings.rbs +19 -0
  101. data/sig/metronome_sdk/resources/v1.rbs +2 -0
  102. metadata +26 -2
@@ -13,6 +13,7 @@ module MetronomeSDK
13
13
  type: String,
14
14
  amendment_id: String,
15
15
  billable_status: top,
16
+ constituent_invoices: ::Array[MetronomeSDK::V1::Customers::Invoice::ConstituentInvoice],
16
17
  contract_custom_fields: ::Hash[Symbol, String],
17
18
  contract_id: String,
18
19
  correction_record: MetronomeSDK::V1::Customers::Invoice::CorrectionRecord,
@@ -25,6 +26,7 @@ module MetronomeSDK
25
26
  issued_at: Time,
26
27
  net_payment_terms_days: Float,
27
28
  netsuite_sales_order_id: String,
29
+ payer: MetronomeSDK::V1::Customers::Invoice::Payer,
28
30
  plan_custom_fields: ::Hash[Symbol, String],
29
31
  plan_id: String,
30
32
  plan_name: String,
@@ -57,6 +59,12 @@ module MetronomeSDK
57
59
 
58
60
  def billable_status=: (top) -> top
59
61
 
62
+ attr_reader constituent_invoices: ::Array[MetronomeSDK::V1::Customers::Invoice::ConstituentInvoice]?
63
+
64
+ def constituent_invoices=: (
65
+ ::Array[MetronomeSDK::V1::Customers::Invoice::ConstituentInvoice]
66
+ ) -> ::Array[MetronomeSDK::V1::Customers::Invoice::ConstituentInvoice]
67
+
60
68
  attr_reader contract_custom_fields: ::Hash[Symbol, String]?
61
69
 
62
70
  def contract_custom_fields=: (
@@ -111,6 +119,12 @@ module MetronomeSDK
111
119
 
112
120
  def netsuite_sales_order_id=: (String) -> String
113
121
 
122
+ attr_reader payer: MetronomeSDK::V1::Customers::Invoice::Payer?
123
+
124
+ def payer=: (
125
+ MetronomeSDK::V1::Customers::Invoice::Payer
126
+ ) -> MetronomeSDK::V1::Customers::Invoice::Payer
127
+
114
128
  attr_reader plan_custom_fields: ::Hash[Symbol, String]?
115
129
 
116
130
  def plan_custom_fields=: (
@@ -153,6 +167,7 @@ module MetronomeSDK
153
167
  type: String,
154
168
  ?amendment_id: String,
155
169
  ?billable_status: top,
170
+ ?constituent_invoices: ::Array[MetronomeSDK::V1::Customers::Invoice::ConstituentInvoice],
156
171
  ?contract_custom_fields: ::Hash[Symbol, String],
157
172
  ?contract_id: String,
158
173
  ?correction_record: MetronomeSDK::V1::Customers::Invoice::CorrectionRecord,
@@ -165,6 +180,7 @@ module MetronomeSDK
165
180
  ?issued_at: Time,
166
181
  ?net_payment_terms_days: Float,
167
182
  ?netsuite_sales_order_id: String,
183
+ ?payer: MetronomeSDK::V1::Customers::Invoice::Payer,
168
184
  ?plan_custom_fields: ::Hash[Symbol, String],
169
185
  ?plan_id: String,
170
186
  ?plan_name: String,
@@ -184,6 +200,7 @@ module MetronomeSDK
184
200
  type: String,
185
201
  amendment_id: String,
186
202
  billable_status: top,
203
+ constituent_invoices: ::Array[MetronomeSDK::V1::Customers::Invoice::ConstituentInvoice],
187
204
  contract_custom_fields: ::Hash[Symbol, String],
188
205
  contract_id: String,
189
206
  correction_record: MetronomeSDK::V1::Customers::Invoice::CorrectionRecord,
@@ -196,6 +213,7 @@ module MetronomeSDK
196
213
  issued_at: Time,
197
214
  net_payment_terms_days: Float,
198
215
  netsuite_sales_order_id: String,
216
+ payer: MetronomeSDK::V1::Customers::Invoice::Payer,
199
217
  plan_custom_fields: ::Hash[Symbol, String],
200
218
  plan_id: String,
201
219
  plan_name: String,
@@ -230,6 +248,7 @@ module MetronomeSDK
230
248
  netsuite_invoice_billing_end: Time,
231
249
  netsuite_invoice_billing_start: Time,
232
250
  netsuite_item_id: String,
251
+ origin: MetronomeSDK::V1::Customers::Invoice::LineItem::Origin,
233
252
  postpaid_commit: MetronomeSDK::V1::Customers::Invoice::LineItem::PostpaidCommit,
234
253
  presentation_group_values: ::Hash[Symbol, String?],
235
254
  pricing_group_values: ::Hash[Symbol, String],
@@ -341,6 +360,12 @@ module MetronomeSDK
341
360
 
342
361
  def netsuite_item_id=: (String) -> String
343
362
 
363
+ attr_reader origin: MetronomeSDK::V1::Customers::Invoice::LineItem::Origin?
364
+
365
+ def origin=: (
366
+ MetronomeSDK::V1::Customers::Invoice::LineItem::Origin
367
+ ) -> MetronomeSDK::V1::Customers::Invoice::LineItem::Origin
368
+
344
369
  attr_reader postpaid_commit: MetronomeSDK::V1::Customers::Invoice::LineItem::PostpaidCommit?
345
370
 
346
371
  def postpaid_commit=: (
@@ -457,6 +482,7 @@ module MetronomeSDK
457
482
  ?netsuite_invoice_billing_end: Time,
458
483
  ?netsuite_invoice_billing_start: Time,
459
484
  ?netsuite_item_id: String,
485
+ ?origin: MetronomeSDK::V1::Customers::Invoice::LineItem::Origin,
460
486
  ?postpaid_commit: MetronomeSDK::V1::Customers::Invoice::LineItem::PostpaidCommit,
461
487
  ?presentation_group_values: ::Hash[Symbol, String?],
462
488
  ?pricing_group_values: ::Hash[Symbol, String],
@@ -501,6 +527,7 @@ module MetronomeSDK
501
527
  netsuite_invoice_billing_end: Time,
502
528
  netsuite_invoice_billing_start: Time,
503
529
  netsuite_item_id: String,
530
+ origin: MetronomeSDK::V1::Customers::Invoice::LineItem::Origin,
504
531
  postpaid_commit: MetronomeSDK::V1::Customers::Invoice::LineItem::PostpaidCommit,
505
532
  presentation_group_values: ::Hash[Symbol, String?],
506
533
  pricing_group_values: ::Hash[Symbol, String],
@@ -555,6 +582,38 @@ module MetronomeSDK
555
582
  end
556
583
  end
557
584
 
585
+ type origin =
586
+ {
587
+ contract_id: String,
588
+ customer_id: String,
589
+ invoice_id: String,
590
+ line_item_id: String
591
+ }
592
+
593
+ class Origin < MetronomeSDK::Internal::Type::BaseModel
594
+ attr_accessor contract_id: String
595
+
596
+ attr_accessor customer_id: String
597
+
598
+ attr_accessor invoice_id: String
599
+
600
+ attr_accessor line_item_id: String
601
+
602
+ def initialize: (
603
+ contract_id: String,
604
+ customer_id: String,
605
+ invoice_id: String,
606
+ line_item_id: String
607
+ ) -> void
608
+
609
+ def to_hash: -> {
610
+ contract_id: String,
611
+ customer_id: String,
612
+ invoice_id: String,
613
+ line_item_id: String
614
+ }
615
+ end
616
+
558
617
  type postpaid_commit = { id: String }
559
618
 
560
619
  class PostpaidCommit < MetronomeSDK::Internal::Type::BaseModel
@@ -736,6 +795,29 @@ module MetronomeSDK
736
795
  end
737
796
  end
738
797
 
798
+ type constituent_invoice =
799
+ { contract_id: String, customer_id: String, invoice_id: String }
800
+
801
+ class ConstituentInvoice < MetronomeSDK::Internal::Type::BaseModel
802
+ attr_accessor contract_id: String
803
+
804
+ attr_accessor customer_id: String
805
+
806
+ attr_accessor invoice_id: String
807
+
808
+ def initialize: (
809
+ contract_id: String,
810
+ customer_id: String,
811
+ invoice_id: String
812
+ ) -> void
813
+
814
+ def to_hash: -> {
815
+ contract_id: String,
816
+ customer_id: String,
817
+ invoice_id: String
818
+ }
819
+ end
820
+
739
821
  type correction_record =
740
822
  {
741
823
  corrected_invoice_id: String,
@@ -774,6 +856,7 @@ module MetronomeSDK
774
856
  type corrected_external_invoice =
775
857
  {
776
858
  billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::billing_provider_type,
859
+ billing_provider_error: String,
777
860
  external_status: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::external_status,
778
861
  invoice_id: String,
779
862
  invoiced_sub_total: Float,
@@ -786,6 +869,10 @@ module MetronomeSDK
786
869
  class CorrectedExternalInvoice < MetronomeSDK::Internal::Type::BaseModel
787
870
  attr_accessor billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::billing_provider_type
788
871
 
872
+ attr_reader billing_provider_error: String?
873
+
874
+ def billing_provider_error=: (String) -> String
875
+
789
876
  attr_reader external_status: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::external_status?
790
877
 
791
878
  def external_status=: (
@@ -820,6 +907,7 @@ module MetronomeSDK
820
907
 
821
908
  def initialize: (
822
909
  billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::billing_provider_type,
910
+ ?billing_provider_error: String,
823
911
  ?external_status: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::external_status,
824
912
  ?invoice_id: String,
825
913
  ?invoiced_sub_total: Float,
@@ -831,6 +919,7 @@ module MetronomeSDK
831
919
 
832
920
  def to_hash: -> {
833
921
  billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::billing_provider_type,
922
+ billing_provider_error: String,
834
923
  external_status: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::external_status,
835
924
  invoice_id: String,
836
925
  invoiced_sub_total: Float,
@@ -849,6 +938,7 @@ module MetronomeSDK
849
938
  | :quickbooks_online
850
939
  | :workday
851
940
  | :gcp_marketplace
941
+ | :metronome
852
942
 
853
943
  module BillingProviderType
854
944
  extend MetronomeSDK::Internal::Type::Enum
@@ -861,6 +951,7 @@ module MetronomeSDK
861
951
  QUICKBOOKS_ONLINE: :quickbooks_online
862
952
  WORKDAY: :workday
863
953
  GCP_MARKETPLACE: :gcp_marketplace
954
+ METRONOME: :metronome
864
955
 
865
956
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::billing_provider_type]
866
957
  end
@@ -934,6 +1025,7 @@ module MetronomeSDK
934
1025
  type external_invoice =
935
1026
  {
936
1027
  billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::billing_provider_type,
1028
+ billing_provider_error: String,
937
1029
  external_status: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::external_status,
938
1030
  invoice_id: String,
939
1031
  invoiced_sub_total: Float,
@@ -946,6 +1038,10 @@ module MetronomeSDK
946
1038
  class ExternalInvoice < MetronomeSDK::Internal::Type::BaseModel
947
1039
  attr_accessor billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::billing_provider_type
948
1040
 
1041
+ attr_reader billing_provider_error: String?
1042
+
1043
+ def billing_provider_error=: (String) -> String
1044
+
949
1045
  attr_reader external_status: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::external_status?
950
1046
 
951
1047
  def external_status=: (
@@ -980,6 +1076,7 @@ module MetronomeSDK
980
1076
 
981
1077
  def initialize: (
982
1078
  billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::billing_provider_type,
1079
+ ?billing_provider_error: String,
983
1080
  ?external_status: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::external_status,
984
1081
  ?invoice_id: String,
985
1082
  ?invoiced_sub_total: Float,
@@ -991,6 +1088,7 @@ module MetronomeSDK
991
1088
 
992
1089
  def to_hash: -> {
993
1090
  billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::billing_provider_type,
1091
+ billing_provider_error: String,
994
1092
  external_status: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::external_status,
995
1093
  invoice_id: String,
996
1094
  invoiced_sub_total: Float,
@@ -1009,6 +1107,7 @@ module MetronomeSDK
1009
1107
  | :quickbooks_online
1010
1108
  | :workday
1011
1109
  | :gcp_marketplace
1110
+ | :metronome
1012
1111
 
1013
1112
  module BillingProviderType
1014
1113
  extend MetronomeSDK::Internal::Type::Enum
@@ -1021,6 +1120,7 @@ module MetronomeSDK
1021
1120
  QUICKBOOKS_ONLINE: :quickbooks_online
1022
1121
  WORKDAY: :workday
1023
1122
  GCP_MARKETPLACE: :gcp_marketplace
1123
+ METRONOME: :metronome
1024
1124
 
1025
1125
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::billing_provider_type]
1026
1126
  end
@@ -1133,6 +1233,18 @@ module MetronomeSDK
1133
1233
  }
1134
1234
  end
1135
1235
 
1236
+ type payer = { contract_id: String, customer_id: String }
1237
+
1238
+ class Payer < MetronomeSDK::Internal::Type::BaseModel
1239
+ attr_accessor contract_id: String
1240
+
1241
+ attr_accessor customer_id: String
1242
+
1243
+ def initialize: (contract_id: String, customer_id: String) -> void
1244
+
1245
+ def to_hash: -> { contract_id: String, customer_id: String }
1246
+ end
1247
+
1136
1248
  type reseller_royalty =
1137
1249
  {
1138
1250
  fraction: String,
@@ -124,7 +124,8 @@ module MetronomeSDK
124
124
  type stripe =
125
125
  {
126
126
  payment_intent_id: String,
127
- error: MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error
127
+ error: MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error,
128
+ payment_method_id: String
128
129
  }
129
130
 
130
131
  class Stripe < MetronomeSDK::Internal::Type::BaseModel
@@ -136,14 +137,20 @@ module MetronomeSDK
136
137
  MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error
137
138
  ) -> MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error
138
139
 
140
+ attr_reader payment_method_id: String?
141
+
142
+ def payment_method_id=: (String) -> String
143
+
139
144
  def initialize: (
140
145
  payment_intent_id: String,
141
- ?error: MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error
146
+ ?error: MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error,
147
+ ?payment_method_id: String
142
148
  ) -> void
143
149
 
144
150
  def to_hash: -> {
145
151
  payment_intent_id: String,
146
- error: MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error
152
+ error: MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error,
153
+ payment_method_id: String
147
154
  }
148
155
 
149
156
  type error = { code: String, decline_code: String, type: String }
@@ -0,0 +1,54 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ module V1
4
+ type setting_upsert_avalara_credentials_params =
5
+ {
6
+ avalara_environment: MetronomeSDK::Models::V1::SettingUpsertAvalaraCredentialsParams::avalara_environment,
7
+ avalara_password: String,
8
+ avalara_username: String,
9
+ delivery_method_ids: ::Array[String]
10
+ }
11
+ & MetronomeSDK::Internal::Type::request_parameters
12
+
13
+ class SettingUpsertAvalaraCredentialsParams < MetronomeSDK::Internal::Type::BaseModel
14
+ extend MetronomeSDK::Internal::Type::RequestParameters::Converter
15
+ include MetronomeSDK::Internal::Type::RequestParameters
16
+
17
+ attr_accessor avalara_environment: MetronomeSDK::Models::V1::SettingUpsertAvalaraCredentialsParams::avalara_environment
18
+
19
+ attr_accessor avalara_password: String
20
+
21
+ attr_accessor avalara_username: String
22
+
23
+ attr_accessor delivery_method_ids: ::Array[String]
24
+
25
+ def initialize: (
26
+ avalara_environment: MetronomeSDK::Models::V1::SettingUpsertAvalaraCredentialsParams::avalara_environment,
27
+ avalara_password: String,
28
+ avalara_username: String,
29
+ delivery_method_ids: ::Array[String],
30
+ ?request_options: MetronomeSDK::request_opts
31
+ ) -> void
32
+
33
+ def to_hash: -> {
34
+ avalara_environment: MetronomeSDK::Models::V1::SettingUpsertAvalaraCredentialsParams::avalara_environment,
35
+ avalara_password: String,
36
+ avalara_username: String,
37
+ delivery_method_ids: ::Array[String],
38
+ request_options: MetronomeSDK::RequestOptions
39
+ }
40
+
41
+ type avalara_environment = :PRODUCTION | :SANDBOX
42
+
43
+ module AvalaraEnvironment
44
+ extend MetronomeSDK::Internal::Type::Enum
45
+
46
+ PRODUCTION: :PRODUCTION
47
+ SANDBOX: :SANDBOX
48
+
49
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::SettingUpsertAvalaraCredentialsParams::avalara_environment]
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,13 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ module V1
4
+ type setting_upsert_avalara_credentials_response = { }
5
+
6
+ class SettingUpsertAvalaraCredentialsResponse < MetronomeSDK::Internal::Type::BaseModel
7
+ def initialize: -> void
8
+
9
+ def to_hash: -> { }
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,64 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ module V1
4
+ module Settings
5
+ type billing_provider_create_params =
6
+ {
7
+ billing_provider: MetronomeSDK::Models::V1::Settings::BillingProviderCreateParams::billing_provider,
8
+ configuration: ::Hash[Symbol, top],
9
+ delivery_method: MetronomeSDK::Models::V1::Settings::BillingProviderCreateParams::delivery_method
10
+ }
11
+ & MetronomeSDK::Internal::Type::request_parameters
12
+
13
+ class BillingProviderCreateParams < MetronomeSDK::Internal::Type::BaseModel
14
+ extend MetronomeSDK::Internal::Type::RequestParameters::Converter
15
+ include MetronomeSDK::Internal::Type::RequestParameters
16
+
17
+ attr_accessor billing_provider: MetronomeSDK::Models::V1::Settings::BillingProviderCreateParams::billing_provider
18
+
19
+ attr_accessor configuration: ::Hash[Symbol, top]
20
+
21
+ attr_accessor delivery_method: MetronomeSDK::Models::V1::Settings::BillingProviderCreateParams::delivery_method
22
+
23
+ def initialize: (
24
+ billing_provider: MetronomeSDK::Models::V1::Settings::BillingProviderCreateParams::billing_provider,
25
+ configuration: ::Hash[Symbol, top],
26
+ delivery_method: MetronomeSDK::Models::V1::Settings::BillingProviderCreateParams::delivery_method,
27
+ ?request_options: MetronomeSDK::request_opts
28
+ ) -> void
29
+
30
+ def to_hash: -> {
31
+ billing_provider: MetronomeSDK::Models::V1::Settings::BillingProviderCreateParams::billing_provider,
32
+ configuration: ::Hash[Symbol, top],
33
+ delivery_method: MetronomeSDK::Models::V1::Settings::BillingProviderCreateParams::delivery_method,
34
+ request_options: MetronomeSDK::RequestOptions
35
+ }
36
+
37
+ type billing_provider = :aws_marketplace | :azure_marketplace
38
+
39
+ module BillingProvider
40
+ extend MetronomeSDK::Internal::Type::Enum
41
+
42
+ AWS_MARKETPLACE: :aws_marketplace
43
+ AZURE_MARKETPLACE: :azure_marketplace
44
+
45
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::Settings::BillingProviderCreateParams::billing_provider]
46
+ end
47
+
48
+ type delivery_method =
49
+ :direct_to_billing_provider | :aws_sqs | :aws_sns
50
+
51
+ module DeliveryMethod
52
+ extend MetronomeSDK::Internal::Type::Enum
53
+
54
+ DIRECT_TO_BILLING_PROVIDER: :direct_to_billing_provider
55
+ AWS_SQS: :aws_sqs
56
+ AWS_SNS: :aws_sns
57
+
58
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::Settings::BillingProviderCreateParams::delivery_method]
59
+ end
60
+ end
61
+ end
62
+ end
63
+ end
64
+ end
@@ -0,0 +1,34 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ module V1
4
+ module Settings
5
+ type billing_provider_create_response =
6
+ {
7
+ data: MetronomeSDK::Models::V1::Settings::BillingProviderCreateResponse::Data
8
+ }
9
+
10
+ class BillingProviderCreateResponse < MetronomeSDK::Internal::Type::BaseModel
11
+ attr_accessor data: MetronomeSDK::Models::V1::Settings::BillingProviderCreateResponse::Data
12
+
13
+ def initialize: (
14
+ data: MetronomeSDK::Models::V1::Settings::BillingProviderCreateResponse::Data
15
+ ) -> void
16
+
17
+ def to_hash: -> {
18
+ data: MetronomeSDK::Models::V1::Settings::BillingProviderCreateResponse::Data
19
+ }
20
+
21
+ type data = { delivery_method_id: String }
22
+
23
+ class Data < MetronomeSDK::Internal::Type::BaseModel
24
+ attr_accessor delivery_method_id: String
25
+
26
+ def initialize: (delivery_method_id: String) -> void
27
+
28
+ def to_hash: -> { delivery_method_id: String }
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,28 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ module V1
4
+ module Settings
5
+ type billing_provider_list_params =
6
+ { next_page: String? }
7
+ & MetronomeSDK::Internal::Type::request_parameters
8
+
9
+ class BillingProviderListParams < MetronomeSDK::Internal::Type::BaseModel
10
+ extend MetronomeSDK::Internal::Type::RequestParameters::Converter
11
+ include MetronomeSDK::Internal::Type::RequestParameters
12
+
13
+ attr_accessor next_page: String?
14
+
15
+ def initialize: (
16
+ ?next_page: String?,
17
+ ?request_options: MetronomeSDK::request_opts
18
+ ) -> void
19
+
20
+ def to_hash: -> {
21
+ next_page: String?,
22
+ request_options: MetronomeSDK::RequestOptions
23
+ }
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,102 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ module V1
4
+ module Settings
5
+ type billing_provider_list_response =
6
+ {
7
+ data: ::Array[MetronomeSDK::Models::V1::Settings::BillingProviderListResponse::Data],
8
+ next_page: String?
9
+ }
10
+
11
+ class BillingProviderListResponse < MetronomeSDK::Internal::Type::BaseModel
12
+ attr_accessor data: ::Array[MetronomeSDK::Models::V1::Settings::BillingProviderListResponse::Data]
13
+
14
+ attr_accessor next_page: String?
15
+
16
+ def initialize: (
17
+ data: ::Array[MetronomeSDK::Models::V1::Settings::BillingProviderListResponse::Data],
18
+ ?next_page: String?
19
+ ) -> void
20
+
21
+ def to_hash: -> {
22
+ data: ::Array[MetronomeSDK::Models::V1::Settings::BillingProviderListResponse::Data],
23
+ next_page: String?
24
+ }
25
+
26
+ type data =
27
+ {
28
+ billing_provider: MetronomeSDK::Models::V1::Settings::BillingProviderListResponse::Data::billing_provider,
29
+ delivery_method: MetronomeSDK::Models::V1::Settings::BillingProviderListResponse::Data::delivery_method,
30
+ delivery_method_configuration: ::Hash[Symbol, top],
31
+ delivery_method_id: String
32
+ }
33
+
34
+ class Data < MetronomeSDK::Internal::Type::BaseModel
35
+ attr_accessor billing_provider: MetronomeSDK::Models::V1::Settings::BillingProviderListResponse::Data::billing_provider
36
+
37
+ attr_accessor delivery_method: MetronomeSDK::Models::V1::Settings::BillingProviderListResponse::Data::delivery_method
38
+
39
+ attr_accessor delivery_method_configuration: ::Hash[Symbol, top]
40
+
41
+ attr_accessor delivery_method_id: String
42
+
43
+ def initialize: (
44
+ billing_provider: MetronomeSDK::Models::V1::Settings::BillingProviderListResponse::Data::billing_provider,
45
+ delivery_method: MetronomeSDK::Models::V1::Settings::BillingProviderListResponse::Data::delivery_method,
46
+ delivery_method_configuration: ::Hash[Symbol, top],
47
+ delivery_method_id: String
48
+ ) -> void
49
+
50
+ def to_hash: -> {
51
+ billing_provider: MetronomeSDK::Models::V1::Settings::BillingProviderListResponse::Data::billing_provider,
52
+ delivery_method: MetronomeSDK::Models::V1::Settings::BillingProviderListResponse::Data::delivery_method,
53
+ delivery_method_configuration: ::Hash[Symbol, top],
54
+ delivery_method_id: String
55
+ }
56
+
57
+ type billing_provider =
58
+ :aws_marketplace
59
+ | :stripe
60
+ | :netsuite
61
+ | :custom
62
+ | :azure_marketplace
63
+ | :quickbooks_online
64
+ | :workday
65
+ | :gcp_marketplace
66
+ | :metronome
67
+
68
+ module BillingProvider
69
+ extend MetronomeSDK::Internal::Type::Enum
70
+
71
+ AWS_MARKETPLACE: :aws_marketplace
72
+ STRIPE: :stripe
73
+ NETSUITE: :netsuite
74
+ CUSTOM: :custom
75
+ AZURE_MARKETPLACE: :azure_marketplace
76
+ QUICKBOOKS_ONLINE: :quickbooks_online
77
+ WORKDAY: :workday
78
+ GCP_MARKETPLACE: :gcp_marketplace
79
+ METRONOME: :metronome
80
+
81
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::Settings::BillingProviderListResponse::Data::billing_provider]
82
+ end
83
+
84
+ type delivery_method =
85
+ :direct_to_billing_provider | :aws_sqs | :tackle | :aws_sns
86
+
87
+ module DeliveryMethod
88
+ extend MetronomeSDK::Internal::Type::Enum
89
+
90
+ DIRECT_TO_BILLING_PROVIDER: :direct_to_billing_provider
91
+ AWS_SQS: :aws_sqs
92
+ TACKLE: :tackle
93
+ AWS_SNS: :aws_sns
94
+
95
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::Settings::BillingProviderListResponse::Data::delivery_method]
96
+ end
97
+ end
98
+ end
99
+ end
100
+ end
101
+ end
102
+ end
@@ -343,6 +343,7 @@ module MetronomeSDK
343
343
  | :quickbooks_online
344
344
  | :workday
345
345
  | :gcp_marketplace
346
+ | :metronome
346
347
 
347
348
  module BillingProvider
348
349
  extend MetronomeSDK::Internal::Type::Enum
@@ -355,6 +356,7 @@ module MetronomeSDK
355
356
  QUICKBOOKS_ONLINE: :quickbooks_online
356
357
  WORKDAY: :workday
357
358
  GCP_MARKETPLACE: :gcp_marketplace
359
+ METRONOME: :metronome
358
360
 
359
361
  def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration::billing_provider]
360
362
  end
@@ -109,6 +109,7 @@ module MetronomeSDK
109
109
  ?id: String,
110
110
  ?covering_date: Time,
111
111
  ?effective_before: Time,
112
+ ?exclude_zero_balances: bool,
112
113
  ?include_archived: bool,
113
114
  ?include_balance: bool,
114
115
  ?include_contract_balances: bool,
@@ -0,0 +1,23 @@
1
+ module MetronomeSDK
2
+ module Resources
3
+ class V1
4
+ class Settings
5
+ class BillingProviders
6
+ def create: (
7
+ billing_provider: MetronomeSDK::Models::V1::Settings::BillingProviderCreateParams::billing_provider,
8
+ configuration: ::Hash[Symbol, top],
9
+ delivery_method: MetronomeSDK::Models::V1::Settings::BillingProviderCreateParams::delivery_method,
10
+ ?request_options: MetronomeSDK::request_opts
11
+ ) -> MetronomeSDK::Models::V1::Settings::BillingProviderCreateResponse
12
+
13
+ def list: (
14
+ ?next_page: String?,
15
+ ?request_options: MetronomeSDK::request_opts
16
+ ) -> MetronomeSDK::Models::V1::Settings::BillingProviderListResponse
17
+
18
+ def initialize: (client: MetronomeSDK::Client) -> void
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end