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
@@ -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],
@@ -3,7 +3,7 @@ module Dodopayments
3
3
  type subscription_active_webhook_event =
4
4
  {
5
5
  business_id: String,
6
- data: Dodopayments::Subscription,
6
+ data: Dodopayments::SubscriptionActiveWebhookEvent::Data,
7
7
  timestamp: Time,
8
8
  type: :"subscription.active"
9
9
  }
@@ -11,7 +11,7 @@ module Dodopayments
11
11
  class SubscriptionActiveWebhookEvent < Dodopayments::Internal::Type::BaseModel
12
12
  attr_accessor business_id: String
13
13
 
14
- attr_accessor data: Dodopayments::Subscription
14
+ attr_accessor data: Dodopayments::SubscriptionActiveWebhookEvent::Data
15
15
 
16
16
  attr_accessor timestamp: Time
17
17
 
@@ -19,17 +19,29 @@ module Dodopayments
19
19
 
20
20
  def initialize: (
21
21
  business_id: String,
22
- data: Dodopayments::Subscription,
22
+ data: Dodopayments::SubscriptionActiveWebhookEvent::Data,
23
23
  timestamp: Time,
24
24
  ?type: :"subscription.active"
25
25
  ) -> void
26
26
 
27
27
  def to_hash: -> {
28
28
  business_id: String,
29
- data: Dodopayments::Subscription,
29
+ data: Dodopayments::SubscriptionActiveWebhookEvent::Data,
30
30
  timestamp: Time,
31
31
  type: :"subscription.active"
32
32
  }
33
+
34
+ type data = { past_due_ends_at: Time? }
35
+
36
+ class Data < Dodopayments::Models::Subscription
37
+ def past_due_ends_at: -> Time?
38
+
39
+ def past_due_ends_at=: (Time? _) -> Time?
40
+
41
+ def initialize: (?past_due_ends_at: Time?) -> void
42
+
43
+ def to_hash: -> { past_due_ends_at: Time? }
44
+ end
33
45
  end
34
46
  end
35
47
  end
@@ -3,7 +3,7 @@ module Dodopayments
3
3
  type subscription_cancelled_webhook_event =
4
4
  {
5
5
  business_id: String,
6
- data: Dodopayments::Subscription,
6
+ data: Dodopayments::SubscriptionCancelledWebhookEvent::Data,
7
7
  timestamp: Time,
8
8
  type: :"subscription.cancelled"
9
9
  }
@@ -11,7 +11,7 @@ module Dodopayments
11
11
  class SubscriptionCancelledWebhookEvent < Dodopayments::Internal::Type::BaseModel
12
12
  attr_accessor business_id: String
13
13
 
14
- attr_accessor data: Dodopayments::Subscription
14
+ attr_accessor data: Dodopayments::SubscriptionCancelledWebhookEvent::Data
15
15
 
16
16
  attr_accessor timestamp: Time
17
17
 
@@ -19,17 +19,29 @@ module Dodopayments
19
19
 
20
20
  def initialize: (
21
21
  business_id: String,
22
- data: Dodopayments::Subscription,
22
+ data: Dodopayments::SubscriptionCancelledWebhookEvent::Data,
23
23
  timestamp: Time,
24
24
  ?type: :"subscription.cancelled"
25
25
  ) -> void
26
26
 
27
27
  def to_hash: -> {
28
28
  business_id: String,
29
- data: Dodopayments::Subscription,
29
+ data: Dodopayments::SubscriptionCancelledWebhookEvent::Data,
30
30
  timestamp: Time,
31
31
  type: :"subscription.cancelled"
32
32
  }
33
+
34
+ type data = { past_due_ends_at: Time? }
35
+
36
+ class Data < Dodopayments::Models::Subscription
37
+ def past_due_ends_at: -> Time?
38
+
39
+ def past_due_ends_at=: (Time? _) -> Time?
40
+
41
+ def initialize: (?past_due_ends_at: Time?) -> void
42
+
43
+ def to_hash: -> { past_due_ends_at: Time? }
44
+ end
33
45
  end
34
46
  end
35
47
  end
@@ -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?,
@@ -3,7 +3,7 @@ module Dodopayments
3
3
  type subscription_expired_webhook_event =
4
4
  {
5
5
  business_id: String,
6
- data: Dodopayments::Subscription,
6
+ data: Dodopayments::SubscriptionExpiredWebhookEvent::Data,
7
7
  timestamp: Time,
8
8
  type: :"subscription.expired"
9
9
  }
@@ -11,7 +11,7 @@ module Dodopayments
11
11
  class SubscriptionExpiredWebhookEvent < Dodopayments::Internal::Type::BaseModel
12
12
  attr_accessor business_id: String
13
13
 
14
- attr_accessor data: Dodopayments::Subscription
14
+ attr_accessor data: Dodopayments::SubscriptionExpiredWebhookEvent::Data
15
15
 
16
16
  attr_accessor timestamp: Time
17
17
 
@@ -19,17 +19,29 @@ module Dodopayments
19
19
 
20
20
  def initialize: (
21
21
  business_id: String,
22
- data: Dodopayments::Subscription,
22
+ data: Dodopayments::SubscriptionExpiredWebhookEvent::Data,
23
23
  timestamp: Time,
24
24
  ?type: :"subscription.expired"
25
25
  ) -> void
26
26
 
27
27
  def to_hash: -> {
28
28
  business_id: String,
29
- data: Dodopayments::Subscription,
29
+ data: Dodopayments::SubscriptionExpiredWebhookEvent::Data,
30
30
  timestamp: Time,
31
31
  type: :"subscription.expired"
32
32
  }
33
+
34
+ type data = { past_due_ends_at: Time? }
35
+
36
+ class Data < Dodopayments::Models::Subscription
37
+ def past_due_ends_at: -> Time?
38
+
39
+ def past_due_ends_at=: (Time? _) -> Time?
40
+
41
+ def initialize: (?past_due_ends_at: Time?) -> void
42
+
43
+ def to_hash: -> { past_due_ends_at: Time? }
44
+ end
33
45
  end
34
46
  end
35
47
  end
@@ -3,7 +3,7 @@ module Dodopayments
3
3
  type subscription_failed_webhook_event =
4
4
  {
5
5
  business_id: String,
6
- data: Dodopayments::Subscription,
6
+ data: Dodopayments::SubscriptionFailedWebhookEvent::Data,
7
7
  timestamp: Time,
8
8
  type: :"subscription.failed"
9
9
  }
@@ -11,7 +11,7 @@ module Dodopayments
11
11
  class SubscriptionFailedWebhookEvent < Dodopayments::Internal::Type::BaseModel
12
12
  attr_accessor business_id: String
13
13
 
14
- attr_accessor data: Dodopayments::Subscription
14
+ attr_accessor data: Dodopayments::SubscriptionFailedWebhookEvent::Data
15
15
 
16
16
  attr_accessor timestamp: Time
17
17
 
@@ -19,17 +19,29 @@ module Dodopayments
19
19
 
20
20
  def initialize: (
21
21
  business_id: String,
22
- data: Dodopayments::Subscription,
22
+ data: Dodopayments::SubscriptionFailedWebhookEvent::Data,
23
23
  timestamp: Time,
24
24
  ?type: :"subscription.failed"
25
25
  ) -> void
26
26
 
27
27
  def to_hash: -> {
28
28
  business_id: String,
29
- data: Dodopayments::Subscription,
29
+ data: Dodopayments::SubscriptionFailedWebhookEvent::Data,
30
30
  timestamp: Time,
31
31
  type: :"subscription.failed"
32
32
  }
33
+
34
+ type data = { past_due_ends_at: Time? }
35
+
36
+ class Data < Dodopayments::Models::Subscription
37
+ def past_due_ends_at: -> Time?
38
+
39
+ def past_due_ends_at=: (Time? _) -> Time?
40
+
41
+ def initialize: (?past_due_ends_at: Time?) -> void
42
+
43
+ def to_hash: -> { past_due_ends_at: Time? }
44
+ end
33
45
  end
34
46
  end
35
47
  end
@@ -90,6 +90,7 @@ module Dodopayments
90
90
  | :cancelled
91
91
  | :failed
92
92
  | :expired
93
+ | :past_due
93
94
 
94
95
  module Status
95
96
  extend Dodopayments::Internal::Type::Enum
@@ -101,6 +102,7 @@ module Dodopayments
101
102
  CANCELLED: :cancelled
102
103
  FAILED: :failed
103
104
  EXPIRED: :expired
105
+ PAST_DUE: :past_due
104
106
 
105
107
  def self?.values: -> ::Array[Dodopayments::Models::SubscriptionListParams::status]
106
108
  end
@@ -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,
@@ -3,7 +3,7 @@ module Dodopayments
3
3
  type subscription_on_hold_webhook_event =
4
4
  {
5
5
  business_id: String,
6
- data: Dodopayments::Subscription,
6
+ data: Dodopayments::SubscriptionOnHoldWebhookEvent::Data,
7
7
  timestamp: Time,
8
8
  type: :"subscription.on_hold"
9
9
  }
@@ -11,7 +11,7 @@ module Dodopayments
11
11
  class SubscriptionOnHoldWebhookEvent < Dodopayments::Internal::Type::BaseModel
12
12
  attr_accessor business_id: String
13
13
 
14
- attr_accessor data: Dodopayments::Subscription
14
+ attr_accessor data: Dodopayments::SubscriptionOnHoldWebhookEvent::Data
15
15
 
16
16
  attr_accessor timestamp: Time
17
17
 
@@ -19,17 +19,29 @@ module Dodopayments
19
19
 
20
20
  def initialize: (
21
21
  business_id: String,
22
- data: Dodopayments::Subscription,
22
+ data: Dodopayments::SubscriptionOnHoldWebhookEvent::Data,
23
23
  timestamp: Time,
24
24
  ?type: :"subscription.on_hold"
25
25
  ) -> void
26
26
 
27
27
  def to_hash: -> {
28
28
  business_id: String,
29
- data: Dodopayments::Subscription,
29
+ data: Dodopayments::SubscriptionOnHoldWebhookEvent::Data,
30
30
  timestamp: Time,
31
31
  type: :"subscription.on_hold"
32
32
  }
33
+
34
+ type data = { past_due_ends_at: Time? }
35
+
36
+ class Data < Dodopayments::Models::Subscription
37
+ def past_due_ends_at: -> Time?
38
+
39
+ def past_due_ends_at=: (Time? _) -> Time?
40
+
41
+ def initialize: (?past_due_ends_at: Time?) -> void
42
+
43
+ def to_hash: -> { past_due_ends_at: Time? }
44
+ end
33
45
  end
34
46
  end
35
47
  end
@@ -0,0 +1,47 @@
1
+ module Dodopayments
2
+ module Models
3
+ type subscription_past_due_webhook_event =
4
+ {
5
+ business_id: String,
6
+ data: Dodopayments::SubscriptionPastDueWebhookEvent::Data,
7
+ timestamp: Time,
8
+ type: :"subscription.past_due"
9
+ }
10
+
11
+ class SubscriptionPastDueWebhookEvent < Dodopayments::Internal::Type::BaseModel
12
+ attr_accessor business_id: String
13
+
14
+ attr_accessor data: Dodopayments::SubscriptionPastDueWebhookEvent::Data
15
+
16
+ attr_accessor timestamp: Time
17
+
18
+ attr_accessor type: :"subscription.past_due"
19
+
20
+ def initialize: (
21
+ business_id: String,
22
+ data: Dodopayments::SubscriptionPastDueWebhookEvent::Data,
23
+ timestamp: Time,
24
+ ?type: :"subscription.past_due"
25
+ ) -> void
26
+
27
+ def to_hash: -> {
28
+ business_id: String,
29
+ data: Dodopayments::SubscriptionPastDueWebhookEvent::Data,
30
+ timestamp: Time,
31
+ type: :"subscription.past_due"
32
+ }
33
+
34
+ type data = { past_due_ends_at: Time? }
35
+
36
+ class Data < Dodopayments::Models::Subscription
37
+ def past_due_ends_at: -> Time?
38
+
39
+ def past_due_ends_at=: (Time? _) -> Time?
40
+
41
+ def initialize: (?past_due_ends_at: Time?) -> void
42
+
43
+ def to_hash: -> { past_due_ends_at: Time? }
44
+ end
45
+ end
46
+ end
47
+ end
@@ -3,7 +3,7 @@ module Dodopayments
3
3
  type subscription_paused_webhook_event =
4
4
  {
5
5
  business_id: String,
6
- data: Dodopayments::Subscription,
6
+ data: Dodopayments::SubscriptionPausedWebhookEvent::Data,
7
7
  timestamp: Time,
8
8
  type: :"subscription.paused"
9
9
  }
@@ -11,7 +11,7 @@ module Dodopayments
11
11
  class SubscriptionPausedWebhookEvent < Dodopayments::Internal::Type::BaseModel
12
12
  attr_accessor business_id: String
13
13
 
14
- attr_accessor data: Dodopayments::Subscription
14
+ attr_accessor data: Dodopayments::SubscriptionPausedWebhookEvent::Data
15
15
 
16
16
  attr_accessor timestamp: Time
17
17
 
@@ -19,17 +19,29 @@ module Dodopayments
19
19
 
20
20
  def initialize: (
21
21
  business_id: String,
22
- data: Dodopayments::Subscription,
22
+ data: Dodopayments::SubscriptionPausedWebhookEvent::Data,
23
23
  timestamp: Time,
24
24
  ?type: :"subscription.paused"
25
25
  ) -> void
26
26
 
27
27
  def to_hash: -> {
28
28
  business_id: String,
29
- data: Dodopayments::Subscription,
29
+ data: Dodopayments::SubscriptionPausedWebhookEvent::Data,
30
30
  timestamp: Time,
31
31
  type: :"subscription.paused"
32
32
  }
33
+
34
+ type data = { past_due_ends_at: Time? }
35
+
36
+ class Data < Dodopayments::Models::Subscription
37
+ def past_due_ends_at: -> Time?
38
+
39
+ def past_due_ends_at=: (Time? _) -> Time?
40
+
41
+ def initialize: (?past_due_ends_at: Time?) -> void
42
+
43
+ def to_hash: -> { past_due_ends_at: Time? }
44
+ end
33
45
  end
34
46
  end
35
47
  end