dodopayments 1.71.1 → 1.74.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/models/checkout_session_preview_params.rb +14 -0
- data/lib/dodopayments/models/checkout_session_preview_response.rb +426 -0
- data/lib/dodopayments/models/checkout_session_request.rb +94 -1
- data/lib/dodopayments/models/customer_list_params.rb +25 -1
- data/lib/dodopayments/models/discount_list_params.rb +33 -1
- data/lib/dodopayments/models/discount_retrieve_by_code_params.rb +14 -0
- data/lib/dodopayments/models/license_key_list_params.rb +17 -1
- data/lib/dodopayments/models/payment.rb +40 -1
- data/lib/dodopayments/models/payment_list_response.rb +28 -1
- data/lib/dodopayments/models/payment_method_types.rb +13 -98
- data/lib/dodopayments/models/product.rb +9 -1
- data/lib/dodopayments/models/subscription.rb +32 -1
- data/lib/dodopayments/models/subscription_change_plan_params.rb +10 -1
- data/lib/dodopayments/models/subscription_list_response.rb +9 -1
- data/lib/dodopayments/models/subscription_preview_change_plan_params.rb +10 -1
- data/lib/dodopayments/models.rb +4 -0
- data/lib/dodopayments/resources/checkout_sessions.rb +64 -1
- data/lib/dodopayments/resources/customers.rb +7 -1
- data/lib/dodopayments/resources/discounts.rb +31 -1
- data/lib/dodopayments/resources/license_keys.rb +5 -1
- data/lib/dodopayments/resources/subscriptions.rb +6 -2
- data/lib/dodopayments/version.rb +1 -1
- data/lib/dodopayments.rb +3 -0
- data/rbi/dodopayments/models/checkout_session_preview_params.rbi +32 -0
- data/rbi/dodopayments/models/checkout_session_preview_response.rbi +616 -0
- data/rbi/dodopayments/models/checkout_session_request.rbi +183 -0
- data/rbi/dodopayments/models/customer_list_params.rbi +33 -0
- data/rbi/dodopayments/models/discount_list_params.rbi +44 -0
- data/rbi/dodopayments/models/discount_retrieve_by_code_params.rbi +32 -0
- data/rbi/dodopayments/models/license_key_list_params.rbi +22 -0
- data/rbi/dodopayments/models/payment.rbi +54 -0
- data/rbi/dodopayments/models/payment_list_response.rbi +16 -0
- data/rbi/dodopayments/models/payment_method_types.rbi +18 -186
- data/rbi/dodopayments/models/product.rbi +11 -3
- data/rbi/dodopayments/models/subscription.rbi +50 -0
- data/rbi/dodopayments/models/subscription_change_plan_params.rbi +10 -0
- data/rbi/dodopayments/models/subscription_list_response.rbi +8 -0
- data/rbi/dodopayments/models/subscription_preview_change_plan_params.rbi +10 -0
- data/rbi/dodopayments/models.rbi +6 -0
- data/rbi/dodopayments/resources/checkout_sessions.rbi +104 -0
- data/rbi/dodopayments/resources/customers.rbi +9 -0
- data/rbi/dodopayments/resources/discounts.rbi +28 -0
- data/rbi/dodopayments/resources/license_keys.rbi +6 -0
- data/rbi/dodopayments/resources/subscriptions.rbi +8 -0
- data/sig/dodopayments/models/checkout_session_preview_params.rbs +15 -0
- data/sig/dodopayments/models/checkout_session_preview_response.rbs +330 -0
- data/sig/dodopayments/models/checkout_session_request.rbs +81 -0
- data/sig/dodopayments/models/customer_list_params.rbs +26 -1
- data/sig/dodopayments/models/discount_list_params.rbs +34 -1
- data/sig/dodopayments/models/discount_retrieve_by_code_params.rbs +15 -0
- data/sig/dodopayments/models/license_key_list_params.rbs +14 -0
- data/sig/dodopayments/models/payment.rbs +22 -0
- data/sig/dodopayments/models/payment_list_response.rbs +10 -0
- data/sig/dodopayments/models/payment_method_types.rbs +26 -196
- data/sig/dodopayments/models/product.rbs +8 -3
- data/sig/dodopayments/models/subscription.rbs +17 -0
- data/sig/dodopayments/models/subscription_change_plan_params.rbs +6 -1
- data/sig/dodopayments/models/subscription_list_response.rbs +5 -0
- data/sig/dodopayments/models/subscription_preview_change_plan_params.rbs +6 -1
- data/sig/dodopayments/models.rbs +4 -0
- data/sig/dodopayments/resources/checkout_sessions.rbs +25 -0
- data/sig/dodopayments/resources/customers.rbs +3 -0
- data/sig/dodopayments/resources/discounts.rbs +9 -0
- data/sig/dodopayments/resources/license_keys.rbs +2 -0
- data/sig/dodopayments/resources/subscriptions.rbs +2 -0
- metadata +11 -2
|
@@ -9,205 +9,37 @@ module Dodopayments
|
|
|
9
9
|
T.type_alias { T.all(Symbol, Dodopayments::PaymentMethodTypes) }
|
|
10
10
|
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
T.let(
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
)
|
|
19
|
-
ALFAMART =
|
|
20
|
-
T.let(:alfamart, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
21
|
-
ALI_PAY = T.let(:ali_pay, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
22
|
-
ALI_PAY_HK =
|
|
23
|
-
T.let(:ali_pay_hk, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
24
|
-
ALMA = T.let(:alma, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
25
|
-
AMAZON_PAY =
|
|
26
|
-
T.let(:amazon_pay, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
12
|
+
CREDIT = T.let(:credit, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
13
|
+
DEBIT = T.let(:debit, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
14
|
+
UPI_COLLECT =
|
|
15
|
+
T.let(:upi_collect, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
16
|
+
UPI_INTENT =
|
|
17
|
+
T.let(:upi_intent, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
27
18
|
APPLE_PAY =
|
|
28
19
|
T.let(:apple_pay, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
29
|
-
ATOME = T.let(:atome, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
30
|
-
BACS = T.let(:bacs, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
31
|
-
BANCONTACT_CARD =
|
|
32
|
-
T.let(:bancontact_card, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
33
|
-
BECS = T.let(:becs, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
34
|
-
BENEFIT = T.let(:benefit, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
35
|
-
BIZUM = T.let(:bizum, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
36
|
-
BLIK = T.let(:blik, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
37
|
-
BOLETO = T.let(:boleto, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
38
|
-
BCA_BANK_TRANSFER =
|
|
39
|
-
T.let(
|
|
40
|
-
:bca_bank_transfer,
|
|
41
|
-
Dodopayments::PaymentMethodTypes::TaggedSymbol
|
|
42
|
-
)
|
|
43
|
-
BNI_VA = T.let(:bni_va, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
44
|
-
BRI_VA = T.let(:bri_va, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
45
|
-
CARD_REDIRECT =
|
|
46
|
-
T.let(:card_redirect, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
47
|
-
CIMB_VA = T.let(:cimb_va, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
48
|
-
CLASSIC = T.let(:classic, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
49
|
-
CREDIT = T.let(:credit, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
50
|
-
CRYPTO_CURRENCY =
|
|
51
|
-
T.let(:crypto_currency, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
52
20
|
CASHAPP = T.let(:cashapp, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
53
|
-
DANA = T.let(:dana, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
54
|
-
DANAMON_VA =
|
|
55
|
-
T.let(:danamon_va, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
56
|
-
DEBIT = T.let(:debit, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
57
|
-
DUIT_NOW =
|
|
58
|
-
T.let(:duit_now, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
59
|
-
EFECTY = T.let(:efecty, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
60
|
-
EFT = T.let(:eft, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
61
|
-
EPS = T.let(:eps, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
62
|
-
FPS = T.let(:fps, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
63
|
-
EVOUCHER =
|
|
64
|
-
T.let(:evoucher, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
65
|
-
GIROPAY = T.let(:giropay, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
66
|
-
GIVEX = T.let(:givex, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
67
21
|
GOOGLE_PAY =
|
|
68
22
|
T.let(:google_pay, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
69
|
-
GO_PAY = T.let(:go_pay, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
70
|
-
GCASH = T.let(:gcash, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
71
|
-
IDEAL = T.let(:ideal, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
72
|
-
INTERAC = T.let(:interac, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
73
|
-
INDOMARET =
|
|
74
|
-
T.let(:indomaret, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
75
|
-
KLARNA = T.let(:klarna, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
76
|
-
KAKAO_PAY =
|
|
77
|
-
T.let(:kakao_pay, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
78
|
-
LOCAL_BANK_REDIRECT =
|
|
79
|
-
T.let(
|
|
80
|
-
:local_bank_redirect,
|
|
81
|
-
Dodopayments::PaymentMethodTypes::TaggedSymbol
|
|
82
|
-
)
|
|
83
|
-
MANDIRI_VA =
|
|
84
|
-
T.let(:mandiri_va, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
85
|
-
KNET = T.let(:knet, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
86
|
-
MB_WAY = T.let(:mb_way, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
87
|
-
MOBILE_PAY =
|
|
88
|
-
T.let(:mobile_pay, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
89
|
-
MOMO = T.let(:momo, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
90
|
-
MOMO_ATM =
|
|
91
|
-
T.let(:momo_atm, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
92
23
|
MULTIBANCO =
|
|
93
24
|
T.let(:multibanco, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
94
|
-
|
|
95
|
-
T.let(
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
)
|
|
99
|
-
ONLINE_BANKING_CZECH_REPUBLIC =
|
|
100
|
-
T.let(
|
|
101
|
-
:online_banking_czech_republic,
|
|
102
|
-
Dodopayments::PaymentMethodTypes::TaggedSymbol
|
|
103
|
-
)
|
|
104
|
-
ONLINE_BANKING_FINLAND =
|
|
105
|
-
T.let(
|
|
106
|
-
:online_banking_finland,
|
|
107
|
-
Dodopayments::PaymentMethodTypes::TaggedSymbol
|
|
108
|
-
)
|
|
109
|
-
ONLINE_BANKING_FPX =
|
|
110
|
-
T.let(
|
|
111
|
-
:online_banking_fpx,
|
|
112
|
-
Dodopayments::PaymentMethodTypes::TaggedSymbol
|
|
113
|
-
)
|
|
114
|
-
ONLINE_BANKING_POLAND =
|
|
115
|
-
T.let(
|
|
116
|
-
:online_banking_poland,
|
|
117
|
-
Dodopayments::PaymentMethodTypes::TaggedSymbol
|
|
118
|
-
)
|
|
119
|
-
ONLINE_BANKING_SLOVAKIA =
|
|
120
|
-
T.let(
|
|
121
|
-
:online_banking_slovakia,
|
|
122
|
-
Dodopayments::PaymentMethodTypes::TaggedSymbol
|
|
123
|
-
)
|
|
124
|
-
OXXO = T.let(:oxxo, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
125
|
-
PAGO_EFECTIVO =
|
|
126
|
-
T.let(:pago_efectivo, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
127
|
-
PERMATA_BANK_TRANSFER =
|
|
128
|
-
T.let(
|
|
129
|
-
:permata_bank_transfer,
|
|
130
|
-
Dodopayments::PaymentMethodTypes::TaggedSymbol
|
|
131
|
-
)
|
|
132
|
-
OPEN_BANKING_UK =
|
|
133
|
-
T.let(:open_banking_uk, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
134
|
-
PAY_BRIGHT =
|
|
135
|
-
T.let(:pay_bright, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
136
|
-
PAYPAL = T.let(:paypal, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
137
|
-
PAZE = T.let(:paze, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
138
|
-
PIX = T.let(:pix, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
139
|
-
PAY_SAFE_CARD =
|
|
140
|
-
T.let(:pay_safe_card, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
25
|
+
BANCONTACT_CARD =
|
|
26
|
+
T.let(:bancontact_card, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
27
|
+
EPS = T.let(:eps, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
28
|
+
IDEAL = T.let(:ideal, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
141
29
|
PRZELEWY24 =
|
|
142
30
|
T.let(:przelewy24, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
RED_COMPRA =
|
|
147
|
-
T.let(:red_compra, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
148
|
-
RED_PAGOS =
|
|
149
|
-
T.let(:red_pagos, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
150
|
-
SAMSUNG_PAY =
|
|
151
|
-
T.let(:samsung_pay, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
31
|
+
PAYPAL = T.let(:paypal, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
32
|
+
AFFIRM = T.let(:affirm, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
33
|
+
KLARNA = T.let(:klarna, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
152
34
|
SEPA = T.let(:sepa, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
)
|
|
158
|
-
SOFORT = T.let(:sofort, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
159
|
-
SWISH = T.let(:swish, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
160
|
-
TOUCH_N_GO =
|
|
161
|
-
T.let(:touch_n_go, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
162
|
-
TRUSTLY = T.let(:trustly, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
163
|
-
TWINT = T.let(:twint, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
164
|
-
UPI_COLLECT =
|
|
165
|
-
T.let(:upi_collect, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
166
|
-
UPI_INTENT =
|
|
167
|
-
T.let(:upi_intent, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
168
|
-
VIPPS = T.let(:vipps, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
169
|
-
VIET_QR = T.let(:viet_qr, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
170
|
-
VENMO = T.let(:venmo, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
171
|
-
WALLEY = T.let(:walley, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
172
|
-
WE_CHAT_PAY =
|
|
173
|
-
T.let(:we_chat_pay, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
174
|
-
SEVEN_ELEVEN =
|
|
175
|
-
T.let(:seven_eleven, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
176
|
-
LAWSON = T.let(:lawson, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
177
|
-
MINI_STOP =
|
|
178
|
-
T.let(:mini_stop, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
179
|
-
FAMILY_MART =
|
|
180
|
-
T.let(:family_mart, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
181
|
-
SEICOMART =
|
|
182
|
-
T.let(:seicomart, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
183
|
-
PAY_EASY =
|
|
184
|
-
T.let(:pay_easy, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
185
|
-
LOCAL_BANK_TRANSFER =
|
|
186
|
-
T.let(
|
|
187
|
-
:local_bank_transfer,
|
|
188
|
-
Dodopayments::PaymentMethodTypes::TaggedSymbol
|
|
189
|
-
)
|
|
190
|
-
MIFINITY =
|
|
191
|
-
T.let(:mifinity, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
192
|
-
OPEN_BANKING_PIS =
|
|
193
|
-
T.let(:open_banking_pis, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
194
|
-
DIRECT_CARRIER_BILLING =
|
|
195
|
-
T.let(
|
|
196
|
-
:direct_carrier_billing,
|
|
197
|
-
Dodopayments::PaymentMethodTypes::TaggedSymbol
|
|
198
|
-
)
|
|
199
|
-
INSTANT_BANK_TRANSFER =
|
|
35
|
+
ACH = T.let(:ach, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
36
|
+
AMAZON_PAY =
|
|
37
|
+
T.let(:amazon_pay, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
38
|
+
AFTERPAY_CLEARPAY =
|
|
200
39
|
T.let(
|
|
201
|
-
:
|
|
40
|
+
:afterpay_clearpay,
|
|
202
41
|
Dodopayments::PaymentMethodTypes::TaggedSymbol
|
|
203
42
|
)
|
|
204
|
-
BILLIE = T.let(:billie, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
205
|
-
ZIP = T.let(:zip, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
206
|
-
REVOLUT_PAY =
|
|
207
|
-
T.let(:revolut_pay, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
208
|
-
NAVER_PAY =
|
|
209
|
-
T.let(:naver_pay, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
210
|
-
PAYCO = T.let(:payco, Dodopayments::PaymentMethodTypes::TaggedSymbol)
|
|
211
43
|
|
|
212
44
|
sig do
|
|
213
45
|
override.returns(
|
|
@@ -94,6 +94,10 @@ module Dodopayments
|
|
|
94
94
|
sig { returns(T.nilable(String)) }
|
|
95
95
|
attr_accessor :name
|
|
96
96
|
|
|
97
|
+
# The product collection ID this product belongs to, if any
|
|
98
|
+
sig { returns(T.nilable(String)) }
|
|
99
|
+
attr_accessor :product_collection_id
|
|
100
|
+
|
|
97
101
|
sig do
|
|
98
102
|
params(
|
|
99
103
|
brand_id: String,
|
|
@@ -120,7 +124,8 @@ module Dodopayments
|
|
|
120
124
|
license_key_activations_limit: T.nilable(Integer),
|
|
121
125
|
license_key_duration:
|
|
122
126
|
T.nilable(Dodopayments::LicenseKeyDuration::OrHash),
|
|
123
|
-
name: T.nilable(String)
|
|
127
|
+
name: T.nilable(String),
|
|
128
|
+
product_collection_id: T.nilable(String)
|
|
124
129
|
).returns(T.attached_class)
|
|
125
130
|
end
|
|
126
131
|
def self.new(
|
|
@@ -157,7 +162,9 @@ module Dodopayments
|
|
|
157
162
|
# Duration of the license key validity, if enabled.
|
|
158
163
|
license_key_duration: nil,
|
|
159
164
|
# Name of the product, optional.
|
|
160
|
-
name: nil
|
|
165
|
+
name: nil,
|
|
166
|
+
# The product collection ID this product belongs to, if any
|
|
167
|
+
product_collection_id: nil
|
|
161
168
|
)
|
|
162
169
|
end
|
|
163
170
|
|
|
@@ -182,7 +189,8 @@ module Dodopayments
|
|
|
182
189
|
license_key_activation_message: T.nilable(String),
|
|
183
190
|
license_key_activations_limit: T.nilable(Integer),
|
|
184
191
|
license_key_duration: T.nilable(Dodopayments::LicenseKeyDuration),
|
|
185
|
-
name: T.nilable(String)
|
|
192
|
+
name: T.nilable(String),
|
|
193
|
+
product_collection_id: T.nilable(String)
|
|
186
194
|
}
|
|
187
195
|
)
|
|
188
196
|
end
|
|
@@ -110,6 +110,14 @@ module Dodopayments
|
|
|
110
110
|
sig { returns(T.nilable(Time)) }
|
|
111
111
|
attr_accessor :cancelled_at
|
|
112
112
|
|
|
113
|
+
# Customer's responses to custom fields collected during checkout
|
|
114
|
+
sig do
|
|
115
|
+
returns(
|
|
116
|
+
T.nilable(T::Array[Dodopayments::Subscription::CustomFieldResponse])
|
|
117
|
+
)
|
|
118
|
+
end
|
|
119
|
+
attr_accessor :custom_field_responses
|
|
120
|
+
|
|
113
121
|
# Number of remaining discount cycles if discount is applied
|
|
114
122
|
sig { returns(T.nilable(Integer)) }
|
|
115
123
|
attr_accessor :discount_cycles_remaining
|
|
@@ -156,6 +164,10 @@ module Dodopayments
|
|
|
156
164
|
tax_inclusive: T::Boolean,
|
|
157
165
|
trial_period_days: Integer,
|
|
158
166
|
cancelled_at: T.nilable(Time),
|
|
167
|
+
custom_field_responses:
|
|
168
|
+
T.nilable(
|
|
169
|
+
T::Array[Dodopayments::Subscription::CustomFieldResponse::OrHash]
|
|
170
|
+
),
|
|
159
171
|
discount_cycles_remaining: T.nilable(Integer),
|
|
160
172
|
discount_id: T.nilable(String),
|
|
161
173
|
expires_at: T.nilable(Time),
|
|
@@ -212,6 +224,8 @@ module Dodopayments
|
|
|
212
224
|
trial_period_days:,
|
|
213
225
|
# Cancelled timestamp if the subscription is cancelled
|
|
214
226
|
cancelled_at: nil,
|
|
227
|
+
# Customer's responses to custom fields collected during checkout
|
|
228
|
+
custom_field_responses: nil,
|
|
215
229
|
# Number of remaining discount cycles if discount is applied
|
|
216
230
|
discount_cycles_remaining: nil,
|
|
217
231
|
# The discount id if discount is applied
|
|
@@ -253,6 +267,10 @@ module Dodopayments
|
|
|
253
267
|
tax_inclusive: T::Boolean,
|
|
254
268
|
trial_period_days: Integer,
|
|
255
269
|
cancelled_at: T.nilable(Time),
|
|
270
|
+
custom_field_responses:
|
|
271
|
+
T.nilable(
|
|
272
|
+
T::Array[Dodopayments::Subscription::CustomFieldResponse]
|
|
273
|
+
),
|
|
256
274
|
discount_cycles_remaining: T.nilable(Integer),
|
|
257
275
|
discount_id: T.nilable(String),
|
|
258
276
|
expires_at: T.nilable(Time),
|
|
@@ -333,6 +351,38 @@ module Dodopayments
|
|
|
333
351
|
def to_hash
|
|
334
352
|
end
|
|
335
353
|
end
|
|
354
|
+
|
|
355
|
+
class CustomFieldResponse < Dodopayments::Internal::Type::BaseModel
|
|
356
|
+
OrHash =
|
|
357
|
+
T.type_alias do
|
|
358
|
+
T.any(
|
|
359
|
+
Dodopayments::Subscription::CustomFieldResponse,
|
|
360
|
+
Dodopayments::Internal::AnyHash
|
|
361
|
+
)
|
|
362
|
+
end
|
|
363
|
+
|
|
364
|
+
# Key matching the custom field definition
|
|
365
|
+
sig { returns(String) }
|
|
366
|
+
attr_accessor :key
|
|
367
|
+
|
|
368
|
+
# Value provided by customer
|
|
369
|
+
sig { returns(String) }
|
|
370
|
+
attr_accessor :value
|
|
371
|
+
|
|
372
|
+
# Customer's response to a custom field
|
|
373
|
+
sig { params(key: String, value: String).returns(T.attached_class) }
|
|
374
|
+
def self.new(
|
|
375
|
+
# Key matching the custom field definition
|
|
376
|
+
key:,
|
|
377
|
+
# Value provided by customer
|
|
378
|
+
value:
|
|
379
|
+
)
|
|
380
|
+
end
|
|
381
|
+
|
|
382
|
+
sig { override.returns({ key: String, value: String }) }
|
|
383
|
+
def to_hash
|
|
384
|
+
end
|
|
385
|
+
end
|
|
336
386
|
end
|
|
337
387
|
end
|
|
338
388
|
end
|
|
@@ -35,6 +35,11 @@ module Dodopayments
|
|
|
35
35
|
sig { returns(T.nilable(T::Array[Dodopayments::AttachAddon])) }
|
|
36
36
|
attr_accessor :addons
|
|
37
37
|
|
|
38
|
+
# Metadata for the payment. If not passed, the metadata of the subscription will
|
|
39
|
+
# be taken
|
|
40
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
|
41
|
+
attr_accessor :metadata
|
|
42
|
+
|
|
38
43
|
sig do
|
|
39
44
|
params(
|
|
40
45
|
product_id: String,
|
|
@@ -42,6 +47,7 @@ module Dodopayments
|
|
|
42
47
|
Dodopayments::SubscriptionChangePlanParams::ProrationBillingMode::OrSymbol,
|
|
43
48
|
quantity: Integer,
|
|
44
49
|
addons: T.nilable(T::Array[Dodopayments::AttachAddon::OrHash]),
|
|
50
|
+
metadata: T.nilable(T::Hash[Symbol, String]),
|
|
45
51
|
request_options: Dodopayments::RequestOptions::OrHash
|
|
46
52
|
).returns(T.attached_class)
|
|
47
53
|
end
|
|
@@ -55,6 +61,9 @@ module Dodopayments
|
|
|
55
61
|
# Addons for the new plan. Note : Leaving this empty would remove any existing
|
|
56
62
|
# addons
|
|
57
63
|
addons: nil,
|
|
64
|
+
# Metadata for the payment. If not passed, the metadata of the subscription will
|
|
65
|
+
# be taken
|
|
66
|
+
metadata: nil,
|
|
58
67
|
request_options: {}
|
|
59
68
|
)
|
|
60
69
|
end
|
|
@@ -67,6 +76,7 @@ module Dodopayments
|
|
|
67
76
|
Dodopayments::SubscriptionChangePlanParams::ProrationBillingMode::OrSymbol,
|
|
68
77
|
quantity: Integer,
|
|
69
78
|
addons: T.nilable(T::Array[Dodopayments::AttachAddon]),
|
|
79
|
+
metadata: T.nilable(T::Hash[Symbol, String]),
|
|
70
80
|
request_options: Dodopayments::RequestOptions
|
|
71
81
|
}
|
|
72
82
|
)
|
|
@@ -117,6 +117,10 @@ module Dodopayments
|
|
|
117
117
|
sig { returns(T.nilable(String)) }
|
|
118
118
|
attr_accessor :payment_method_id
|
|
119
119
|
|
|
120
|
+
# Name of the product associated with this subscription
|
|
121
|
+
sig { returns(T.nilable(String)) }
|
|
122
|
+
attr_accessor :product_name
|
|
123
|
+
|
|
120
124
|
# Tax identifier provided for this subscription (if applicable)
|
|
121
125
|
sig { returns(T.nilable(String)) }
|
|
122
126
|
attr_accessor :tax_id
|
|
@@ -148,6 +152,7 @@ module Dodopayments
|
|
|
148
152
|
discount_cycles_remaining: T.nilable(Integer),
|
|
149
153
|
discount_id: T.nilable(String),
|
|
150
154
|
payment_method_id: T.nilable(String),
|
|
155
|
+
product_name: T.nilable(String),
|
|
151
156
|
tax_id: T.nilable(String)
|
|
152
157
|
).returns(T.attached_class)
|
|
153
158
|
end
|
|
@@ -202,6 +207,8 @@ module Dodopayments
|
|
|
202
207
|
discount_id: nil,
|
|
203
208
|
# Saved payment method id used for recurring charges
|
|
204
209
|
payment_method_id: nil,
|
|
210
|
+
# Name of the product associated with this subscription
|
|
211
|
+
product_name: nil,
|
|
205
212
|
# Tax identifier provided for this subscription (if applicable)
|
|
206
213
|
tax_id: nil
|
|
207
214
|
)
|
|
@@ -236,6 +243,7 @@ module Dodopayments
|
|
|
236
243
|
discount_cycles_remaining: T.nilable(Integer),
|
|
237
244
|
discount_id: T.nilable(String),
|
|
238
245
|
payment_method_id: T.nilable(String),
|
|
246
|
+
product_name: T.nilable(String),
|
|
239
247
|
tax_id: T.nilable(String)
|
|
240
248
|
}
|
|
241
249
|
)
|
|
@@ -35,6 +35,11 @@ module Dodopayments
|
|
|
35
35
|
sig { returns(T.nilable(T::Array[Dodopayments::AttachAddon])) }
|
|
36
36
|
attr_accessor :addons
|
|
37
37
|
|
|
38
|
+
# Metadata for the payment. If not passed, the metadata of the subscription will
|
|
39
|
+
# be taken
|
|
40
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
|
41
|
+
attr_accessor :metadata
|
|
42
|
+
|
|
38
43
|
sig do
|
|
39
44
|
params(
|
|
40
45
|
product_id: String,
|
|
@@ -42,6 +47,7 @@ module Dodopayments
|
|
|
42
47
|
Dodopayments::SubscriptionPreviewChangePlanParams::ProrationBillingMode::OrSymbol,
|
|
43
48
|
quantity: Integer,
|
|
44
49
|
addons: T.nilable(T::Array[Dodopayments::AttachAddon::OrHash]),
|
|
50
|
+
metadata: T.nilable(T::Hash[Symbol, String]),
|
|
45
51
|
request_options: Dodopayments::RequestOptions::OrHash
|
|
46
52
|
).returns(T.attached_class)
|
|
47
53
|
end
|
|
@@ -55,6 +61,9 @@ module Dodopayments
|
|
|
55
61
|
# Addons for the new plan. Note : Leaving this empty would remove any existing
|
|
56
62
|
# addons
|
|
57
63
|
addons: nil,
|
|
64
|
+
# Metadata for the payment. If not passed, the metadata of the subscription will
|
|
65
|
+
# be taken
|
|
66
|
+
metadata: nil,
|
|
58
67
|
request_options: {}
|
|
59
68
|
)
|
|
60
69
|
end
|
|
@@ -67,6 +76,7 @@ module Dodopayments
|
|
|
67
76
|
Dodopayments::SubscriptionPreviewChangePlanParams::ProrationBillingMode::OrSymbol,
|
|
68
77
|
quantity: Integer,
|
|
69
78
|
addons: T.nilable(T::Array[Dodopayments::AttachAddon]),
|
|
79
|
+
metadata: T.nilable(T::Hash[Symbol, String]),
|
|
70
80
|
request_options: Dodopayments::RequestOptions
|
|
71
81
|
}
|
|
72
82
|
)
|
data/rbi/dodopayments/models.rbi
CHANGED
|
@@ -38,6 +38,9 @@ module Dodopayments
|
|
|
38
38
|
CheckoutSessionCreateParams =
|
|
39
39
|
Dodopayments::Models::CheckoutSessionCreateParams
|
|
40
40
|
|
|
41
|
+
CheckoutSessionPreviewParams =
|
|
42
|
+
Dodopayments::Models::CheckoutSessionPreviewParams
|
|
43
|
+
|
|
41
44
|
CheckoutSessionRequest = Dodopayments::Models::CheckoutSessionRequest
|
|
42
45
|
|
|
43
46
|
CheckoutSessionResponse = Dodopayments::Models::CheckoutSessionResponse
|
|
@@ -82,6 +85,9 @@ module Dodopayments
|
|
|
82
85
|
|
|
83
86
|
DiscountListParams = Dodopayments::Models::DiscountListParams
|
|
84
87
|
|
|
88
|
+
DiscountRetrieveByCodeParams =
|
|
89
|
+
Dodopayments::Models::DiscountRetrieveByCodeParams
|
|
90
|
+
|
|
85
91
|
DiscountRetrieveParams = Dodopayments::Models::DiscountRetrieveParams
|
|
86
92
|
|
|
87
93
|
DiscountType = Dodopayments::Models::DiscountType
|
|
@@ -15,6 +15,12 @@ module Dodopayments
|
|
|
15
15
|
),
|
|
16
16
|
billing_currency: T.nilable(Dodopayments::Currency::OrSymbol),
|
|
17
17
|
confirm: T::Boolean,
|
|
18
|
+
custom_fields:
|
|
19
|
+
T.nilable(
|
|
20
|
+
T::Array[
|
|
21
|
+
Dodopayments::CheckoutSessionRequest::CustomField::OrHash
|
|
22
|
+
]
|
|
23
|
+
),
|
|
18
24
|
customer:
|
|
19
25
|
T.nilable(
|
|
20
26
|
T.any(
|
|
@@ -31,6 +37,7 @@ module Dodopayments
|
|
|
31
37
|
metadata: T.nilable(T::Hash[Symbol, String]),
|
|
32
38
|
minimal_address: T::Boolean,
|
|
33
39
|
payment_method_id: T.nilable(String),
|
|
40
|
+
product_collection_id: T.nilable(String),
|
|
34
41
|
return_url: T.nilable(String),
|
|
35
42
|
short_link: T::Boolean,
|
|
36
43
|
show_saved_payment_methods: T::Boolean,
|
|
@@ -57,6 +64,8 @@ module Dodopayments
|
|
|
57
64
|
# If confirm is true, all the details will be finalized. If required data is
|
|
58
65
|
# missing, an API error is thrown.
|
|
59
66
|
confirm: nil,
|
|
67
|
+
# Custom fields to collect from customer during checkout (max 5 fields)
|
|
68
|
+
custom_fields: nil,
|
|
60
69
|
# Customer details for the session
|
|
61
70
|
customer: nil,
|
|
62
71
|
# Customization for the checkout session page
|
|
@@ -74,6 +83,8 @@ module Dodopayments
|
|
|
74
83
|
# Optional payment method ID to use for this checkout session. Only allowed when
|
|
75
84
|
# `confirm` is true. If provided, existing customer id must also be provided.
|
|
76
85
|
payment_method_id: nil,
|
|
86
|
+
# Product collection ID for collection-based checkout flow
|
|
87
|
+
product_collection_id: nil,
|
|
77
88
|
# The url to redirect after payment failure or success.
|
|
78
89
|
return_url: nil,
|
|
79
90
|
# If true, returns a shortened checkout URL. Defaults to false if not specified.
|
|
@@ -94,6 +105,99 @@ module Dodopayments
|
|
|
94
105
|
def retrieve(id, request_options: {})
|
|
95
106
|
end
|
|
96
107
|
|
|
108
|
+
sig do
|
|
109
|
+
params(
|
|
110
|
+
product_cart:
|
|
111
|
+
T::Array[Dodopayments::CheckoutSessionRequest::ProductCart::OrHash],
|
|
112
|
+
allowed_payment_method_types:
|
|
113
|
+
T.nilable(T::Array[Dodopayments::PaymentMethodTypes::OrSymbol]),
|
|
114
|
+
billing_address:
|
|
115
|
+
T.nilable(
|
|
116
|
+
Dodopayments::CheckoutSessionRequest::BillingAddress::OrHash
|
|
117
|
+
),
|
|
118
|
+
billing_currency: T.nilable(Dodopayments::Currency::OrSymbol),
|
|
119
|
+
confirm: T::Boolean,
|
|
120
|
+
custom_fields:
|
|
121
|
+
T.nilable(
|
|
122
|
+
T::Array[
|
|
123
|
+
Dodopayments::CheckoutSessionRequest::CustomField::OrHash
|
|
124
|
+
]
|
|
125
|
+
),
|
|
126
|
+
customer:
|
|
127
|
+
T.nilable(
|
|
128
|
+
T.any(
|
|
129
|
+
Dodopayments::AttachExistingCustomer::OrHash,
|
|
130
|
+
Dodopayments::NewCustomer::OrHash
|
|
131
|
+
)
|
|
132
|
+
),
|
|
133
|
+
customization:
|
|
134
|
+
Dodopayments::CheckoutSessionRequest::Customization::OrHash,
|
|
135
|
+
discount_code: T.nilable(String),
|
|
136
|
+
feature_flags:
|
|
137
|
+
Dodopayments::CheckoutSessionRequest::FeatureFlags::OrHash,
|
|
138
|
+
force_3ds: T.nilable(T::Boolean),
|
|
139
|
+
metadata: T.nilable(T::Hash[Symbol, String]),
|
|
140
|
+
minimal_address: T::Boolean,
|
|
141
|
+
payment_method_id: T.nilable(String),
|
|
142
|
+
product_collection_id: T.nilable(String),
|
|
143
|
+
return_url: T.nilable(String),
|
|
144
|
+
short_link: T::Boolean,
|
|
145
|
+
show_saved_payment_methods: T::Boolean,
|
|
146
|
+
subscription_data:
|
|
147
|
+
T.nilable(
|
|
148
|
+
Dodopayments::CheckoutSessionRequest::SubscriptionData::OrHash
|
|
149
|
+
),
|
|
150
|
+
request_options: Dodopayments::RequestOptions::OrHash
|
|
151
|
+
).returns(Dodopayments::Models::CheckoutSessionPreviewResponse)
|
|
152
|
+
end
|
|
153
|
+
def preview(
|
|
154
|
+
product_cart:,
|
|
155
|
+
# Customers will never see payment methods that are not in this list. However,
|
|
156
|
+
# adding a method here does not guarantee customers will see it. Availability
|
|
157
|
+
# still depends on other factors (e.g., customer location, merchant settings).
|
|
158
|
+
#
|
|
159
|
+
# Disclaimar: Always provide 'credit' and 'debit' as a fallback. If all payment
|
|
160
|
+
# methods are unavailable, checkout session will fail.
|
|
161
|
+
allowed_payment_method_types: nil,
|
|
162
|
+
# Billing address information for the session
|
|
163
|
+
billing_address: nil,
|
|
164
|
+
# This field is ingored if adaptive pricing is disabled
|
|
165
|
+
billing_currency: nil,
|
|
166
|
+
# If confirm is true, all the details will be finalized. If required data is
|
|
167
|
+
# missing, an API error is thrown.
|
|
168
|
+
confirm: nil,
|
|
169
|
+
# Custom fields to collect from customer during checkout (max 5 fields)
|
|
170
|
+
custom_fields: nil,
|
|
171
|
+
# Customer details for the session
|
|
172
|
+
customer: nil,
|
|
173
|
+
# Customization for the checkout session page
|
|
174
|
+
customization: nil,
|
|
175
|
+
discount_code: nil,
|
|
176
|
+
feature_flags: nil,
|
|
177
|
+
# Override merchant default 3DS behaviour for this session
|
|
178
|
+
force_3ds: nil,
|
|
179
|
+
# Additional metadata associated with the payment. Defaults to empty if not
|
|
180
|
+
# provided.
|
|
181
|
+
metadata: nil,
|
|
182
|
+
# If true, only zipcode is required when confirm is true; other address fields
|
|
183
|
+
# remain optional
|
|
184
|
+
minimal_address: nil,
|
|
185
|
+
# Optional payment method ID to use for this checkout session. Only allowed when
|
|
186
|
+
# `confirm` is true. If provided, existing customer id must also be provided.
|
|
187
|
+
payment_method_id: nil,
|
|
188
|
+
# Product collection ID for collection-based checkout flow
|
|
189
|
+
product_collection_id: nil,
|
|
190
|
+
# The url to redirect after payment failure or success.
|
|
191
|
+
return_url: nil,
|
|
192
|
+
# If true, returns a shortened checkout URL. Defaults to false if not specified.
|
|
193
|
+
short_link: nil,
|
|
194
|
+
# Display saved payment methods of a returning customer False by default
|
|
195
|
+
show_saved_payment_methods: nil,
|
|
196
|
+
subscription_data: nil,
|
|
197
|
+
request_options: {}
|
|
198
|
+
)
|
|
199
|
+
end
|
|
200
|
+
|
|
97
201
|
# @api private
|
|
98
202
|
sig { params(client: Dodopayments::Client).returns(T.attached_class) }
|
|
99
203
|
def self.new(client:)
|
|
@@ -63,7 +63,10 @@ module Dodopayments
|
|
|
63
63
|
|
|
64
64
|
sig do
|
|
65
65
|
params(
|
|
66
|
+
created_at_gte: Time,
|
|
67
|
+
created_at_lte: Time,
|
|
66
68
|
email: String,
|
|
69
|
+
name: String,
|
|
67
70
|
page_number: Integer,
|
|
68
71
|
page_size: Integer,
|
|
69
72
|
request_options: Dodopayments::RequestOptions::OrHash
|
|
@@ -74,8 +77,14 @@ module Dodopayments
|
|
|
74
77
|
)
|
|
75
78
|
end
|
|
76
79
|
def list(
|
|
80
|
+
# Filter customers created on or after this timestamp
|
|
81
|
+
created_at_gte: nil,
|
|
82
|
+
# Filter customers created on or before this timestamp
|
|
83
|
+
created_at_lte: nil,
|
|
77
84
|
# Filter by customer email
|
|
78
85
|
email: nil,
|
|
86
|
+
# Filter by customer name (partial match, case-insensitive)
|
|
87
|
+
name: nil,
|
|
79
88
|
# Page number default is 0
|
|
80
89
|
page_number: nil,
|
|
81
90
|
# Page size default is 10 max is 100
|