dodopayments 1.56.3 → 1.60.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +21 -0
- data/README.md +1 -1
- data/lib/dodopayments/internal/transport/base_client.rb +7 -1
- data/lib/dodopayments/internal/transport/pooled_net_requester.rb +6 -2
- data/lib/dodopayments/models/checkout_session_request.rb +50 -1
- data/lib/dodopayments/models/customer.rb +14 -1
- data/lib/dodopayments/models/customer_create_params.rb +12 -1
- data/lib/dodopayments/models/customer_limited_details.rb +9 -1
- data/lib/dodopayments/models/customer_retrieve_payment_methods_params.rb +14 -0
- data/lib/dodopayments/models/customer_retrieve_payment_methods_response.rb +183 -0
- data/lib/dodopayments/models/customer_update_params.rb +11 -1
- data/lib/dodopayments/models/product_create_params.rb +9 -9
- data/lib/dodopayments/models/subscription.rb +9 -1
- data/lib/dodopayments/models/subscription_list_response.rb +9 -1
- data/lib/dodopayments/models/subscription_update_payment_method_params.rb +41 -0
- data/lib/dodopayments/models/subscription_update_payment_method_response.rb +34 -0
- data/lib/dodopayments/models.rb +4 -0
- data/lib/dodopayments/resources/customers.rb +27 -2
- data/lib/dodopayments/resources/products.rb +3 -3
- data/lib/dodopayments/resources/subscriptions.rb +26 -0
- data/lib/dodopayments/version.rb +1 -1
- data/lib/dodopayments.rb +5 -0
- data/manifest.yaml +1 -0
- data/rbi/dodopayments/internal/transport/base_client.rbi +5 -0
- data/rbi/dodopayments/internal/transport/pooled_net_requester.rbi +6 -2
- data/rbi/dodopayments/internal/type/base_model.rbi +8 -4
- data/rbi/dodopayments/models/checkout_session_request.rbi +63 -0
- data/rbi/dodopayments/models/customer.rbi +11 -0
- data/rbi/dodopayments/models/customer_create_params.rbi +17 -1
- data/rbi/dodopayments/models/customer_limited_details.rbi +11 -0
- data/rbi/dodopayments/models/customer_retrieve_payment_methods_params.rbi +32 -0
- data/rbi/dodopayments/models/customer_retrieve_payment_methods_response.rbi +392 -0
- data/rbi/dodopayments/models/customer_update_params.rbi +13 -1
- data/rbi/dodopayments/models/product_create_params.rbi +8 -8
- data/rbi/dodopayments/models/subscription.rbi +8 -0
- data/rbi/dodopayments/models/subscription_list_response.rbi +8 -0
- data/rbi/dodopayments/models/subscription_update_payment_method_params.rbi +91 -0
- data/rbi/dodopayments/models/subscription_update_payment_method_response.rbi +56 -0
- data/rbi/dodopayments/models.rbi +6 -0
- data/rbi/dodopayments/resources/customers.rbi +25 -1
- data/rbi/dodopayments/resources/products.rbi +3 -3
- data/rbi/dodopayments/resources/subscriptions.rbi +20 -0
- data/sig/dodopayments/internal/transport/base_client.rbs +2 -0
- data/sig/dodopayments/internal/transport/pooled_net_requester.rbs +4 -1
- data/sig/dodopayments/models/checkout_session_request.rbs +49 -0
- data/sig/dodopayments/models/customer.rbs +7 -0
- data/sig/dodopayments/models/customer_create_params.rbs +12 -1
- data/sig/dodopayments/models/customer_limited_details.rbs +7 -0
- data/sig/dodopayments/models/customer_retrieve_payment_methods_params.rbs +15 -0
- data/sig/dodopayments/models/customer_retrieve_payment_methods_response.rbs +180 -0
- data/sig/dodopayments/models/customer_update_params.rbs +9 -1
- data/sig/dodopayments/models/product_create_params.rbs +6 -6
- data/sig/dodopayments/models/subscription.rbs +5 -0
- data/sig/dodopayments/models/subscription_list_response.rbs +5 -0
- data/sig/dodopayments/models/subscription_update_payment_method_params.rbs +46 -0
- data/sig/dodopayments/models/subscription_update_payment_method_response.rbs +35 -0
- data/sig/dodopayments/models.rbs +4 -0
- data/sig/dodopayments/resources/customers.rbs +7 -0
- data/sig/dodopayments/resources/products.rbs +1 -1
- data/sig/dodopayments/resources/subscriptions.rbs +8 -0
- metadata +14 -2
|
@@ -0,0 +1,392 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Dodopayments
|
|
4
|
+
module Models
|
|
5
|
+
class CustomerRetrievePaymentMethodsResponse < Dodopayments::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(
|
|
9
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse,
|
|
10
|
+
Dodopayments::Internal::AnyHash
|
|
11
|
+
)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
sig do
|
|
15
|
+
returns(
|
|
16
|
+
T::Array[
|
|
17
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item
|
|
18
|
+
]
|
|
19
|
+
)
|
|
20
|
+
end
|
|
21
|
+
attr_accessor :items
|
|
22
|
+
|
|
23
|
+
sig do
|
|
24
|
+
params(
|
|
25
|
+
items:
|
|
26
|
+
T::Array[
|
|
27
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::OrHash
|
|
28
|
+
]
|
|
29
|
+
).returns(T.attached_class)
|
|
30
|
+
end
|
|
31
|
+
def self.new(items:)
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
sig do
|
|
35
|
+
override.returns(
|
|
36
|
+
{
|
|
37
|
+
items:
|
|
38
|
+
T::Array[
|
|
39
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item
|
|
40
|
+
]
|
|
41
|
+
}
|
|
42
|
+
)
|
|
43
|
+
end
|
|
44
|
+
def to_hash
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
class Item < Dodopayments::Internal::Type::BaseModel
|
|
48
|
+
OrHash =
|
|
49
|
+
T.type_alias do
|
|
50
|
+
T.any(
|
|
51
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item,
|
|
52
|
+
Dodopayments::Internal::AnyHash
|
|
53
|
+
)
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
sig do
|
|
57
|
+
returns(
|
|
58
|
+
T::Hash[
|
|
59
|
+
Symbol,
|
|
60
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::ConnectorPaymentMethod
|
|
61
|
+
]
|
|
62
|
+
)
|
|
63
|
+
end
|
|
64
|
+
attr_accessor :connector_payment_methods
|
|
65
|
+
|
|
66
|
+
# PaymentMethod enum from hyperswitch
|
|
67
|
+
#
|
|
68
|
+
# https://github.com/juspay/hyperswitch/blob/ecd05d53c99ae701ac94893ec632a3988afe3238/crates/common_enums/src/enums.rs#L2097
|
|
69
|
+
sig do
|
|
70
|
+
returns(
|
|
71
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::PaymentMethod::TaggedSymbol
|
|
72
|
+
)
|
|
73
|
+
end
|
|
74
|
+
attr_accessor :payment_method
|
|
75
|
+
|
|
76
|
+
sig { returns(String) }
|
|
77
|
+
attr_accessor :payment_method_id
|
|
78
|
+
|
|
79
|
+
sig { returns(T::Hash[Symbol, String]) }
|
|
80
|
+
attr_accessor :profile_map
|
|
81
|
+
|
|
82
|
+
sig do
|
|
83
|
+
returns(
|
|
84
|
+
T.nilable(
|
|
85
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::Card
|
|
86
|
+
)
|
|
87
|
+
)
|
|
88
|
+
end
|
|
89
|
+
attr_reader :card
|
|
90
|
+
|
|
91
|
+
sig do
|
|
92
|
+
params(
|
|
93
|
+
card:
|
|
94
|
+
T.nilable(
|
|
95
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::Card::OrHash
|
|
96
|
+
)
|
|
97
|
+
).void
|
|
98
|
+
end
|
|
99
|
+
attr_writer :card
|
|
100
|
+
|
|
101
|
+
sig { returns(T.nilable(Time)) }
|
|
102
|
+
attr_accessor :last_used_at
|
|
103
|
+
|
|
104
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
105
|
+
attr_accessor :recurring_enabled
|
|
106
|
+
|
|
107
|
+
sig do
|
|
108
|
+
params(
|
|
109
|
+
connector_payment_methods:
|
|
110
|
+
T::Hash[
|
|
111
|
+
Symbol,
|
|
112
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::ConnectorPaymentMethod::OrHash
|
|
113
|
+
],
|
|
114
|
+
payment_method:
|
|
115
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::PaymentMethod::OrSymbol,
|
|
116
|
+
payment_method_id: String,
|
|
117
|
+
profile_map: T::Hash[Symbol, String],
|
|
118
|
+
card:
|
|
119
|
+
T.nilable(
|
|
120
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::Card::OrHash
|
|
121
|
+
),
|
|
122
|
+
last_used_at: T.nilable(Time),
|
|
123
|
+
recurring_enabled: T.nilable(T::Boolean)
|
|
124
|
+
).returns(T.attached_class)
|
|
125
|
+
end
|
|
126
|
+
def self.new(
|
|
127
|
+
connector_payment_methods:,
|
|
128
|
+
# PaymentMethod enum from hyperswitch
|
|
129
|
+
#
|
|
130
|
+
# https://github.com/juspay/hyperswitch/blob/ecd05d53c99ae701ac94893ec632a3988afe3238/crates/common_enums/src/enums.rs#L2097
|
|
131
|
+
payment_method:,
|
|
132
|
+
payment_method_id:,
|
|
133
|
+
profile_map:,
|
|
134
|
+
card: nil,
|
|
135
|
+
last_used_at: nil,
|
|
136
|
+
recurring_enabled: nil
|
|
137
|
+
)
|
|
138
|
+
end
|
|
139
|
+
|
|
140
|
+
sig do
|
|
141
|
+
override.returns(
|
|
142
|
+
{
|
|
143
|
+
connector_payment_methods:
|
|
144
|
+
T::Hash[
|
|
145
|
+
Symbol,
|
|
146
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::ConnectorPaymentMethod
|
|
147
|
+
],
|
|
148
|
+
payment_method:
|
|
149
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::PaymentMethod::TaggedSymbol,
|
|
150
|
+
payment_method_id: String,
|
|
151
|
+
profile_map: T::Hash[Symbol, String],
|
|
152
|
+
card:
|
|
153
|
+
T.nilable(
|
|
154
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::Card
|
|
155
|
+
),
|
|
156
|
+
last_used_at: T.nilable(Time),
|
|
157
|
+
recurring_enabled: T.nilable(T::Boolean)
|
|
158
|
+
}
|
|
159
|
+
)
|
|
160
|
+
end
|
|
161
|
+
def to_hash
|
|
162
|
+
end
|
|
163
|
+
|
|
164
|
+
class ConnectorPaymentMethod < Dodopayments::Internal::Type::BaseModel
|
|
165
|
+
OrHash =
|
|
166
|
+
T.type_alias do
|
|
167
|
+
T.any(
|
|
168
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::ConnectorPaymentMethod,
|
|
169
|
+
Dodopayments::Internal::AnyHash
|
|
170
|
+
)
|
|
171
|
+
end
|
|
172
|
+
|
|
173
|
+
sig { returns(String) }
|
|
174
|
+
attr_accessor :connector_mandate_id
|
|
175
|
+
|
|
176
|
+
sig { returns(Integer) }
|
|
177
|
+
attr_accessor :original_payment_authorized_amount
|
|
178
|
+
|
|
179
|
+
sig { returns(Dodopayments::Currency::TaggedSymbol) }
|
|
180
|
+
attr_accessor :original_payment_authorized_currency
|
|
181
|
+
|
|
182
|
+
sig do
|
|
183
|
+
returns(T.nilable(Dodopayments::PaymentMethodTypes::TaggedSymbol))
|
|
184
|
+
end
|
|
185
|
+
attr_accessor :payment_method_type
|
|
186
|
+
|
|
187
|
+
sig do
|
|
188
|
+
params(
|
|
189
|
+
connector_mandate_id: String,
|
|
190
|
+
original_payment_authorized_amount: Integer,
|
|
191
|
+
original_payment_authorized_currency:
|
|
192
|
+
Dodopayments::Currency::OrSymbol,
|
|
193
|
+
payment_method_type:
|
|
194
|
+
T.nilable(Dodopayments::PaymentMethodTypes::OrSymbol)
|
|
195
|
+
).returns(T.attached_class)
|
|
196
|
+
end
|
|
197
|
+
def self.new(
|
|
198
|
+
connector_mandate_id:,
|
|
199
|
+
original_payment_authorized_amount:,
|
|
200
|
+
original_payment_authorized_currency:,
|
|
201
|
+
payment_method_type: nil
|
|
202
|
+
)
|
|
203
|
+
end
|
|
204
|
+
|
|
205
|
+
sig do
|
|
206
|
+
override.returns(
|
|
207
|
+
{
|
|
208
|
+
connector_mandate_id: String,
|
|
209
|
+
original_payment_authorized_amount: Integer,
|
|
210
|
+
original_payment_authorized_currency:
|
|
211
|
+
Dodopayments::Currency::TaggedSymbol,
|
|
212
|
+
payment_method_type:
|
|
213
|
+
T.nilable(Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
214
|
+
}
|
|
215
|
+
)
|
|
216
|
+
end
|
|
217
|
+
def to_hash
|
|
218
|
+
end
|
|
219
|
+
end
|
|
220
|
+
|
|
221
|
+
# PaymentMethod enum from hyperswitch
|
|
222
|
+
#
|
|
223
|
+
# https://github.com/juspay/hyperswitch/blob/ecd05d53c99ae701ac94893ec632a3988afe3238/crates/common_enums/src/enums.rs#L2097
|
|
224
|
+
module PaymentMethod
|
|
225
|
+
extend Dodopayments::Internal::Type::Enum
|
|
226
|
+
|
|
227
|
+
TaggedSymbol =
|
|
228
|
+
T.type_alias do
|
|
229
|
+
T.all(
|
|
230
|
+
Symbol,
|
|
231
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::PaymentMethod
|
|
232
|
+
)
|
|
233
|
+
end
|
|
234
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
235
|
+
|
|
236
|
+
CARD =
|
|
237
|
+
T.let(
|
|
238
|
+
:card,
|
|
239
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::PaymentMethod::TaggedSymbol
|
|
240
|
+
)
|
|
241
|
+
CARD_REDIRECT =
|
|
242
|
+
T.let(
|
|
243
|
+
:card_redirect,
|
|
244
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::PaymentMethod::TaggedSymbol
|
|
245
|
+
)
|
|
246
|
+
PAY_LATER =
|
|
247
|
+
T.let(
|
|
248
|
+
:pay_later,
|
|
249
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::PaymentMethod::TaggedSymbol
|
|
250
|
+
)
|
|
251
|
+
WALLET =
|
|
252
|
+
T.let(
|
|
253
|
+
:wallet,
|
|
254
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::PaymentMethod::TaggedSymbol
|
|
255
|
+
)
|
|
256
|
+
BANK_REDIRECT =
|
|
257
|
+
T.let(
|
|
258
|
+
:bank_redirect,
|
|
259
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::PaymentMethod::TaggedSymbol
|
|
260
|
+
)
|
|
261
|
+
BANK_TRANSFER =
|
|
262
|
+
T.let(
|
|
263
|
+
:bank_transfer,
|
|
264
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::PaymentMethod::TaggedSymbol
|
|
265
|
+
)
|
|
266
|
+
CRYPTO =
|
|
267
|
+
T.let(
|
|
268
|
+
:crypto,
|
|
269
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::PaymentMethod::TaggedSymbol
|
|
270
|
+
)
|
|
271
|
+
BANK_DEBIT =
|
|
272
|
+
T.let(
|
|
273
|
+
:bank_debit,
|
|
274
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::PaymentMethod::TaggedSymbol
|
|
275
|
+
)
|
|
276
|
+
REWARD =
|
|
277
|
+
T.let(
|
|
278
|
+
:reward,
|
|
279
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::PaymentMethod::TaggedSymbol
|
|
280
|
+
)
|
|
281
|
+
REAL_TIME_PAYMENT =
|
|
282
|
+
T.let(
|
|
283
|
+
:real_time_payment,
|
|
284
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::PaymentMethod::TaggedSymbol
|
|
285
|
+
)
|
|
286
|
+
UPI =
|
|
287
|
+
T.let(
|
|
288
|
+
:upi,
|
|
289
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::PaymentMethod::TaggedSymbol
|
|
290
|
+
)
|
|
291
|
+
VOUCHER =
|
|
292
|
+
T.let(
|
|
293
|
+
:voucher,
|
|
294
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::PaymentMethod::TaggedSymbol
|
|
295
|
+
)
|
|
296
|
+
GIFT_CARD =
|
|
297
|
+
T.let(
|
|
298
|
+
:gift_card,
|
|
299
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::PaymentMethod::TaggedSymbol
|
|
300
|
+
)
|
|
301
|
+
OPEN_BANKING =
|
|
302
|
+
T.let(
|
|
303
|
+
:open_banking,
|
|
304
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::PaymentMethod::TaggedSymbol
|
|
305
|
+
)
|
|
306
|
+
MOBILE_PAYMENT =
|
|
307
|
+
T.let(
|
|
308
|
+
:mobile_payment,
|
|
309
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::PaymentMethod::TaggedSymbol
|
|
310
|
+
)
|
|
311
|
+
|
|
312
|
+
sig do
|
|
313
|
+
override.returns(
|
|
314
|
+
T::Array[
|
|
315
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::PaymentMethod::TaggedSymbol
|
|
316
|
+
]
|
|
317
|
+
)
|
|
318
|
+
end
|
|
319
|
+
def self.values
|
|
320
|
+
end
|
|
321
|
+
end
|
|
322
|
+
|
|
323
|
+
class Card < Dodopayments::Internal::Type::BaseModel
|
|
324
|
+
OrHash =
|
|
325
|
+
T.type_alias do
|
|
326
|
+
T.any(
|
|
327
|
+
Dodopayments::Models::CustomerRetrievePaymentMethodsResponse::Item::Card,
|
|
328
|
+
Dodopayments::Internal::AnyHash
|
|
329
|
+
)
|
|
330
|
+
end
|
|
331
|
+
|
|
332
|
+
# ISO country code alpha2 variant
|
|
333
|
+
sig { returns(T.nilable(Dodopayments::CountryCode::TaggedSymbol)) }
|
|
334
|
+
attr_accessor :card_issuing_country
|
|
335
|
+
|
|
336
|
+
sig { returns(T.nilable(String)) }
|
|
337
|
+
attr_accessor :card_network
|
|
338
|
+
|
|
339
|
+
sig { returns(T.nilable(String)) }
|
|
340
|
+
attr_accessor :card_type
|
|
341
|
+
|
|
342
|
+
sig { returns(T.nilable(String)) }
|
|
343
|
+
attr_accessor :expiry_month
|
|
344
|
+
|
|
345
|
+
sig { returns(T.nilable(String)) }
|
|
346
|
+
attr_accessor :expiry_year
|
|
347
|
+
|
|
348
|
+
sig { returns(T.nilable(String)) }
|
|
349
|
+
attr_accessor :last4_digits
|
|
350
|
+
|
|
351
|
+
sig do
|
|
352
|
+
params(
|
|
353
|
+
card_issuing_country:
|
|
354
|
+
T.nilable(Dodopayments::CountryCode::OrSymbol),
|
|
355
|
+
card_network: T.nilable(String),
|
|
356
|
+
card_type: T.nilable(String),
|
|
357
|
+
expiry_month: T.nilable(String),
|
|
358
|
+
expiry_year: T.nilable(String),
|
|
359
|
+
last4_digits: T.nilable(String)
|
|
360
|
+
).returns(T.attached_class)
|
|
361
|
+
end
|
|
362
|
+
def self.new(
|
|
363
|
+
# ISO country code alpha2 variant
|
|
364
|
+
card_issuing_country: nil,
|
|
365
|
+
card_network: nil,
|
|
366
|
+
card_type: nil,
|
|
367
|
+
expiry_month: nil,
|
|
368
|
+
expiry_year: nil,
|
|
369
|
+
last4_digits: nil
|
|
370
|
+
)
|
|
371
|
+
end
|
|
372
|
+
|
|
373
|
+
sig do
|
|
374
|
+
override.returns(
|
|
375
|
+
{
|
|
376
|
+
card_issuing_country:
|
|
377
|
+
T.nilable(Dodopayments::CountryCode::TaggedSymbol),
|
|
378
|
+
card_network: T.nilable(String),
|
|
379
|
+
card_type: T.nilable(String),
|
|
380
|
+
expiry_month: T.nilable(String),
|
|
381
|
+
expiry_year: T.nilable(String),
|
|
382
|
+
last4_digits: T.nilable(String)
|
|
383
|
+
}
|
|
384
|
+
)
|
|
385
|
+
end
|
|
386
|
+
def to_hash
|
|
387
|
+
end
|
|
388
|
+
end
|
|
389
|
+
end
|
|
390
|
+
end
|
|
391
|
+
end
|
|
392
|
+
end
|
|
@@ -14,6 +14,10 @@ module Dodopayments
|
|
|
14
14
|
)
|
|
15
15
|
end
|
|
16
16
|
|
|
17
|
+
# Additional metadata for the customer
|
|
18
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
|
19
|
+
attr_accessor :metadata
|
|
20
|
+
|
|
17
21
|
sig { returns(T.nilable(String)) }
|
|
18
22
|
attr_accessor :name
|
|
19
23
|
|
|
@@ -22,17 +26,25 @@ module Dodopayments
|
|
|
22
26
|
|
|
23
27
|
sig do
|
|
24
28
|
params(
|
|
29
|
+
metadata: T.nilable(T::Hash[Symbol, String]),
|
|
25
30
|
name: T.nilable(String),
|
|
26
31
|
phone_number: T.nilable(String),
|
|
27
32
|
request_options: Dodopayments::RequestOptions::OrHash
|
|
28
33
|
).returns(T.attached_class)
|
|
29
34
|
end
|
|
30
|
-
def self.new(
|
|
35
|
+
def self.new(
|
|
36
|
+
# Additional metadata for the customer
|
|
37
|
+
metadata: nil,
|
|
38
|
+
name: nil,
|
|
39
|
+
phone_number: nil,
|
|
40
|
+
request_options: {}
|
|
41
|
+
)
|
|
31
42
|
end
|
|
32
43
|
|
|
33
44
|
sig do
|
|
34
45
|
override.returns(
|
|
35
46
|
{
|
|
47
|
+
metadata: T.nilable(T::Hash[Symbol, String]),
|
|
36
48
|
name: T.nilable(String),
|
|
37
49
|
phone_number: T.nilable(String),
|
|
38
50
|
request_options: Dodopayments::RequestOptions
|
|
@@ -14,6 +14,10 @@ module Dodopayments
|
|
|
14
14
|
)
|
|
15
15
|
end
|
|
16
16
|
|
|
17
|
+
# Name of the product
|
|
18
|
+
sig { returns(String) }
|
|
19
|
+
attr_accessor :name
|
|
20
|
+
|
|
17
21
|
# Price configuration for the product
|
|
18
22
|
sig do
|
|
19
23
|
returns(
|
|
@@ -93,12 +97,9 @@ module Dodopayments
|
|
|
93
97
|
sig { params(metadata: T::Hash[Symbol, String]).void }
|
|
94
98
|
attr_writer :metadata
|
|
95
99
|
|
|
96
|
-
# Optional name of the product
|
|
97
|
-
sig { returns(T.nilable(String)) }
|
|
98
|
-
attr_accessor :name
|
|
99
|
-
|
|
100
100
|
sig do
|
|
101
101
|
params(
|
|
102
|
+
name: String,
|
|
102
103
|
price:
|
|
103
104
|
T.any(
|
|
104
105
|
Dodopayments::Price::OneTimePrice::OrHash,
|
|
@@ -119,11 +120,12 @@ module Dodopayments
|
|
|
119
120
|
T.nilable(Dodopayments::LicenseKeyDuration::OrHash),
|
|
120
121
|
license_key_enabled: T.nilable(T::Boolean),
|
|
121
122
|
metadata: T::Hash[Symbol, String],
|
|
122
|
-
name: T.nilable(String),
|
|
123
123
|
request_options: Dodopayments::RequestOptions::OrHash
|
|
124
124
|
).returns(T.attached_class)
|
|
125
125
|
end
|
|
126
126
|
def self.new(
|
|
127
|
+
# Name of the product
|
|
128
|
+
name:,
|
|
127
129
|
# Price configuration for the product
|
|
128
130
|
price:,
|
|
129
131
|
# Tax category applied to this product
|
|
@@ -148,8 +150,6 @@ module Dodopayments
|
|
|
148
150
|
license_key_enabled: nil,
|
|
149
151
|
# Additional metadata for the product
|
|
150
152
|
metadata: nil,
|
|
151
|
-
# Optional name of the product
|
|
152
|
-
name: nil,
|
|
153
153
|
request_options: {}
|
|
154
154
|
)
|
|
155
155
|
end
|
|
@@ -157,6 +157,7 @@ module Dodopayments
|
|
|
157
157
|
sig do
|
|
158
158
|
override.returns(
|
|
159
159
|
{
|
|
160
|
+
name: String,
|
|
160
161
|
price:
|
|
161
162
|
T.any(
|
|
162
163
|
Dodopayments::Price::OneTimePrice,
|
|
@@ -176,7 +177,6 @@ module Dodopayments
|
|
|
176
177
|
license_key_duration: T.nilable(Dodopayments::LicenseKeyDuration),
|
|
177
178
|
license_key_enabled: T.nilable(T::Boolean),
|
|
178
179
|
metadata: T::Hash[Symbol, String],
|
|
179
|
-
name: T.nilable(String),
|
|
180
180
|
request_options: Dodopayments::RequestOptions
|
|
181
181
|
}
|
|
182
182
|
)
|
|
@@ -122,6 +122,10 @@ module Dodopayments
|
|
|
122
122
|
sig { returns(T.nilable(Time)) }
|
|
123
123
|
attr_accessor :expires_at
|
|
124
124
|
|
|
125
|
+
# Saved payment method id used for recurring charges
|
|
126
|
+
sig { returns(T.nilable(String)) }
|
|
127
|
+
attr_accessor :payment_method_id
|
|
128
|
+
|
|
125
129
|
# Tax identifier provided for this subscription (if applicable)
|
|
126
130
|
sig { returns(T.nilable(String)) }
|
|
127
131
|
attr_accessor :tax_id
|
|
@@ -155,6 +159,7 @@ module Dodopayments
|
|
|
155
159
|
discount_cycles_remaining: T.nilable(Integer),
|
|
156
160
|
discount_id: T.nilable(String),
|
|
157
161
|
expires_at: T.nilable(Time),
|
|
162
|
+
payment_method_id: T.nilable(String),
|
|
158
163
|
tax_id: T.nilable(String)
|
|
159
164
|
).returns(T.attached_class)
|
|
160
165
|
end
|
|
@@ -213,6 +218,8 @@ module Dodopayments
|
|
|
213
218
|
discount_id: nil,
|
|
214
219
|
# Timestamp when the subscription will expire
|
|
215
220
|
expires_at: nil,
|
|
221
|
+
# Saved payment method id used for recurring charges
|
|
222
|
+
payment_method_id: nil,
|
|
216
223
|
# Tax identifier provided for this subscription (if applicable)
|
|
217
224
|
tax_id: nil
|
|
218
225
|
)
|
|
@@ -249,6 +256,7 @@ module Dodopayments
|
|
|
249
256
|
discount_cycles_remaining: T.nilable(Integer),
|
|
250
257
|
discount_id: T.nilable(String),
|
|
251
258
|
expires_at: T.nilable(Time),
|
|
259
|
+
payment_method_id: T.nilable(String),
|
|
252
260
|
tax_id: T.nilable(String)
|
|
253
261
|
}
|
|
254
262
|
)
|
|
@@ -113,6 +113,10 @@ module Dodopayments
|
|
|
113
113
|
sig { returns(T.nilable(String)) }
|
|
114
114
|
attr_accessor :discount_id
|
|
115
115
|
|
|
116
|
+
# Saved payment method id used for recurring charges
|
|
117
|
+
sig { returns(T.nilable(String)) }
|
|
118
|
+
attr_accessor :payment_method_id
|
|
119
|
+
|
|
116
120
|
# Tax identifier provided for this subscription (if applicable)
|
|
117
121
|
sig { returns(T.nilable(String)) }
|
|
118
122
|
attr_accessor :tax_id
|
|
@@ -143,6 +147,7 @@ module Dodopayments
|
|
|
143
147
|
cancelled_at: T.nilable(Time),
|
|
144
148
|
discount_cycles_remaining: T.nilable(Integer),
|
|
145
149
|
discount_id: T.nilable(String),
|
|
150
|
+
payment_method_id: T.nilable(String),
|
|
146
151
|
tax_id: T.nilable(String)
|
|
147
152
|
).returns(T.attached_class)
|
|
148
153
|
end
|
|
@@ -195,6 +200,8 @@ module Dodopayments
|
|
|
195
200
|
discount_cycles_remaining: nil,
|
|
196
201
|
# The discount id if discount is applied
|
|
197
202
|
discount_id: nil,
|
|
203
|
+
# Saved payment method id used for recurring charges
|
|
204
|
+
payment_method_id: nil,
|
|
198
205
|
# Tax identifier provided for this subscription (if applicable)
|
|
199
206
|
tax_id: nil
|
|
200
207
|
)
|
|
@@ -228,6 +235,7 @@ module Dodopayments
|
|
|
228
235
|
cancelled_at: T.nilable(Time),
|
|
229
236
|
discount_cycles_remaining: T.nilable(Integer),
|
|
230
237
|
discount_id: T.nilable(String),
|
|
238
|
+
payment_method_id: T.nilable(String),
|
|
231
239
|
tax_id: T.nilable(String)
|
|
232
240
|
}
|
|
233
241
|
)
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Dodopayments
|
|
4
|
+
module Models
|
|
5
|
+
class SubscriptionUpdatePaymentMethodParams < Dodopayments::Internal::Type::BaseModel
|
|
6
|
+
extend Dodopayments::Internal::Type::RequestParameters::Converter
|
|
7
|
+
include Dodopayments::Internal::Type::RequestParameters
|
|
8
|
+
|
|
9
|
+
OrHash =
|
|
10
|
+
T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
Dodopayments::SubscriptionUpdatePaymentMethodParams,
|
|
13
|
+
Dodopayments::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
sig do
|
|
18
|
+
returns(
|
|
19
|
+
Dodopayments::SubscriptionUpdatePaymentMethodParams::Type::OrSymbol
|
|
20
|
+
)
|
|
21
|
+
end
|
|
22
|
+
attr_accessor :type
|
|
23
|
+
|
|
24
|
+
sig { returns(T.nilable(String)) }
|
|
25
|
+
attr_accessor :return_url
|
|
26
|
+
|
|
27
|
+
sig { returns(String) }
|
|
28
|
+
attr_accessor :payment_method_id
|
|
29
|
+
|
|
30
|
+
sig do
|
|
31
|
+
params(
|
|
32
|
+
type:
|
|
33
|
+
Dodopayments::SubscriptionUpdatePaymentMethodParams::Type::OrSymbol,
|
|
34
|
+
payment_method_id: String,
|
|
35
|
+
return_url: T.nilable(String),
|
|
36
|
+
request_options: Dodopayments::RequestOptions::OrHash
|
|
37
|
+
).returns(T.attached_class)
|
|
38
|
+
end
|
|
39
|
+
def self.new(
|
|
40
|
+
type:,
|
|
41
|
+
payment_method_id:,
|
|
42
|
+
return_url: nil,
|
|
43
|
+
request_options: {}
|
|
44
|
+
)
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
sig do
|
|
48
|
+
override.returns(
|
|
49
|
+
{
|
|
50
|
+
type:
|
|
51
|
+
Dodopayments::SubscriptionUpdatePaymentMethodParams::Type::OrSymbol,
|
|
52
|
+
return_url: T.nilable(String),
|
|
53
|
+
payment_method_id: String,
|
|
54
|
+
request_options: Dodopayments::RequestOptions
|
|
55
|
+
}
|
|
56
|
+
)
|
|
57
|
+
end
|
|
58
|
+
def to_hash
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
module Type
|
|
62
|
+
extend Dodopayments::Internal::Type::Enum
|
|
63
|
+
|
|
64
|
+
TaggedSymbol =
|
|
65
|
+
T.type_alias do
|
|
66
|
+
T.all(
|
|
67
|
+
Symbol,
|
|
68
|
+
Dodopayments::SubscriptionUpdatePaymentMethodParams::Type
|
|
69
|
+
)
|
|
70
|
+
end
|
|
71
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
72
|
+
|
|
73
|
+
EXISTING =
|
|
74
|
+
T.let(
|
|
75
|
+
:existing,
|
|
76
|
+
Dodopayments::SubscriptionUpdatePaymentMethodParams::Type::TaggedSymbol
|
|
77
|
+
)
|
|
78
|
+
|
|
79
|
+
sig do
|
|
80
|
+
override.returns(
|
|
81
|
+
T::Array[
|
|
82
|
+
Dodopayments::SubscriptionUpdatePaymentMethodParams::Type::TaggedSymbol
|
|
83
|
+
]
|
|
84
|
+
)
|
|
85
|
+
end
|
|
86
|
+
def self.values
|
|
87
|
+
end
|
|
88
|
+
end
|
|
89
|
+
end
|
|
90
|
+
end
|
|
91
|
+
end
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Dodopayments
|
|
4
|
+
module Models
|
|
5
|
+
class SubscriptionUpdatePaymentMethodResponse < Dodopayments::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(
|
|
9
|
+
Dodopayments::Models::SubscriptionUpdatePaymentMethodResponse,
|
|
10
|
+
Dodopayments::Internal::AnyHash
|
|
11
|
+
)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
sig { returns(T.nilable(String)) }
|
|
15
|
+
attr_accessor :client_secret
|
|
16
|
+
|
|
17
|
+
sig { returns(T.nilable(Time)) }
|
|
18
|
+
attr_accessor :expires_on
|
|
19
|
+
|
|
20
|
+
sig { returns(T.nilable(String)) }
|
|
21
|
+
attr_accessor :payment_id
|
|
22
|
+
|
|
23
|
+
sig { returns(T.nilable(String)) }
|
|
24
|
+
attr_accessor :payment_link
|
|
25
|
+
|
|
26
|
+
sig do
|
|
27
|
+
params(
|
|
28
|
+
client_secret: T.nilable(String),
|
|
29
|
+
expires_on: T.nilable(Time),
|
|
30
|
+
payment_id: T.nilable(String),
|
|
31
|
+
payment_link: T.nilable(String)
|
|
32
|
+
).returns(T.attached_class)
|
|
33
|
+
end
|
|
34
|
+
def self.new(
|
|
35
|
+
client_secret: nil,
|
|
36
|
+
expires_on: nil,
|
|
37
|
+
payment_id: nil,
|
|
38
|
+
payment_link: nil
|
|
39
|
+
)
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
sig do
|
|
43
|
+
override.returns(
|
|
44
|
+
{
|
|
45
|
+
client_secret: T.nilable(String),
|
|
46
|
+
expires_on: T.nilable(Time),
|
|
47
|
+
payment_id: T.nilable(String),
|
|
48
|
+
payment_link: T.nilable(String)
|
|
49
|
+
}
|
|
50
|
+
)
|
|
51
|
+
end
|
|
52
|
+
def to_hash
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
end
|