dodopayments 2.27.0 → 2.29.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 (67) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +21 -0
  3. data/README.md +1 -1
  4. data/lib/dodopayments/internal/type/union.rb +15 -5
  5. data/lib/dodopayments/models/balance_ledger_entry.rb +6 -0
  6. data/lib/dodopayments/models/balance_retrieve_ledger_params.rb +6 -0
  7. data/lib/dodopayments/models/checkout_session_flags.rb +19 -1
  8. data/lib/dodopayments/models/checkout_session_preview_response.rb +10 -1
  9. data/lib/dodopayments/models/credit_entitlements/balance_create_ledger_entry_params.rb +1 -1
  10. data/lib/dodopayments/models/credit_entitlements/balance_create_ledger_entry_response.rb +21 -1
  11. data/lib/dodopayments/models/credit_entitlements/credit_ledger_entry.rb +2 -7
  12. data/lib/dodopayments/models/customers/email_body.rb +57 -0
  13. data/lib/dodopayments/models/customers/email_failure_code.rb +28 -0
  14. data/lib/dodopayments/models/customers/email_list_params.rb +39 -0
  15. data/lib/dodopayments/models/customers/email_log_item.rb +112 -0
  16. data/lib/dodopayments/models/customers/email_log_status.rb +24 -0
  17. data/lib/dodopayments/models/customers/email_policies.rb +57 -0
  18. data/lib/dodopayments/models/customers/email_retrieve_body_params.rb +28 -0
  19. data/lib/dodopayments/models/price.rb +95 -27
  20. data/lib/dodopayments/models/subscription.rb +10 -1
  21. data/lib/dodopayments/models/subscription_create_response.rb +10 -1
  22. data/lib/dodopayments/models/subscription_list_response.rb +10 -1
  23. data/lib/dodopayments/resources/credit_entitlements/balances.rb +1 -0
  24. data/lib/dodopayments/resources/customers/emails.rb +76 -0
  25. data/lib/dodopayments/resources/customers.rb +4 -0
  26. data/lib/dodopayments/version.rb +1 -1
  27. data/lib/dodopayments.rb +8 -0
  28. data/rbi/dodopayments/models/balance_ledger_entry.rbi +30 -0
  29. data/rbi/dodopayments/models/balance_retrieve_ledger_params.rbi +30 -0
  30. data/rbi/dodopayments/models/checkout_session_flags.rbi +31 -0
  31. data/rbi/dodopayments/models/checkout_session_preview_response.rbi +10 -0
  32. data/rbi/dodopayments/models/credit_entitlements/balance_create_ledger_entry_params.rbi +2 -2
  33. data/rbi/dodopayments/models/credit_entitlements/balance_create_ledger_entry_response.rbi +8 -0
  34. data/rbi/dodopayments/models/credit_entitlements/credit_ledger_entry.rbi +2 -6
  35. data/rbi/dodopayments/models/customers/email_body.rbi +88 -0
  36. data/rbi/dodopayments/models/customers/email_failure_code.rbi +75 -0
  37. data/rbi/dodopayments/models/customers/email_list_params.rbi +68 -0
  38. data/rbi/dodopayments/models/customers/email_log_item.rbi +147 -0
  39. data/rbi/dodopayments/models/customers/email_log_status.rbi +46 -0
  40. data/rbi/dodopayments/models/customers/email_policies.rbi +78 -0
  41. data/rbi/dodopayments/models/customers/email_retrieve_body_params.rbi +48 -0
  42. data/rbi/dodopayments/models/price.rbi +124 -25
  43. data/rbi/dodopayments/models/subscription.rbi +10 -0
  44. data/rbi/dodopayments/models/subscription_create_response.rbi +10 -0
  45. data/rbi/dodopayments/models/subscription_list_response.rbi +10 -0
  46. data/rbi/dodopayments/resources/credit_entitlements/balances.rbi +2 -1
  47. data/rbi/dodopayments/resources/customers/emails.rbi +60 -0
  48. data/rbi/dodopayments/resources/customers.rbi +3 -0
  49. data/sig/dodopayments/models/balance_ledger_entry.rbs +12 -0
  50. data/sig/dodopayments/models/balance_retrieve_ledger_params.rbs +12 -0
  51. data/sig/dodopayments/models/checkout_session_flags.rbs +7 -0
  52. data/sig/dodopayments/models/checkout_session_preview_response.rbs +5 -0
  53. data/sig/dodopayments/models/credit_entitlements/balance_create_ledger_entry_response.rbs +5 -0
  54. data/sig/dodopayments/models/customers/email_body.rbs +42 -0
  55. data/sig/dodopayments/models/customers/email_failure_code.rbs +32 -0
  56. data/sig/dodopayments/models/customers/email_list_params.rbs +38 -0
  57. data/sig/dodopayments/models/customers/email_log_item.rbs +77 -0
  58. data/sig/dodopayments/models/customers/email_log_status.rbs +20 -0
  59. data/sig/dodopayments/models/customers/email_policies.rbs +42 -0
  60. data/sig/dodopayments/models/customers/email_retrieve_body_params.rbs +30 -0
  61. data/sig/dodopayments/models/price.rbs +52 -17
  62. data/sig/dodopayments/models/subscription.rbs +5 -0
  63. data/sig/dodopayments/models/subscription_create_response.rbs +5 -0
  64. data/sig/dodopayments/models/subscription_list_response.rbs +5 -0
  65. data/sig/dodopayments/resources/customers/emails.rbs +22 -0
  66. data/sig/dodopayments/resources/customers.rbs +2 -0
  67. metadata +26 -2
@@ -0,0 +1,42 @@
1
+ module Dodopayments
2
+ module Models
3
+ module Customers
4
+ type email_body =
5
+ {
6
+ merchant_authored: bool,
7
+ failure_code: Dodopayments::Models::Customers::email_failure_code?,
8
+ failure_reason: String?,
9
+ html: String?,
10
+ text: String?
11
+ }
12
+
13
+ class EmailBody < Dodopayments::Internal::Type::BaseModel
14
+ attr_accessor merchant_authored: bool
15
+
16
+ attr_accessor failure_code: Dodopayments::Models::Customers::email_failure_code?
17
+
18
+ attr_accessor failure_reason: String?
19
+
20
+ attr_accessor html: String?
21
+
22
+ attr_accessor text: String?
23
+
24
+ def initialize: (
25
+ merchant_authored: bool,
26
+ ?failure_code: Dodopayments::Models::Customers::email_failure_code?,
27
+ ?failure_reason: String?,
28
+ ?html: String?,
29
+ ?text: String?
30
+ ) -> void
31
+
32
+ def to_hash: -> {
33
+ merchant_authored: bool,
34
+ failure_code: Dodopayments::Models::Customers::email_failure_code?,
35
+ failure_reason: String?,
36
+ html: String?,
37
+ text: String?
38
+ }
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,32 @@
1
+ module Dodopayments
2
+ module Models
3
+ module Customers
4
+ type email_failure_code =
5
+ :mailbox_not_found
6
+ | :address_rejected
7
+ | :address_suppressed
8
+ | :mailbox_full
9
+ | :temporary_failure
10
+ | :message_too_large
11
+ | :marked_as_spam
12
+ | :send_failed
13
+ | :test_mode_quota_spent
14
+
15
+ module EmailFailureCode
16
+ extend Dodopayments::Internal::Type::Enum
17
+
18
+ MAILBOX_NOT_FOUND: :mailbox_not_found
19
+ ADDRESS_REJECTED: :address_rejected
20
+ ADDRESS_SUPPRESSED: :address_suppressed
21
+ MAILBOX_FULL: :mailbox_full
22
+ TEMPORARY_FAILURE: :temporary_failure
23
+ MESSAGE_TOO_LARGE: :message_too_large
24
+ MARKED_AS_SPAM: :marked_as_spam
25
+ SEND_FAILED: :send_failed
26
+ TEST_MODE_QUOTA_SPENT: :test_mode_quota_spent
27
+
28
+ def self?.values: -> ::Array[Dodopayments::Models::Customers::email_failure_code]
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,38 @@
1
+ module Dodopayments
2
+ module Models
3
+ module Customers
4
+ type email_list_params =
5
+ { customer_id: String, page_number: Integer, page_size: Integer }
6
+ & Dodopayments::Internal::Type::request_parameters
7
+
8
+ class EmailListParams < Dodopayments::Internal::Type::BaseModel
9
+ extend Dodopayments::Internal::Type::RequestParameters::Converter
10
+ include Dodopayments::Internal::Type::RequestParameters
11
+
12
+ attr_accessor customer_id: String
13
+
14
+ attr_reader page_number: Integer?
15
+
16
+ def page_number=: (Integer) -> Integer
17
+
18
+ attr_reader page_size: Integer?
19
+
20
+ def page_size=: (Integer) -> Integer
21
+
22
+ def initialize: (
23
+ customer_id: String,
24
+ ?page_number: Integer,
25
+ ?page_size: Integer,
26
+ ?request_options: Dodopayments::request_opts
27
+ ) -> void
28
+
29
+ def to_hash: -> {
30
+ customer_id: String,
31
+ page_number: Integer,
32
+ page_size: Integer,
33
+ request_options: Dodopayments::RequestOptions
34
+ }
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,77 @@
1
+ module Dodopayments
2
+ module Models
3
+ module Customers
4
+ type email_log_item =
5
+ {
6
+ category: String,
7
+ created_at: Time,
8
+ email_log_id: String,
9
+ email_type: String,
10
+ has_preview: bool,
11
+ policies: Dodopayments::Customers::EmailPolicies,
12
+ status: Dodopayments::Models::Customers::email_log_status,
13
+ failure_code: Dodopayments::Models::Customers::email_failure_code?,
14
+ failure_reason: String?,
15
+ from: String?,
16
+ recipient: String?,
17
+ subject: String?
18
+ }
19
+
20
+ class EmailLogItem < Dodopayments::Internal::Type::BaseModel
21
+ attr_accessor category: String
22
+
23
+ attr_accessor created_at: Time
24
+
25
+ attr_accessor email_log_id: String
26
+
27
+ attr_accessor email_type: String
28
+
29
+ attr_accessor has_preview: bool
30
+
31
+ attr_accessor policies: Dodopayments::Customers::EmailPolicies
32
+
33
+ attr_accessor status: Dodopayments::Models::Customers::email_log_status
34
+
35
+ attr_accessor failure_code: Dodopayments::Models::Customers::email_failure_code?
36
+
37
+ attr_accessor failure_reason: String?
38
+
39
+ attr_accessor from: String?
40
+
41
+ attr_accessor recipient: String?
42
+
43
+ attr_accessor subject: String?
44
+
45
+ def initialize: (
46
+ category: String,
47
+ created_at: Time,
48
+ email_log_id: String,
49
+ email_type: String,
50
+ has_preview: bool,
51
+ policies: Dodopayments::Customers::EmailPolicies,
52
+ status: Dodopayments::Models::Customers::email_log_status,
53
+ ?failure_code: Dodopayments::Models::Customers::email_failure_code?,
54
+ ?failure_reason: String?,
55
+ ?from: String?,
56
+ ?recipient: String?,
57
+ ?subject: String?
58
+ ) -> void
59
+
60
+ def to_hash: -> {
61
+ category: String,
62
+ created_at: Time,
63
+ email_log_id: String,
64
+ email_type: String,
65
+ has_preview: bool,
66
+ policies: Dodopayments::Customers::EmailPolicies,
67
+ status: Dodopayments::Models::Customers::email_log_status,
68
+ failure_code: Dodopayments::Models::Customers::email_failure_code?,
69
+ failure_reason: String?,
70
+ from: String?,
71
+ recipient: String?,
72
+ subject: String?
73
+ }
74
+ end
75
+ end
76
+ end
77
+ end
@@ -0,0 +1,20 @@
1
+ module Dodopayments
2
+ module Models
3
+ module Customers
4
+ type email_log_status =
5
+ :sent | :delivered | :failed | :complained | :blocked
6
+
7
+ module EmailLogStatus
8
+ extend Dodopayments::Internal::Type::Enum
9
+
10
+ SENT: :sent
11
+ DELIVERED: :delivered
12
+ FAILED: :failed
13
+ COMPLAINED: :complained
14
+ BLOCKED: :blocked
15
+
16
+ def self?.values: -> ::Array[Dodopayments::Models::Customers::email_log_status]
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,42 @@
1
+ module Dodopayments
2
+ module Models
3
+ module Customers
4
+ type email_policies =
5
+ {
6
+ requires_different_address: bool,
7
+ resend_allowed: bool,
8
+ resends_remaining: Integer,
9
+ retry_allowed: bool,
10
+ superseded: bool
11
+ }
12
+
13
+ class EmailPolicies < Dodopayments::Internal::Type::BaseModel
14
+ attr_accessor requires_different_address: bool
15
+
16
+ attr_accessor resend_allowed: bool
17
+
18
+ attr_accessor resends_remaining: Integer
19
+
20
+ attr_accessor retry_allowed: bool
21
+
22
+ attr_accessor superseded: bool
23
+
24
+ def initialize: (
25
+ requires_different_address: bool,
26
+ resend_allowed: bool,
27
+ resends_remaining: Integer,
28
+ retry_allowed: bool,
29
+ superseded: bool
30
+ ) -> void
31
+
32
+ def to_hash: -> {
33
+ requires_different_address: bool,
34
+ resend_allowed: bool,
35
+ resends_remaining: Integer,
36
+ retry_allowed: bool,
37
+ superseded: bool
38
+ }
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,30 @@
1
+ module Dodopayments
2
+ module Models
3
+ module Customers
4
+ type email_retrieve_body_params =
5
+ { customer_id: String, email_log_id: String }
6
+ & Dodopayments::Internal::Type::request_parameters
7
+
8
+ class EmailRetrieveBodyParams < Dodopayments::Internal::Type::BaseModel
9
+ extend Dodopayments::Internal::Type::RequestParameters::Converter
10
+ include Dodopayments::Internal::Type::RequestParameters
11
+
12
+ attr_accessor customer_id: String
13
+
14
+ attr_accessor email_log_id: String
15
+
16
+ def initialize: (
17
+ customer_id: String,
18
+ email_log_id: String,
19
+ ?request_options: Dodopayments::request_opts
20
+ ) -> void
21
+
22
+ def to_hash: -> {
23
+ customer_id: String,
24
+ email_log_id: String,
25
+ request_options: Dodopayments::RequestOptions
26
+ }
27
+ end
28
+ end
29
+ end
30
+ end
@@ -11,9 +11,10 @@ module Dodopayments
11
11
  type one_time_price =
12
12
  {
13
13
  currency: Dodopayments::Models::currency,
14
- discount: Integer,
15
14
  price: Integer,
16
15
  type: :one_time_price,
16
+ discount: Integer,
17
+ discount_bps: Integer?,
17
18
  pay_what_you_want: bool,
18
19
  purchasing_power_parity: bool,
19
20
  suggested_price: Integer?,
@@ -23,12 +24,16 @@ module Dodopayments
23
24
  class OneTimePrice < Dodopayments::Internal::Type::BaseModel
24
25
  attr_accessor currency: Dodopayments::Models::currency
25
26
 
26
- attr_accessor discount: Integer
27
-
28
27
  attr_accessor price: Integer
29
28
 
30
29
  attr_accessor type: :one_time_price
31
30
 
31
+ attr_reader discount: Integer?
32
+
33
+ def discount=: (Integer) -> Integer
34
+
35
+ attr_accessor discount_bps: Integer?
36
+
32
37
  attr_reader pay_what_you_want: bool?
33
38
 
34
39
  def pay_what_you_want=: (bool) -> bool
@@ -43,8 +48,9 @@ module Dodopayments
43
48
 
44
49
  def initialize: (
45
50
  currency: Dodopayments::Models::currency,
46
- discount: Integer,
47
51
  price: Integer,
52
+ ?discount: Integer,
53
+ ?discount_bps: Integer?,
48
54
  ?pay_what_you_want: bool,
49
55
  ?purchasing_power_parity: bool,
50
56
  ?suggested_price: Integer?,
@@ -54,9 +60,10 @@ module Dodopayments
54
60
 
55
61
  def to_hash: -> {
56
62
  currency: Dodopayments::Models::currency,
57
- discount: Integer,
58
63
  price: Integer,
59
64
  type: :one_time_price,
65
+ discount: Integer,
66
+ discount_bps: Integer?,
60
67
  pay_what_you_want: bool,
61
68
  purchasing_power_parity: bool,
62
69
  suggested_price: Integer?,
@@ -67,25 +74,26 @@ module Dodopayments
67
74
  type recurring_price =
68
75
  {
69
76
  currency: Dodopayments::Models::currency,
70
- discount: Integer,
71
77
  payment_frequency_count: Integer,
72
78
  payment_frequency_interval: Dodopayments::Models::time_interval,
73
79
  price: Integer,
74
80
  subscription_period_count: Integer,
75
81
  subscription_period_interval: Dodopayments::Models::time_interval,
76
82
  type: :recurring_price,
83
+ discount: Integer,
84
+ discount_bps: Integer?,
77
85
  purchasing_power_parity: bool,
78
86
  tax_inclusive: bool?,
79
87
  trial_amount: Integer?,
80
88
  trial_apply_discounts: bool?,
81
- trial_period_days: Integer
89
+ trial_payment_method_optional: bool,
90
+ trial_period_days: Integer,
91
+ zero_amount_payment_method_optional: bool
82
92
  }
83
93
 
84
94
  class RecurringPrice < Dodopayments::Internal::Type::BaseModel
85
95
  attr_accessor currency: Dodopayments::Models::currency
86
96
 
87
- attr_accessor discount: Integer
88
-
89
97
  attr_accessor payment_frequency_count: Integer
90
98
 
91
99
  attr_accessor payment_frequency_interval: Dodopayments::Models::time_interval
@@ -98,6 +106,12 @@ module Dodopayments
98
106
 
99
107
  attr_accessor type: :recurring_price
100
108
 
109
+ attr_reader discount: Integer?
110
+
111
+ def discount=: (Integer) -> Integer
112
+
113
+ attr_accessor discount_bps: Integer?
114
+
101
115
  attr_reader purchasing_power_parity: bool?
102
116
 
103
117
  def purchasing_power_parity=: (bool) -> bool
@@ -108,53 +122,68 @@ module Dodopayments
108
122
 
109
123
  attr_accessor trial_apply_discounts: bool?
110
124
 
125
+ attr_reader trial_payment_method_optional: bool?
126
+
127
+ def trial_payment_method_optional=: (bool) -> bool
128
+
111
129
  attr_reader trial_period_days: Integer?
112
130
 
113
131
  def trial_period_days=: (Integer) -> Integer
114
132
 
133
+ attr_reader zero_amount_payment_method_optional: bool?
134
+
135
+ def zero_amount_payment_method_optional=: (bool) -> bool
136
+
115
137
  def initialize: (
116
138
  currency: Dodopayments::Models::currency,
117
- discount: Integer,
118
139
  payment_frequency_count: Integer,
119
140
  payment_frequency_interval: Dodopayments::Models::time_interval,
120
141
  price: Integer,
121
142
  subscription_period_count: Integer,
122
143
  subscription_period_interval: Dodopayments::Models::time_interval,
144
+ ?discount: Integer,
145
+ ?discount_bps: Integer?,
123
146
  ?purchasing_power_parity: bool,
124
147
  ?tax_inclusive: bool?,
125
148
  ?trial_amount: Integer?,
126
149
  ?trial_apply_discounts: bool?,
150
+ ?trial_payment_method_optional: bool,
127
151
  ?trial_period_days: Integer,
152
+ ?zero_amount_payment_method_optional: bool,
128
153
  ?type: :recurring_price
129
154
  ) -> void
130
155
 
131
156
  def to_hash: -> {
132
157
  currency: Dodopayments::Models::currency,
133
- discount: Integer,
134
158
  payment_frequency_count: Integer,
135
159
  payment_frequency_interval: Dodopayments::Models::time_interval,
136
160
  price: Integer,
137
161
  subscription_period_count: Integer,
138
162
  subscription_period_interval: Dodopayments::Models::time_interval,
139
163
  type: :recurring_price,
164
+ discount: Integer,
165
+ discount_bps: Integer?,
140
166
  purchasing_power_parity: bool,
141
167
  tax_inclusive: bool?,
142
168
  trial_amount: Integer?,
143
169
  trial_apply_discounts: bool?,
144
- trial_period_days: Integer
170
+ trial_payment_method_optional: bool,
171
+ trial_period_days: Integer,
172
+ zero_amount_payment_method_optional: bool
145
173
  }
146
174
  end
147
175
 
148
176
  type usage_based_price =
149
177
  {
150
178
  currency: Dodopayments::Models::currency,
151
- discount: Integer,
152
179
  fixed_price: Integer,
153
180
  payment_frequency_count: Integer,
154
181
  payment_frequency_interval: Dodopayments::Models::time_interval,
155
182
  subscription_period_count: Integer,
156
183
  subscription_period_interval: Dodopayments::Models::time_interval,
157
184
  type: :usage_based_price,
185
+ discount: Integer,
186
+ discount_bps: Integer?,
158
187
  meters: ::Array[Dodopayments::AddMeterToPrice]?,
159
188
  purchasing_power_parity: bool,
160
189
  tax_inclusive: bool?
@@ -163,8 +192,6 @@ module Dodopayments
163
192
  class UsageBasedPrice < Dodopayments::Internal::Type::BaseModel
164
193
  attr_accessor currency: Dodopayments::Models::currency
165
194
 
166
- attr_accessor discount: Integer
167
-
168
195
  attr_accessor fixed_price: Integer
169
196
 
170
197
  attr_accessor payment_frequency_count: Integer
@@ -177,6 +204,12 @@ module Dodopayments
177
204
 
178
205
  attr_accessor type: :usage_based_price
179
206
 
207
+ attr_reader discount: Integer?
208
+
209
+ def discount=: (Integer) -> Integer
210
+
211
+ attr_accessor discount_bps: Integer?
212
+
180
213
  attr_accessor meters: ::Array[Dodopayments::AddMeterToPrice]?
181
214
 
182
215
  attr_reader purchasing_power_parity: bool?
@@ -187,12 +220,13 @@ module Dodopayments
187
220
 
188
221
  def initialize: (
189
222
  currency: Dodopayments::Models::currency,
190
- discount: Integer,
191
223
  fixed_price: Integer,
192
224
  payment_frequency_count: Integer,
193
225
  payment_frequency_interval: Dodopayments::Models::time_interval,
194
226
  subscription_period_count: Integer,
195
227
  subscription_period_interval: Dodopayments::Models::time_interval,
228
+ ?discount: Integer,
229
+ ?discount_bps: Integer?,
196
230
  ?meters: ::Array[Dodopayments::AddMeterToPrice]?,
197
231
  ?purchasing_power_parity: bool,
198
232
  ?tax_inclusive: bool?,
@@ -201,13 +235,14 @@ module Dodopayments
201
235
 
202
236
  def to_hash: -> {
203
237
  currency: Dodopayments::Models::currency,
204
- discount: Integer,
205
238
  fixed_price: Integer,
206
239
  payment_frequency_count: Integer,
207
240
  payment_frequency_interval: Dodopayments::Models::time_interval,
208
241
  subscription_period_count: Integer,
209
242
  subscription_period_interval: Dodopayments::Models::time_interval,
210
243
  type: :usage_based_price,
244
+ discount: Integer,
245
+ discount_bps: Integer?,
211
246
  meters: ::Array[Dodopayments::AddMeterToPrice]?,
212
247
  purchasing_power_parity: bool,
213
248
  tax_inclusive: bool?
@@ -10,6 +10,7 @@ module Dodopayments
10
10
  credit_entitlement_cart: ::Array[Dodopayments::CreditEntitlementCartResponse],
11
11
  currency: Dodopayments::Models::currency,
12
12
  customer: Dodopayments::CustomerLimitedDetails,
13
+ has_payment_method: bool,
13
14
  metadata: Dodopayments::Models::metadata,
14
15
  meter_credit_entitlement_cart: ::Array[Dodopayments::MeterCreditEntitlementCartResponse],
15
16
  meters: ::Array[Dodopayments::MeterCartResponseItem],
@@ -60,6 +61,8 @@ module Dodopayments
60
61
 
61
62
  attr_accessor customer: Dodopayments::CustomerLimitedDetails
62
63
 
64
+ attr_accessor has_payment_method: bool
65
+
63
66
  attr_accessor metadata: Dodopayments::Models::metadata
64
67
 
65
68
  attr_accessor meter_credit_entitlement_cart: ::Array[Dodopayments::MeterCreditEntitlementCartResponse]
@@ -131,6 +134,7 @@ module Dodopayments
131
134
  credit_entitlement_cart: ::Array[Dodopayments::CreditEntitlementCartResponse],
132
135
  currency: Dodopayments::Models::currency,
133
136
  customer: Dodopayments::CustomerLimitedDetails,
137
+ has_payment_method: bool,
134
138
  metadata: Dodopayments::Models::metadata,
135
139
  meter_credit_entitlement_cart: ::Array[Dodopayments::MeterCreditEntitlementCartResponse],
136
140
  meters: ::Array[Dodopayments::MeterCartResponseItem],
@@ -173,6 +177,7 @@ module Dodopayments
173
177
  credit_entitlement_cart: ::Array[Dodopayments::CreditEntitlementCartResponse],
174
178
  currency: Dodopayments::Models::currency,
175
179
  customer: Dodopayments::CustomerLimitedDetails,
180
+ has_payment_method: bool,
176
181
  metadata: Dodopayments::Models::metadata,
177
182
  meter_credit_entitlement_cart: ::Array[Dodopayments::MeterCreditEntitlementCartResponse],
178
183
  meters: ::Array[Dodopayments::MeterCartResponseItem],
@@ -6,6 +6,7 @@ module Dodopayments
6
6
  customer: Dodopayments::CustomerLimitedDetails,
7
7
  metadata: Dodopayments::Models::metadata,
8
8
  payment_id: String,
9
+ payment_method_required: bool,
9
10
  recurring_pre_tax_amount: Integer,
10
11
  subscription_id: String,
11
12
  client_secret: String?,
@@ -26,6 +27,8 @@ module Dodopayments
26
27
 
27
28
  attr_accessor payment_id: String
28
29
 
30
+ attr_accessor payment_method_required: bool
31
+
29
32
  attr_accessor recurring_pre_tax_amount: Integer
30
33
 
31
34
  attr_accessor subscription_id: String
@@ -49,6 +52,7 @@ module Dodopayments
49
52
  customer: Dodopayments::CustomerLimitedDetails,
50
53
  metadata: Dodopayments::Models::metadata,
51
54
  payment_id: String,
55
+ payment_method_required: bool,
52
56
  recurring_pre_tax_amount: Integer,
53
57
  subscription_id: String,
54
58
  ?client_secret: String?,
@@ -65,6 +69,7 @@ module Dodopayments
65
69
  customer: Dodopayments::CustomerLimitedDetails,
66
70
  metadata: Dodopayments::Models::metadata,
67
71
  payment_id: String,
72
+ payment_method_required: bool,
68
73
  recurring_pre_tax_amount: Integer,
69
74
  subscription_id: String,
70
75
  client_secret: String?,
@@ -8,6 +8,7 @@ module Dodopayments
8
8
  currency: Dodopayments::Models::currency,
9
9
  customer: Dodopayments::CustomerLimitedDetails,
10
10
  discounts: ::Array[Dodopayments::Models::SubscriptionListResponse::Discount],
11
+ has_payment_method: bool,
11
12
  metadata: Dodopayments::Models::metadata,
12
13
  next_billing_date: Time,
13
14
  on_demand: bool,
@@ -48,6 +49,8 @@ module Dodopayments
48
49
 
49
50
  attr_accessor discounts: ::Array[Dodopayments::Models::SubscriptionListResponse::Discount]
50
51
 
52
+ attr_accessor has_payment_method: bool
53
+
51
54
  attr_accessor metadata: Dodopayments::Models::metadata
52
55
 
53
56
  attr_accessor next_billing_date: Time
@@ -105,6 +108,7 @@ module Dodopayments
105
108
  currency: Dodopayments::Models::currency,
106
109
  customer: Dodopayments::CustomerLimitedDetails,
107
110
  discounts: ::Array[Dodopayments::Models::SubscriptionListResponse::Discount],
111
+ has_payment_method: bool,
108
112
  metadata: Dodopayments::Models::metadata,
109
113
  next_billing_date: Time,
110
114
  on_demand: bool,
@@ -139,6 +143,7 @@ module Dodopayments
139
143
  currency: Dodopayments::Models::currency,
140
144
  customer: Dodopayments::CustomerLimitedDetails,
141
145
  discounts: ::Array[Dodopayments::Models::SubscriptionListResponse::Discount],
146
+ has_payment_method: bool,
142
147
  metadata: Dodopayments::Models::metadata,
143
148
  next_billing_date: Time,
144
149
  on_demand: bool,
@@ -0,0 +1,22 @@
1
+ module Dodopayments
2
+ module Resources
3
+ class Customers
4
+ class Emails
5
+ def list: (
6
+ String customer_id,
7
+ ?page_number: Integer,
8
+ ?page_size: Integer,
9
+ ?request_options: Dodopayments::request_opts
10
+ ) -> Dodopayments::Internal::DefaultPageNumberPagination[Dodopayments::Customers::EmailLogItem]
11
+
12
+ def retrieve_body: (
13
+ String email_log_id,
14
+ customer_id: String,
15
+ ?request_options: Dodopayments::request_opts
16
+ ) -> Dodopayments::Customers::EmailBody
17
+
18
+ def initialize: (client: Dodopayments::Client) -> void
19
+ end
20
+ end
21
+ end
22
+ end
@@ -5,6 +5,8 @@ module Dodopayments
5
5
 
6
6
  attr_reader wallets: Dodopayments::Resources::Customers::Wallets
7
7
 
8
+ attr_reader emails: Dodopayments::Resources::Customers::Emails
9
+
8
10
  def create: (
9
11
  email: String,
10
12
  name: String,