dodopayments 2.26.0 → 2.28.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 (205) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -0
  3. data/README.md +1 -1
  4. data/lib/dodopayments/client.rb +4 -0
  5. data/lib/dodopayments/internal/type/union.rb +15 -5
  6. data/lib/dodopayments/models/balance_ledger_entry.rb +9 -1
  7. data/lib/dodopayments/models/balance_retrieve_ledger_params.rb +2 -0
  8. data/lib/dodopayments/models/blocklist/block_by_customer_id.rb +18 -0
  9. data/lib/dodopayments/models/blocklist/block_by_email.rb +18 -0
  10. data/lib/dodopayments/models/blocklist/block_identifier.rb +21 -0
  11. data/lib/dodopayments/models/blocklist/blocked_customer.rb +128 -0
  12. data/lib/dodopayments/models/blocklist/blocked_customer_source.rb +22 -0
  13. data/lib/dodopayments/models/blocklist/create_blocked_customer_request.rb +66 -0
  14. data/lib/dodopayments/models/blocklist/customer_create_params.rb +16 -0
  15. data/lib/dodopayments/models/blocklist/customer_delete_params.rb +22 -0
  16. data/lib/dodopayments/models/blocklist/customer_list_params.rb +64 -0
  17. data/lib/dodopayments/models/blocklist/customer_retrieve_params.rb +22 -0
  18. data/lib/dodopayments/models/blocklist/customers/blocked_customer_note.rb +44 -0
  19. data/lib/dodopayments/models/blocklist/customers/note_create_params.rb +24 -0
  20. data/lib/dodopayments/models/blocklist/customers/note_request.rb +19 -0
  21. data/lib/dodopayments/models/blocklist/customers/note_update_params.rb +30 -0
  22. data/lib/dodopayments/models/checkout_session_preview_response.rb +10 -1
  23. data/lib/dodopayments/models/credit_entitlements/balance_create_ledger_entry_params.rb +1 -1
  24. data/lib/dodopayments/models/credit_entitlements/balance_create_ledger_entry_response.rb +21 -1
  25. data/lib/dodopayments/models/credit_entitlements/credit_ledger_entry.rb +2 -7
  26. data/lib/dodopayments/models/customer.rb +22 -1
  27. data/lib/dodopayments/models/customers/email_body.rb +57 -0
  28. data/lib/dodopayments/models/customers/email_failure_code.rb +27 -0
  29. data/lib/dodopayments/models/customers/email_list_params.rb +39 -0
  30. data/lib/dodopayments/models/customers/email_log_item.rb +121 -0
  31. data/lib/dodopayments/models/customers/email_log_status.rb +24 -0
  32. data/lib/dodopayments/models/customers/email_policies.rb +45 -0
  33. data/lib/dodopayments/models/customers/email_retrieve_body_params.rb +28 -0
  34. data/lib/dodopayments/models/dunning_recovered_webhook_event.rb +1 -0
  35. data/lib/dodopayments/models/dunning_started_webhook_event.rb +1 -0
  36. data/lib/dodopayments/models/manual_retry.rb +76 -0
  37. data/lib/dodopayments/models/manual_retry_state.rb +50 -0
  38. data/lib/dodopayments/models/payment_retrieve_retry_state_params.rb +20 -0
  39. data/lib/dodopayments/models/payment_retry_params.rb +20 -0
  40. data/lib/dodopayments/models/price.rb +95 -27
  41. data/lib/dodopayments/models/subscription.rb +10 -1
  42. data/lib/dodopayments/models/subscription_active_webhook_event.rb +32 -4
  43. data/lib/dodopayments/models/subscription_cancelled_webhook_event.rb +33 -4
  44. data/lib/dodopayments/models/subscription_create_response.rb +10 -1
  45. data/lib/dodopayments/models/subscription_expired_webhook_event.rb +32 -4
  46. data/lib/dodopayments/models/subscription_failed_webhook_event.rb +32 -4
  47. data/lib/dodopayments/models/subscription_list_params.rb +1 -0
  48. data/lib/dodopayments/models/subscription_list_response.rb +10 -1
  49. data/lib/dodopayments/models/subscription_on_hold_webhook_event.rb +32 -4
  50. data/lib/dodopayments/models/subscription_past_due_webhook_event.rb +68 -0
  51. data/lib/dodopayments/models/subscription_paused_webhook_event.rb +32 -4
  52. data/lib/dodopayments/models/subscription_plan_changed_webhook_event.rb +33 -4
  53. data/lib/dodopayments/models/subscription_renewed_webhook_event.rb +32 -4
  54. data/lib/dodopayments/models/subscription_status.rb +1 -0
  55. data/lib/dodopayments/models/subscription_unpaused_webhook_event.rb +32 -4
  56. data/lib/dodopayments/models/subscription_update_params.rb +1 -0
  57. data/lib/dodopayments/models/subscription_update_payment_method_webhook_event.rb +34 -4
  58. data/lib/dodopayments/models/subscription_updated_webhook_event.rb +32 -4
  59. data/lib/dodopayments/models/unsafe_unwrap_webhook_event.rb +3 -1
  60. data/lib/dodopayments/models/unwrap_webhook_event.rb +3 -1
  61. data/lib/dodopayments/models/webhook_event_type.rb +1 -0
  62. data/lib/dodopayments/models/webhook_payload.rb +19 -1
  63. data/lib/dodopayments/models.rb +12 -0
  64. data/lib/dodopayments/resources/blocklist/customers/notes.rb +68 -0
  65. data/lib/dodopayments/resources/blocklist/customers.rb +107 -0
  66. data/lib/dodopayments/resources/blocklist.rb +18 -0
  67. data/lib/dodopayments/resources/credit_entitlements/balances.rb +1 -0
  68. data/lib/dodopayments/resources/customers/emails.rb +76 -0
  69. data/lib/dodopayments/resources/customers.rb +4 -0
  70. data/lib/dodopayments/resources/payments.rb +36 -0
  71. data/lib/dodopayments/resources/webhooks.rb +2 -2
  72. data/lib/dodopayments/version.rb +1 -1
  73. data/lib/dodopayments.rb +31 -1
  74. data/rbi/dodopayments/client.rbi +3 -0
  75. data/rbi/dodopayments/models/balance_ledger_entry.rbi +16 -0
  76. data/rbi/dodopayments/models/balance_retrieve_ledger_params.rbi +10 -0
  77. data/rbi/dodopayments/models/blocklist/block_by_customer_id.rbi +32 -0
  78. data/rbi/dodopayments/models/blocklist/block_by_email.rbi +32 -0
  79. data/rbi/dodopayments/models/blocklist/block_identifier.rbi +30 -0
  80. data/rbi/dodopayments/models/blocklist/blocked_customer.rbi +161 -0
  81. data/rbi/dodopayments/models/blocklist/blocked_customer_source.rbi +55 -0
  82. data/rbi/dodopayments/models/blocklist/create_blocked_customer_request.rbi +143 -0
  83. data/rbi/dodopayments/models/blocklist/customer_create_params.rbi +34 -0
  84. data/rbi/dodopayments/models/blocklist/customer_delete_params.rbi +40 -0
  85. data/rbi/dodopayments/models/blocklist/customer_list_params.rbi +88 -0
  86. data/rbi/dodopayments/models/blocklist/customer_retrieve_params.rbi +40 -0
  87. data/rbi/dodopayments/models/blocklist/customers/blocked_customer_note.rbi +66 -0
  88. data/rbi/dodopayments/models/blocklist/customers/note_create_params.rbi +45 -0
  89. data/rbi/dodopayments/models/blocklist/customers/note_request.rbi +30 -0
  90. data/rbi/dodopayments/models/blocklist/customers/note_update_params.rbi +50 -0
  91. data/rbi/dodopayments/models/checkout_session_preview_response.rbi +10 -0
  92. data/rbi/dodopayments/models/credit_entitlements/balance_create_ledger_entry_params.rbi +2 -2
  93. data/rbi/dodopayments/models/credit_entitlements/balance_create_ledger_entry_response.rbi +8 -0
  94. data/rbi/dodopayments/models/credit_entitlements/credit_ledger_entry.rbi +2 -6
  95. data/rbi/dodopayments/models/customer.rbi +20 -0
  96. data/rbi/dodopayments/models/customers/email_body.rbi +88 -0
  97. data/rbi/dodopayments/models/customers/email_failure_code.rbi +70 -0
  98. data/rbi/dodopayments/models/customers/email_list_params.rbi +68 -0
  99. data/rbi/dodopayments/models/customers/email_log_item.rbi +157 -0
  100. data/rbi/dodopayments/models/customers/email_log_status.rbi +46 -0
  101. data/rbi/dodopayments/models/customers/email_policies.rbi +68 -0
  102. data/rbi/dodopayments/models/customers/email_retrieve_body_params.rbi +48 -0
  103. data/rbi/dodopayments/models/dunning_recovered_webhook_event.rbi +5 -0
  104. data/rbi/dodopayments/models/dunning_started_webhook_event.rbi +5 -0
  105. data/rbi/dodopayments/models/manual_retry.rbi +93 -0
  106. data/rbi/dodopayments/models/manual_retry_state.rbi +65 -0
  107. data/rbi/dodopayments/models/payment_retrieve_retry_state_params.rbi +38 -0
  108. data/rbi/dodopayments/models/payment_retry_params.rbi +38 -0
  109. data/rbi/dodopayments/models/price.rbi +124 -25
  110. data/rbi/dodopayments/models/subscription.rbi +10 -0
  111. data/rbi/dodopayments/models/subscription_active_webhook_event.rbi +53 -6
  112. data/rbi/dodopayments/models/subscription_cancelled_webhook_event.rbi +53 -6
  113. data/rbi/dodopayments/models/subscription_create_response.rbi +10 -0
  114. data/rbi/dodopayments/models/subscription_expired_webhook_event.rbi +53 -6
  115. data/rbi/dodopayments/models/subscription_failed_webhook_event.rbi +53 -6
  116. data/rbi/dodopayments/models/subscription_list_params.rbi +5 -0
  117. data/rbi/dodopayments/models/subscription_list_response.rbi +10 -0
  118. data/rbi/dodopayments/models/subscription_on_hold_webhook_event.rbi +53 -6
  119. data/rbi/dodopayments/models/subscription_past_due_webhook_event.rbi +114 -0
  120. data/rbi/dodopayments/models/subscription_paused_webhook_event.rbi +53 -6
  121. data/rbi/dodopayments/models/subscription_plan_changed_webhook_event.rbi +53 -6
  122. data/rbi/dodopayments/models/subscription_renewed_webhook_event.rbi +53 -6
  123. data/rbi/dodopayments/models/subscription_status.rbi +2 -0
  124. data/rbi/dodopayments/models/subscription_unpaused_webhook_event.rbi +53 -6
  125. data/rbi/dodopayments/models/subscription_update_params.rbi +5 -0
  126. data/rbi/dodopayments/models/subscription_update_payment_method_webhook_event.rbi +58 -6
  127. data/rbi/dodopayments/models/subscription_updated_webhook_event.rbi +53 -6
  128. data/rbi/dodopayments/models/unsafe_unwrap_webhook_event.rbi +1 -0
  129. data/rbi/dodopayments/models/unwrap_webhook_event.rbi +1 -0
  130. data/rbi/dodopayments/models/webhook_event_type.rbi +5 -0
  131. data/rbi/dodopayments/models/webhook_payload.rbi +37 -3
  132. data/rbi/dodopayments/models.rbi +14 -0
  133. data/rbi/dodopayments/resources/blocklist/customers/notes.rbi +50 -0
  134. data/rbi/dodopayments/resources/blocklist/customers.rbi +88 -0
  135. data/rbi/dodopayments/resources/blocklist.rbi +15 -0
  136. data/rbi/dodopayments/resources/credit_entitlements/balances.rbi +2 -1
  137. data/rbi/dodopayments/resources/customers/emails.rbi +60 -0
  138. data/rbi/dodopayments/resources/customers.rbi +3 -0
  139. data/rbi/dodopayments/resources/payments.rbi +26 -0
  140. data/rbi/dodopayments/resources/webhooks.rbi +2 -0
  141. data/sig/dodopayments/client.rbs +2 -0
  142. data/sig/dodopayments/models/balance_ledger_entry.rbs +9 -0
  143. data/sig/dodopayments/models/balance_retrieve_ledger_params.rbs +4 -0
  144. data/sig/dodopayments/models/blocklist/block_by_customer_id.rbs +15 -0
  145. data/sig/dodopayments/models/blocklist/block_by_email.rbs +15 -0
  146. data/sig/dodopayments/models/blocklist/block_identifier.rbs +15 -0
  147. data/sig/dodopayments/models/blocklist/blocked_customer.rbs +87 -0
  148. data/sig/dodopayments/models/blocklist/blocked_customer_source.rbs +20 -0
  149. data/sig/dodopayments/models/blocklist/create_blocked_customer_request.rbs +71 -0
  150. data/sig/dodopayments/models/blocklist/customer_create_params.rbs +17 -0
  151. data/sig/dodopayments/models/blocklist/customer_delete_params.rbs +25 -0
  152. data/sig/dodopayments/models/blocklist/customer_list_params.rbs +53 -0
  153. data/sig/dodopayments/models/blocklist/customer_retrieve_params.rbs +25 -0
  154. data/sig/dodopayments/models/blocklist/customers/blocked_customer_note.rbs +44 -0
  155. data/sig/dodopayments/models/blocklist/customers/note_create_params.rbs +30 -0
  156. data/sig/dodopayments/models/blocklist/customers/note_request.rbs +17 -0
  157. data/sig/dodopayments/models/blocklist/customers/note_update_params.rbs +36 -0
  158. data/sig/dodopayments/models/checkout_session_preview_response.rbs +5 -0
  159. data/sig/dodopayments/models/credit_entitlements/balance_create_ledger_entry_response.rbs +5 -0
  160. data/sig/dodopayments/models/customer.rbs +10 -0
  161. data/sig/dodopayments/models/customers/email_body.rbs +42 -0
  162. data/sig/dodopayments/models/customers/email_failure_code.rbs +30 -0
  163. data/sig/dodopayments/models/customers/email_list_params.rbs +38 -0
  164. data/sig/dodopayments/models/customers/email_log_item.rbs +82 -0
  165. data/sig/dodopayments/models/customers/email_log_status.rbs +20 -0
  166. data/sig/dodopayments/models/customers/email_policies.rbs +37 -0
  167. data/sig/dodopayments/models/customers/email_retrieve_body_params.rbs +30 -0
  168. data/sig/dodopayments/models/dunning_recovered_webhook_event.rbs +2 -1
  169. data/sig/dodopayments/models/dunning_started_webhook_event.rbs +2 -1
  170. data/sig/dodopayments/models/manual_retry.rbs +55 -0
  171. data/sig/dodopayments/models/manual_retry_state.rbs +40 -0
  172. data/sig/dodopayments/models/payment_retrieve_retry_state_params.rbs +23 -0
  173. data/sig/dodopayments/models/payment_retry_params.rbs +23 -0
  174. data/sig/dodopayments/models/price.rbs +52 -17
  175. data/sig/dodopayments/models/subscription.rbs +5 -0
  176. data/sig/dodopayments/models/subscription_active_webhook_event.rbs +16 -4
  177. data/sig/dodopayments/models/subscription_cancelled_webhook_event.rbs +16 -4
  178. data/sig/dodopayments/models/subscription_create_response.rbs +5 -0
  179. data/sig/dodopayments/models/subscription_expired_webhook_event.rbs +16 -4
  180. data/sig/dodopayments/models/subscription_failed_webhook_event.rbs +16 -4
  181. data/sig/dodopayments/models/subscription_list_params.rbs +2 -0
  182. data/sig/dodopayments/models/subscription_list_response.rbs +5 -0
  183. data/sig/dodopayments/models/subscription_on_hold_webhook_event.rbs +16 -4
  184. data/sig/dodopayments/models/subscription_past_due_webhook_event.rbs +47 -0
  185. data/sig/dodopayments/models/subscription_paused_webhook_event.rbs +16 -4
  186. data/sig/dodopayments/models/subscription_plan_changed_webhook_event.rbs +16 -4
  187. data/sig/dodopayments/models/subscription_renewed_webhook_event.rbs +16 -4
  188. data/sig/dodopayments/models/subscription_status.rbs +9 -1
  189. data/sig/dodopayments/models/subscription_unpaused_webhook_event.rbs +16 -4
  190. data/sig/dodopayments/models/subscription_update_params.rbs +2 -0
  191. data/sig/dodopayments/models/subscription_update_payment_method_webhook_event.rbs +16 -4
  192. data/sig/dodopayments/models/subscription_updated_webhook_event.rbs +16 -4
  193. data/sig/dodopayments/models/unsafe_unwrap_webhook_event.rbs +1 -0
  194. data/sig/dodopayments/models/unwrap_webhook_event.rbs +1 -0
  195. data/sig/dodopayments/models/webhook_event_type.rbs +2 -0
  196. data/sig/dodopayments/models/webhook_payload.rbs +16 -4
  197. data/sig/dodopayments/models.rbs +12 -0
  198. data/sig/dodopayments/resources/blocklist/customers/notes.rbs +24 -0
  199. data/sig/dodopayments/resources/blocklist/customers.rbs +36 -0
  200. data/sig/dodopayments/resources/blocklist.rbs +9 -0
  201. data/sig/dodopayments/resources/customers/emails.rbs +22 -0
  202. data/sig/dodopayments/resources/customers.rbs +2 -0
  203. data/sig/dodopayments/resources/payments.rbs +10 -0
  204. data/sig/dodopayments/resources/webhooks.rbs +2 -0
  205. metadata +92 -2
@@ -165,6 +165,32 @@ module Dodopayments
165
165
  )
166
166
  end
167
167
 
168
+ sig do
169
+ params(
170
+ payment_id: String,
171
+ request_options: Dodopayments::RequestOptions::OrHash
172
+ ).returns(Dodopayments::ManualRetryState)
173
+ end
174
+ def retrieve_retry_state(
175
+ # Id of the failed payment
176
+ payment_id,
177
+ request_options: {}
178
+ )
179
+ end
180
+
181
+ sig do
182
+ params(
183
+ payment_id: String,
184
+ request_options: Dodopayments::RequestOptions::OrHash
185
+ ).returns(Dodopayments::ManualRetry)
186
+ end
187
+ def retry_(
188
+ # Id of the failed payment
189
+ payment_id,
190
+ request_options: {}
191
+ )
192
+ end
193
+
168
194
  # @api private
169
195
  sig { params(client: Dodopayments::Client).returns(T.attached_class) }
170
196
  def self.new(client:)
@@ -185,6 +185,7 @@ module Dodopayments
185
185
  Dodopayments::SubscriptionExpiredWebhookEvent,
186
186
  Dodopayments::SubscriptionFailedWebhookEvent,
187
187
  Dodopayments::SubscriptionOnHoldWebhookEvent,
188
+ Dodopayments::SubscriptionPastDueWebhookEvent,
188
189
  Dodopayments::SubscriptionPausedWebhookEvent,
189
190
  Dodopayments::SubscriptionPlanChangedWebhookEvent,
190
191
  Dodopayments::SubscriptionRenewedWebhookEvent,
@@ -248,6 +249,7 @@ module Dodopayments
248
249
  Dodopayments::SubscriptionExpiredWebhookEvent,
249
250
  Dodopayments::SubscriptionFailedWebhookEvent,
250
251
  Dodopayments::SubscriptionOnHoldWebhookEvent,
252
+ Dodopayments::SubscriptionPastDueWebhookEvent,
251
253
  Dodopayments::SubscriptionPausedWebhookEvent,
252
254
  Dodopayments::SubscriptionPlanChangedWebhookEvent,
253
255
  Dodopayments::SubscriptionRenewedWebhookEvent,
@@ -33,6 +33,8 @@ module Dodopayments
33
33
 
34
34
  attr_reader customers: Dodopayments::Resources::Customers
35
35
 
36
+ attr_reader blocklist: Dodopayments::Resources::Blocklist
37
+
36
38
  attr_reader refunds: Dodopayments::Resources::Refunds
37
39
 
38
40
  attr_reader disputes: Dodopayments::Resources::Disputes
@@ -13,6 +13,7 @@ module Dodopayments
13
13
  after_balance: Integer?,
14
14
  before_balance: Integer?,
15
15
  description: String?,
16
+ payout_id: String?,
16
17
  reference_object_id: String?
17
18
  }
18
19
 
@@ -39,6 +40,8 @@ module Dodopayments
39
40
 
40
41
  attr_accessor description: String?
41
42
 
43
+ attr_accessor payout_id: String?
44
+
42
45
  attr_accessor reference_object_id: String?
43
46
 
44
47
  def initialize: (
@@ -53,6 +56,7 @@ module Dodopayments
53
56
  ?after_balance: Integer?,
54
57
  ?before_balance: Integer?,
55
58
  ?description: String?,
59
+ ?payout_id: String?,
56
60
  ?reference_object_id: String?
57
61
  ) -> void
58
62
 
@@ -68,6 +72,7 @@ module Dodopayments
68
72
  after_balance: Integer?,
69
73
  before_balance: Integer?,
70
74
  description: String?,
75
+ payout_id: String?,
71
76
  reference_object_id: String?
72
77
  }
73
78
 
@@ -94,6 +99,8 @@ module Dodopayments
94
99
  | :dunning_fees
95
100
  | :payment_retry_fee
96
101
  | :byop_fee
102
+ | :ethoca_fees
103
+ | :ethoca_fees_reversal
97
104
 
98
105
  module EventType
99
106
  extend Dodopayments::Internal::Type::Enum
@@ -120,6 +127,8 @@ module Dodopayments
120
127
  DUNNING_FEES: :dunning_fees
121
128
  PAYMENT_RETRY_FEE: :payment_retry_fee
122
129
  BYOP_FEE: :byop_fee
130
+ ETHOCA_FEES: :ethoca_fees
131
+ ETHOCA_FEES_REVERSAL: :ethoca_fees_reversal
123
132
 
124
133
  def self?.values: -> ::Array[Dodopayments::Models::BalanceLedgerEntry::event_type]
125
134
  end
@@ -399,6 +399,8 @@ module Dodopayments
399
399
  | :dunning_fees
400
400
  | :payment_retry_fee
401
401
  | :byop_fee
402
+ | :ethoca_fees
403
+ | :ethoca_fees_reversal
402
404
 
403
405
  module EventType
404
406
  extend Dodopayments::Internal::Type::Enum
@@ -425,6 +427,8 @@ module Dodopayments
425
427
  DUNNING_FEES: :dunning_fees
426
428
  PAYMENT_RETRY_FEE: :payment_retry_fee
427
429
  BYOP_FEE: :byop_fee
430
+ ETHOCA_FEES: :ethoca_fees
431
+ ETHOCA_FEES_REVERSAL: :ethoca_fees_reversal
428
432
 
429
433
  def self?.values: -> ::Array[Dodopayments::Models::BalanceRetrieveLedgerParams::event_type]
430
434
  end
@@ -0,0 +1,15 @@
1
+ module Dodopayments
2
+ module Models
3
+ module Blocklist
4
+ type block_by_customer_id = { customer_id: String }
5
+
6
+ class BlockByCustomerID < Dodopayments::Internal::Type::BaseModel
7
+ attr_accessor customer_id: String
8
+
9
+ def initialize: (customer_id: String) -> void
10
+
11
+ def to_hash: -> { customer_id: String }
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,15 @@
1
+ module Dodopayments
2
+ module Models
3
+ module Blocklist
4
+ type block_by_email = { email: String }
5
+
6
+ class BlockByEmail < Dodopayments::Internal::Type::BaseModel
7
+ attr_accessor email: String
8
+
9
+ def initialize: (email: String) -> void
10
+
11
+ def to_hash: -> { email: String }
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,15 @@
1
+ module Dodopayments
2
+ module Models
3
+ module Blocklist
4
+ type block_identifier =
5
+ Dodopayments::Blocklist::BlockByCustomerID
6
+ | Dodopayments::Blocklist::BlockByEmail
7
+
8
+ module BlockIdentifier
9
+ extend Dodopayments::Internal::Type::Union
10
+
11
+ def self?.variants: -> ::Array[Dodopayments::Models::Blocklist::block_identifier]
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,87 @@
1
+ module Dodopayments
2
+ module Models
3
+ module Blocklist
4
+ type blocked_customer =
5
+ {
6
+ id: String,
7
+ created_at: Time,
8
+ customer_email: String,
9
+ customer_id: String,
10
+ customer_name: String,
11
+ identifier: String,
12
+ source: Dodopayments::Models::Blocklist::blocked_customer_source,
13
+ blocked_by_email: String?,
14
+ cancelled_subscription_ids: ::Array[String]?,
15
+ notes: ::Array[Dodopayments::Blocklist::Customers::BlockedCustomerNote]?,
16
+ reason: String?,
17
+ remaining_subscription_ids: ::Array[String]?,
18
+ subscriptions_swept: bool?,
19
+ unblocked_at: Time?
20
+ }
21
+
22
+ class BlockedCustomer < Dodopayments::Internal::Type::BaseModel
23
+ attr_accessor id: String
24
+
25
+ attr_accessor created_at: Time
26
+
27
+ attr_accessor customer_email: String
28
+
29
+ attr_accessor customer_id: String
30
+
31
+ attr_accessor customer_name: String
32
+
33
+ attr_accessor identifier: String
34
+
35
+ attr_accessor source: Dodopayments::Models::Blocklist::blocked_customer_source
36
+
37
+ attr_accessor blocked_by_email: String?
38
+
39
+ attr_accessor cancelled_subscription_ids: ::Array[String]?
40
+
41
+ attr_accessor notes: ::Array[Dodopayments::Blocklist::Customers::BlockedCustomerNote]?
42
+
43
+ attr_accessor reason: String?
44
+
45
+ attr_accessor remaining_subscription_ids: ::Array[String]?
46
+
47
+ attr_accessor subscriptions_swept: bool?
48
+
49
+ attr_accessor unblocked_at: Time?
50
+
51
+ def initialize: (
52
+ id: String,
53
+ created_at: Time,
54
+ customer_email: String,
55
+ customer_id: String,
56
+ customer_name: String,
57
+ identifier: String,
58
+ source: Dodopayments::Models::Blocklist::blocked_customer_source,
59
+ ?blocked_by_email: String?,
60
+ ?cancelled_subscription_ids: ::Array[String]?,
61
+ ?notes: ::Array[Dodopayments::Blocklist::Customers::BlockedCustomerNote]?,
62
+ ?reason: String?,
63
+ ?remaining_subscription_ids: ::Array[String]?,
64
+ ?subscriptions_swept: bool?,
65
+ ?unblocked_at: Time?
66
+ ) -> void
67
+
68
+ def to_hash: -> {
69
+ id: String,
70
+ created_at: Time,
71
+ customer_email: String,
72
+ customer_id: String,
73
+ customer_name: String,
74
+ identifier: String,
75
+ source: Dodopayments::Models::Blocklist::blocked_customer_source,
76
+ blocked_by_email: String?,
77
+ cancelled_subscription_ids: ::Array[String]?,
78
+ notes: ::Array[Dodopayments::Blocklist::Customers::BlockedCustomerNote]?,
79
+ reason: String?,
80
+ remaining_subscription_ids: ::Array[String]?,
81
+ subscriptions_swept: bool?,
82
+ unblocked_at: Time?
83
+ }
84
+ end
85
+ end
86
+ end
87
+ end
@@ -0,0 +1,20 @@
1
+ module Dodopayments
2
+ module Models
3
+ module Blocklist
4
+ type blocked_customer_source =
5
+ :blocklist_page | :customer_page | :payment_page | :dispute_page | :api
6
+
7
+ module BlockedCustomerSource
8
+ extend Dodopayments::Internal::Type::Enum
9
+
10
+ BLOCKLIST_PAGE: :blocklist_page
11
+ CUSTOMER_PAGE: :customer_page
12
+ PAYMENT_PAGE: :payment_page
13
+ DISPUTE_PAGE: :dispute_page
14
+ API: :api
15
+
16
+ def self?.values: -> ::Array[Dodopayments::Models::Blocklist::blocked_customer_source]
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,71 @@
1
+ module Dodopayments
2
+ module Models
3
+ module Blocklist
4
+ type create_blocked_customer_request =
5
+ Dodopayments::Blocklist::CreateBlockedCustomerRequest::BlocklistCustomersBlockByCustomerID
6
+ | Dodopayments::Blocklist::CreateBlockedCustomerRequest::BlocklistCustomersBlockByEmail
7
+
8
+ module CreateBlockedCustomerRequest
9
+ extend Dodopayments::Internal::Type::Union
10
+
11
+ type blocklist_customers_block_by_customer_id =
12
+ {
13
+ reason: String?,
14
+ source: Dodopayments::Models::Blocklist::blocked_customer_source?
15
+ }
16
+
17
+ class BlocklistCustomersBlockByCustomerID < Dodopayments::Models::Blocklist::BlockByCustomerID
18
+ def reason: -> String?
19
+
20
+ def reason=: (String? _) -> String?
21
+
22
+ def source: -> Dodopayments::Models::Blocklist::blocked_customer_source?
23
+
24
+ def source=: (
25
+ Dodopayments::Models::Blocklist::blocked_customer_source? _
26
+ ) -> Dodopayments::Models::Blocklist::blocked_customer_source?
27
+
28
+ def initialize: (
29
+ ?reason: String?,
30
+ ?source: Dodopayments::Models::Blocklist::blocked_customer_source?
31
+ ) -> void
32
+
33
+ def to_hash: -> {
34
+ reason: String?,
35
+ source: Dodopayments::Models::Blocklist::blocked_customer_source?
36
+ }
37
+ end
38
+
39
+ type blocklist_customers_block_by_email =
40
+ {
41
+ reason: String?,
42
+ source: Dodopayments::Models::Blocklist::blocked_customer_source?
43
+ }
44
+
45
+ class BlocklistCustomersBlockByEmail < Dodopayments::Models::Blocklist::BlockByEmail
46
+ def reason: -> String?
47
+
48
+ def reason=: (String? _) -> String?
49
+
50
+ def source: -> Dodopayments::Models::Blocklist::blocked_customer_source?
51
+
52
+ def source=: (
53
+ Dodopayments::Models::Blocklist::blocked_customer_source? _
54
+ ) -> Dodopayments::Models::Blocklist::blocked_customer_source?
55
+
56
+ def initialize: (
57
+ ?reason: String?,
58
+ ?source: Dodopayments::Models::Blocklist::blocked_customer_source?
59
+ ) -> void
60
+
61
+ def to_hash: -> {
62
+ reason: String?,
63
+ source: Dodopayments::Models::Blocklist::blocked_customer_source?
64
+ }
65
+ end
66
+
67
+ def self?.variants: -> ::Array[Dodopayments::Models::Blocklist::create_blocked_customer_request]
68
+ end
69
+ end
70
+ end
71
+ end
@@ -0,0 +1,17 @@
1
+ module Dodopayments
2
+ module Models
3
+ module Blocklist
4
+ type customer_create_params =
5
+ { } & Dodopayments::Internal::Type::request_parameters
6
+
7
+ class CustomerCreateParams < Dodopayments::Internal::Type::BaseModel
8
+ extend Dodopayments::Internal::Type::RequestParameters::Converter
9
+ include Dodopayments::Internal::Type::RequestParameters
10
+
11
+ def initialize: (?request_options: Dodopayments::request_opts) -> void
12
+
13
+ def to_hash: -> { request_options: Dodopayments::RequestOptions }
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,25 @@
1
+ module Dodopayments
2
+ module Models
3
+ module Blocklist
4
+ type customer_delete_params =
5
+ { entry_id: String } & Dodopayments::Internal::Type::request_parameters
6
+
7
+ class CustomerDeleteParams < Dodopayments::Internal::Type::BaseModel
8
+ extend Dodopayments::Internal::Type::RequestParameters::Converter
9
+ include Dodopayments::Internal::Type::RequestParameters
10
+
11
+ attr_accessor entry_id: String
12
+
13
+ def initialize: (
14
+ entry_id: String,
15
+ ?request_options: Dodopayments::request_opts
16
+ ) -> void
17
+
18
+ def to_hash: -> {
19
+ entry_id: String,
20
+ request_options: Dodopayments::RequestOptions
21
+ }
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,53 @@
1
+ module Dodopayments
2
+ module Models
3
+ module Blocklist
4
+ type customer_list_params =
5
+ {
6
+ blocked_by_email: String?,
7
+ created_at_gte: Time?,
8
+ created_at_lte: Time?,
9
+ identifier: String?,
10
+ page_number: Integer?,
11
+ page_size: Integer?
12
+ }
13
+ & Dodopayments::Internal::Type::request_parameters
14
+
15
+ class CustomerListParams < Dodopayments::Internal::Type::BaseModel
16
+ extend Dodopayments::Internal::Type::RequestParameters::Converter
17
+ include Dodopayments::Internal::Type::RequestParameters
18
+
19
+ attr_accessor blocked_by_email: String?
20
+
21
+ attr_accessor created_at_gte: Time?
22
+
23
+ attr_accessor created_at_lte: Time?
24
+
25
+ attr_accessor identifier: String?
26
+
27
+ attr_accessor page_number: Integer?
28
+
29
+ attr_accessor page_size: Integer?
30
+
31
+ def initialize: (
32
+ ?blocked_by_email: String?,
33
+ ?created_at_gte: Time?,
34
+ ?created_at_lte: Time?,
35
+ ?identifier: String?,
36
+ ?page_number: Integer?,
37
+ ?page_size: Integer?,
38
+ ?request_options: Dodopayments::request_opts
39
+ ) -> void
40
+
41
+ def to_hash: -> {
42
+ blocked_by_email: String?,
43
+ created_at_gte: Time?,
44
+ created_at_lte: Time?,
45
+ identifier: String?,
46
+ page_number: Integer?,
47
+ page_size: Integer?,
48
+ request_options: Dodopayments::RequestOptions
49
+ }
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,25 @@
1
+ module Dodopayments
2
+ module Models
3
+ module Blocklist
4
+ type customer_retrieve_params =
5
+ { entry_id: String } & Dodopayments::Internal::Type::request_parameters
6
+
7
+ class CustomerRetrieveParams < Dodopayments::Internal::Type::BaseModel
8
+ extend Dodopayments::Internal::Type::RequestParameters::Converter
9
+ include Dodopayments::Internal::Type::RequestParameters
10
+
11
+ attr_accessor entry_id: String
12
+
13
+ def initialize: (
14
+ entry_id: String,
15
+ ?request_options: Dodopayments::request_opts
16
+ ) -> void
17
+
18
+ def to_hash: -> {
19
+ entry_id: String,
20
+ request_options: Dodopayments::RequestOptions
21
+ }
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,44 @@
1
+ module Dodopayments
2
+ module Models
3
+ module Blocklist
4
+ module Customers
5
+ type blocked_customer_note =
6
+ {
7
+ id: String,
8
+ created_at: Time,
9
+ note: String,
10
+ author_email: String?,
11
+ updated_at: Time?
12
+ }
13
+
14
+ class BlockedCustomerNote < Dodopayments::Internal::Type::BaseModel
15
+ attr_accessor id: String
16
+
17
+ attr_accessor created_at: Time
18
+
19
+ attr_accessor note: String
20
+
21
+ attr_accessor author_email: String?
22
+
23
+ attr_accessor updated_at: Time?
24
+
25
+ def initialize: (
26
+ id: String,
27
+ created_at: Time,
28
+ note: String,
29
+ ?author_email: String?,
30
+ ?updated_at: Time?
31
+ ) -> void
32
+
33
+ def to_hash: -> {
34
+ id: String,
35
+ created_at: Time,
36
+ note: String,
37
+ author_email: String?,
38
+ updated_at: Time?
39
+ }
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,30 @@
1
+ module Dodopayments
2
+ module Models
3
+ module Blocklist
4
+ module Customers
5
+ type note_create_params =
6
+ { entry_id: String }
7
+ & Dodopayments::Internal::Type::request_parameters
8
+
9
+ class NoteCreateParams < Dodopayments::Models::Blocklist::Customers::NoteRequest
10
+ extend Dodopayments::Internal::Type::RequestParameters::Converter
11
+ include Dodopayments::Internal::Type::RequestParameters
12
+
13
+ def entry_id: -> String
14
+
15
+ def entry_id=: (String _) -> String
16
+
17
+ def initialize: (
18
+ entry_id: String,
19
+ ?request_options: Dodopayments::request_opts
20
+ ) -> void
21
+
22
+ def to_hash: -> {
23
+ entry_id: String,
24
+ request_options: Dodopayments::RequestOptions
25
+ }
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,17 @@
1
+ module Dodopayments
2
+ module Models
3
+ module Blocklist
4
+ module Customers
5
+ type note_request = { note: String }
6
+
7
+ class NoteRequest < Dodopayments::Internal::Type::BaseModel
8
+ attr_accessor note: String
9
+
10
+ def initialize: (note: String) -> void
11
+
12
+ def to_hash: -> { note: String }
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,36 @@
1
+ module Dodopayments
2
+ module Models
3
+ module Blocklist
4
+ module Customers
5
+ type note_update_params =
6
+ { entry_id: String, note_id: String }
7
+ & Dodopayments::Internal::Type::request_parameters
8
+
9
+ class NoteUpdateParams < Dodopayments::Models::Blocklist::Customers::NoteRequest
10
+ extend Dodopayments::Internal::Type::RequestParameters::Converter
11
+ include Dodopayments::Internal::Type::RequestParameters
12
+
13
+ def entry_id: -> String
14
+
15
+ def entry_id=: (String _) -> String
16
+
17
+ def note_id: -> String
18
+
19
+ def note_id=: (String _) -> String
20
+
21
+ def initialize: (
22
+ entry_id: String,
23
+ note_id: String,
24
+ ?request_options: Dodopayments::request_opts
25
+ ) -> void
26
+
27
+ def to_hash: -> {
28
+ entry_id: String,
29
+ note_id: String,
30
+ request_options: Dodopayments::RequestOptions
31
+ }
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -6,6 +6,7 @@ module Dodopayments
6
6
  currency: Dodopayments::Models::currency,
7
7
  current_breakup: Dodopayments::Models::CheckoutSessionPreviewResponse::CurrentBreakup,
8
8
  is_byop: bool,
9
+ payment_method_required: bool,
9
10
  product_cart: ::Array[Dodopayments::Models::CheckoutSessionPreviewResponse::ProductCart],
10
11
  total_price: Integer,
11
12
  next_billing_date: Time?,
@@ -27,6 +28,8 @@ module Dodopayments
27
28
 
28
29
  attr_accessor is_byop: bool
29
30
 
31
+ attr_accessor payment_method_required: bool
32
+
30
33
  attr_accessor product_cart: ::Array[Dodopayments::Models::CheckoutSessionPreviewResponse::ProductCart]
31
34
 
32
35
  attr_accessor total_price: Integer
@@ -52,6 +55,7 @@ module Dodopayments
52
55
  currency: Dodopayments::Models::currency,
53
56
  current_breakup: Dodopayments::Models::CheckoutSessionPreviewResponse::CurrentBreakup,
54
57
  is_byop: bool,
58
+ payment_method_required: bool,
55
59
  product_cart: ::Array[Dodopayments::Models::CheckoutSessionPreviewResponse::ProductCart],
56
60
  total_price: Integer,
57
61
  ?next_billing_date: Time?,
@@ -69,6 +73,7 @@ module Dodopayments
69
73
  currency: Dodopayments::Models::currency,
70
74
  current_breakup: Dodopayments::Models::CheckoutSessionPreviewResponse::CurrentBreakup,
71
75
  is_byop: bool,
76
+ payment_method_required: bool,
72
77
  product_cart: ::Array[Dodopayments::Models::CheckoutSessionPreviewResponse::ProductCart],
73
78
  total_price: Integer,
74
79
  next_billing_date: Time?,
@@ -12,6 +12,7 @@ module Dodopayments
12
12
  customer_id: String,
13
13
  entry_type: Dodopayments::Models::CreditEntitlements::ledger_entry_type,
14
14
  is_credit: bool,
15
+ metadata: Dodopayments::Models::metadata,
15
16
  overage_after: String,
16
17
  overage_before: String,
17
18
  grant_id: String?,
@@ -37,6 +38,8 @@ module Dodopayments
37
38
 
38
39
  attr_accessor is_credit: bool
39
40
 
41
+ attr_accessor metadata: Dodopayments::Models::metadata
42
+
40
43
  attr_accessor overage_after: String
41
44
 
42
45
  attr_accessor overage_before: String
@@ -55,6 +58,7 @@ module Dodopayments
55
58
  customer_id: String,
56
59
  entry_type: Dodopayments::Models::CreditEntitlements::ledger_entry_type,
57
60
  is_credit: bool,
61
+ metadata: Dodopayments::Models::metadata,
58
62
  overage_after: String,
59
63
  overage_before: String,
60
64
  ?grant_id: String?,
@@ -71,6 +75,7 @@ module Dodopayments
71
75
  customer_id: String,
72
76
  entry_type: Dodopayments::Models::CreditEntitlements::ledger_entry_type,
73
77
  is_credit: bool,
78
+ metadata: Dodopayments::Models::metadata,
74
79
  overage_after: String,
75
80
  overage_before: String,
76
81
  grant_id: String?,