dodopayments 2.9.1 → 2.10.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 (184) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +15 -0
  3. data/README.md +1 -1
  4. data/lib/dodopayments/internal/transport/base_client.rb +2 -0
  5. data/lib/dodopayments/internal/type/union.rb +21 -7
  6. data/lib/dodopayments/models/abandoned_checkout_detected_webhook_event.rb +4 -16
  7. data/lib/dodopayments/models/abandoned_checkout_recovered_webhook_event.rb +4 -16
  8. data/lib/dodopayments/models/checkout_session_request.rb +15 -2
  9. data/lib/dodopayments/models/credit_added_webhook_event.rb +4 -16
  10. data/lib/dodopayments/models/credit_balance_low_webhook_event.rb +4 -16
  11. data/lib/dodopayments/models/credit_deducted_webhook_event.rb +4 -16
  12. data/lib/dodopayments/models/credit_expired_webhook_event.rb +4 -16
  13. data/lib/dodopayments/models/credit_manual_adjustment_webhook_event.rb +4 -16
  14. data/lib/dodopayments/models/credit_overage_charged_webhook_event.rb +4 -16
  15. data/lib/dodopayments/models/credit_overage_reset_webhook_event.rb +4 -16
  16. data/lib/dodopayments/models/credit_rolled_over_webhook_event.rb +4 -16
  17. data/lib/dodopayments/models/credit_rollover_forfeited_webhook_event.rb +4 -16
  18. data/lib/dodopayments/models/dispute_accepted_webhook_event.rb +4 -16
  19. data/lib/dodopayments/models/dispute_cancelled_webhook_event.rb +4 -16
  20. data/lib/dodopayments/models/dispute_challenged_webhook_event.rb +4 -16
  21. data/lib/dodopayments/models/dispute_expired_webhook_event.rb +4 -16
  22. data/lib/dodopayments/models/dispute_lost_webhook_event.rb +4 -16
  23. data/lib/dodopayments/models/dispute_opened_webhook_event.rb +4 -16
  24. data/lib/dodopayments/models/dispute_won_webhook_event.rb +4 -16
  25. data/lib/dodopayments/models/dunning_recovered_webhook_event.rb +4 -16
  26. data/lib/dodopayments/models/dunning_started_webhook_event.rb +4 -16
  27. data/lib/dodopayments/models/entitlement_grant_created_webhook_event.rb +4 -16
  28. data/lib/dodopayments/models/entitlement_grant_delivered_webhook_event.rb +4 -16
  29. data/lib/dodopayments/models/entitlement_grant_failed_webhook_event.rb +4 -16
  30. data/lib/dodopayments/models/entitlement_grant_revoked_webhook_event.rb +4 -16
  31. data/lib/dodopayments/models/license_key_created_webhook_event.rb +4 -16
  32. data/lib/dodopayments/models/payment.rb +153 -3
  33. data/lib/dodopayments/models/payment_cancelled_webhook_event.rb +4 -16
  34. data/lib/dodopayments/models/payment_create_params.rb +15 -3
  35. data/lib/dodopayments/models/payment_create_response.rb +14 -3
  36. data/lib/dodopayments/models/payment_failed_webhook_event.rb +4 -16
  37. data/lib/dodopayments/models/payment_processing_webhook_event.rb +4 -16
  38. data/lib/dodopayments/models/payment_succeeded_webhook_event.rb +4 -16
  39. data/lib/dodopayments/models/payout_list_response.rb +6 -3
  40. data/lib/dodopayments/models/price.rb +20 -48
  41. data/lib/dodopayments/models/product.rb +3 -3
  42. data/lib/dodopayments/models/product_create_params.rb +3 -3
  43. data/lib/dodopayments/models/product_item_req.rb +42 -1
  44. data/lib/dodopayments/models/product_update_params.rb +3 -3
  45. data/lib/dodopayments/models/refund_failed_webhook_event.rb +4 -16
  46. data/lib/dodopayments/models/refund_succeeded_webhook_event.rb +4 -16
  47. data/lib/dodopayments/models/subscription.rb +153 -5
  48. data/lib/dodopayments/models/subscription_active_webhook_event.rb +4 -16
  49. data/lib/dodopayments/models/subscription_cancelled_webhook_event.rb +4 -16
  50. data/lib/dodopayments/models/subscription_create_params.rb +15 -3
  51. data/lib/dodopayments/models/subscription_create_response.rb +14 -3
  52. data/lib/dodopayments/models/subscription_expired_webhook_event.rb +4 -16
  53. data/lib/dodopayments/models/subscription_failed_webhook_event.rb +4 -16
  54. data/lib/dodopayments/models/subscription_list_response.rb +36 -5
  55. data/lib/dodopayments/models/subscription_on_hold_webhook_event.rb +4 -16
  56. data/lib/dodopayments/models/subscription_plan_changed_webhook_event.rb +4 -16
  57. data/lib/dodopayments/models/subscription_preview_change_plan_response.rb +21 -49
  58. data/lib/dodopayments/models/subscription_renewed_webhook_event.rb +4 -16
  59. data/lib/dodopayments/models/subscription_update_payment_method_params.rb +12 -30
  60. data/lib/dodopayments/models/subscription_updated_webhook_event.rb +4 -16
  61. data/lib/dodopayments/models/unsafe_unwrap_webhook_event.rb +41 -39
  62. data/lib/dodopayments/models/unwrap_webhook_event.rb +41 -39
  63. data/lib/dodopayments/models/update_subscription_plan_req.rb +17 -6
  64. data/lib/dodopayments/models/webhook_event_type.rb +3 -0
  65. data/lib/dodopayments/models/webhook_payload.rb +52 -143
  66. data/lib/dodopayments/resources/checkout_sessions.rb +8 -4
  67. data/lib/dodopayments/resources/payments.rb +4 -2
  68. data/lib/dodopayments/resources/subscriptions.rb +12 -6
  69. data/lib/dodopayments/version.rb +1 -1
  70. data/rbi/dodopayments/models/abandoned_checkout_detected_webhook_event.rbi +4 -40
  71. data/rbi/dodopayments/models/abandoned_checkout_recovered_webhook_event.rbi +4 -40
  72. data/rbi/dodopayments/models/checkout_session_request.rbi +14 -0
  73. data/rbi/dodopayments/models/credit_added_webhook_event.rbi +4 -29
  74. data/rbi/dodopayments/models/credit_balance_low_webhook_event.rbi +4 -33
  75. data/rbi/dodopayments/models/credit_deducted_webhook_event.rbi +4 -33
  76. data/rbi/dodopayments/models/credit_expired_webhook_event.rbi +4 -33
  77. data/rbi/dodopayments/models/credit_manual_adjustment_webhook_event.rbi +4 -39
  78. data/rbi/dodopayments/models/credit_overage_charged_webhook_event.rbi +4 -36
  79. data/rbi/dodopayments/models/credit_overage_reset_webhook_event.rbi +4 -36
  80. data/rbi/dodopayments/models/credit_rolled_over_webhook_event.rbi +4 -33
  81. data/rbi/dodopayments/models/credit_rollover_forfeited_webhook_event.rbi +4 -40
  82. data/rbi/dodopayments/models/dispute_accepted_webhook_event.rbi +4 -33
  83. data/rbi/dodopayments/models/dispute_cancelled_webhook_event.rbi +4 -33
  84. data/rbi/dodopayments/models/dispute_challenged_webhook_event.rbi +4 -34
  85. data/rbi/dodopayments/models/dispute_expired_webhook_event.rbi +4 -33
  86. data/rbi/dodopayments/models/dispute_lost_webhook_event.rbi +4 -29
  87. data/rbi/dodopayments/models/dispute_opened_webhook_event.rbi +4 -33
  88. data/rbi/dodopayments/models/dispute_won_webhook_event.rbi +4 -29
  89. data/rbi/dodopayments/models/dunning_recovered_webhook_event.rbi +4 -33
  90. data/rbi/dodopayments/models/dunning_started_webhook_event.rbi +4 -33
  91. data/rbi/dodopayments/models/entitlement_grant_created_webhook_event.rbi +4 -40
  92. data/rbi/dodopayments/models/entitlement_grant_delivered_webhook_event.rbi +4 -40
  93. data/rbi/dodopayments/models/entitlement_grant_failed_webhook_event.rbi +4 -39
  94. data/rbi/dodopayments/models/entitlement_grant_revoked_webhook_event.rbi +4 -40
  95. data/rbi/dodopayments/models/license_key_created_webhook_event.rbi +4 -34
  96. data/rbi/dodopayments/models/payment.rbi +170 -2
  97. data/rbi/dodopayments/models/payment_cancelled_webhook_event.rbi +4 -33
  98. data/rbi/dodopayments/models/payment_create_params.rbi +14 -2
  99. data/rbi/dodopayments/models/payment_create_response.rbi +12 -2
  100. data/rbi/dodopayments/models/payment_failed_webhook_event.rbi +4 -33
  101. data/rbi/dodopayments/models/payment_processing_webhook_event.rbi +4 -34
  102. data/rbi/dodopayments/models/payment_succeeded_webhook_event.rbi +4 -33
  103. data/rbi/dodopayments/models/price.rbi +18 -90
  104. data/rbi/dodopayments/models/product_item_req.rbi +74 -3
  105. data/rbi/dodopayments/models/refund_failed_webhook_event.rbi +4 -31
  106. data/rbi/dodopayments/models/refund_succeeded_webhook_event.rbi +4 -33
  107. data/rbi/dodopayments/models/subscription.rbi +173 -4
  108. data/rbi/dodopayments/models/subscription_active_webhook_event.rbi +4 -36
  109. data/rbi/dodopayments/models/subscription_cancelled_webhook_event.rbi +4 -36
  110. data/rbi/dodopayments/models/subscription_create_params.rbi +14 -2
  111. data/rbi/dodopayments/models/subscription_create_response.rbi +12 -2
  112. data/rbi/dodopayments/models/subscription_expired_webhook_event.rbi +4 -36
  113. data/rbi/dodopayments/models/subscription_failed_webhook_event.rbi +4 -36
  114. data/rbi/dodopayments/models/subscription_list_response.rbi +67 -4
  115. data/rbi/dodopayments/models/subscription_on_hold_webhook_event.rbi +4 -36
  116. data/rbi/dodopayments/models/subscription_plan_changed_webhook_event.rbi +4 -40
  117. data/rbi/dodopayments/models/subscription_preview_change_plan_response.rbi +18 -123
  118. data/rbi/dodopayments/models/subscription_renewed_webhook_event.rbi +4 -36
  119. data/rbi/dodopayments/models/subscription_update_payment_method_params.rbi +12 -96
  120. data/rbi/dodopayments/models/subscription_updated_webhook_event.rbi +4 -36
  121. data/rbi/dodopayments/models/update_subscription_plan_req.rbi +18 -8
  122. data/rbi/dodopayments/models/webhook_event_type.rbi +15 -0
  123. data/rbi/dodopayments/models/webhook_payload.rbi +46 -466
  124. data/rbi/dodopayments/resources/checkout_sessions.rbi +12 -0
  125. data/rbi/dodopayments/resources/payments.rbi +6 -1
  126. data/rbi/dodopayments/resources/subscriptions.rbi +22 -9
  127. data/sig/dodopayments/models/abandoned_checkout_detected_webhook_event.rbs +4 -14
  128. data/sig/dodopayments/models/abandoned_checkout_recovered_webhook_event.rbs +4 -14
  129. data/sig/dodopayments/models/checkout_session_request.rbs +5 -0
  130. data/sig/dodopayments/models/credit_added_webhook_event.rbs +4 -14
  131. data/sig/dodopayments/models/credit_balance_low_webhook_event.rbs +4 -14
  132. data/sig/dodopayments/models/credit_deducted_webhook_event.rbs +4 -14
  133. data/sig/dodopayments/models/credit_expired_webhook_event.rbs +4 -14
  134. data/sig/dodopayments/models/credit_manual_adjustment_webhook_event.rbs +4 -14
  135. data/sig/dodopayments/models/credit_overage_charged_webhook_event.rbs +4 -14
  136. data/sig/dodopayments/models/credit_overage_reset_webhook_event.rbs +4 -14
  137. data/sig/dodopayments/models/credit_rolled_over_webhook_event.rbs +4 -14
  138. data/sig/dodopayments/models/credit_rollover_forfeited_webhook_event.rbs +4 -14
  139. data/sig/dodopayments/models/dispute_accepted_webhook_event.rbs +4 -14
  140. data/sig/dodopayments/models/dispute_cancelled_webhook_event.rbs +4 -14
  141. data/sig/dodopayments/models/dispute_challenged_webhook_event.rbs +4 -14
  142. data/sig/dodopayments/models/dispute_expired_webhook_event.rbs +4 -14
  143. data/sig/dodopayments/models/dispute_lost_webhook_event.rbs +4 -14
  144. data/sig/dodopayments/models/dispute_opened_webhook_event.rbs +4 -14
  145. data/sig/dodopayments/models/dispute_won_webhook_event.rbs +4 -14
  146. data/sig/dodopayments/models/dunning_recovered_webhook_event.rbs +4 -14
  147. data/sig/dodopayments/models/dunning_started_webhook_event.rbs +4 -14
  148. data/sig/dodopayments/models/entitlement_grant_created_webhook_event.rbs +4 -14
  149. data/sig/dodopayments/models/entitlement_grant_delivered_webhook_event.rbs +4 -14
  150. data/sig/dodopayments/models/entitlement_grant_failed_webhook_event.rbs +4 -14
  151. data/sig/dodopayments/models/entitlement_grant_revoked_webhook_event.rbs +4 -14
  152. data/sig/dodopayments/models/license_key_created_webhook_event.rbs +4 -14
  153. data/sig/dodopayments/models/payment.rbs +97 -0
  154. data/sig/dodopayments/models/payment_cancelled_webhook_event.rbs +4 -14
  155. data/sig/dodopayments/models/payment_create_params.rbs +5 -0
  156. data/sig/dodopayments/models/payment_create_response.rbs +5 -0
  157. data/sig/dodopayments/models/payment_failed_webhook_event.rbs +4 -14
  158. data/sig/dodopayments/models/payment_processing_webhook_event.rbs +4 -14
  159. data/sig/dodopayments/models/payment_succeeded_webhook_event.rbs +4 -14
  160. data/sig/dodopayments/models/price.rbs +15 -45
  161. data/sig/dodopayments/models/product_item_req.rbs +27 -3
  162. data/sig/dodopayments/models/refund_failed_webhook_event.rbs +4 -14
  163. data/sig/dodopayments/models/refund_succeeded_webhook_event.rbs +4 -14
  164. data/sig/dodopayments/models/subscription.rbs +97 -0
  165. data/sig/dodopayments/models/subscription_active_webhook_event.rbs +4 -14
  166. data/sig/dodopayments/models/subscription_cancelled_webhook_event.rbs +4 -14
  167. data/sig/dodopayments/models/subscription_create_params.rbs +5 -0
  168. data/sig/dodopayments/models/subscription_create_response.rbs +5 -0
  169. data/sig/dodopayments/models/subscription_expired_webhook_event.rbs +4 -14
  170. data/sig/dodopayments/models/subscription_failed_webhook_event.rbs +4 -14
  171. data/sig/dodopayments/models/subscription_list_response.rbs +24 -0
  172. data/sig/dodopayments/models/subscription_on_hold_webhook_event.rbs +4 -14
  173. data/sig/dodopayments/models/subscription_plan_changed_webhook_event.rbs +4 -14
  174. data/sig/dodopayments/models/subscription_preview_change_plan_response.rbs +15 -45
  175. data/sig/dodopayments/models/subscription_renewed_webhook_event.rbs +4 -14
  176. data/sig/dodopayments/models/subscription_update_payment_method_params.rbs +8 -48
  177. data/sig/dodopayments/models/subscription_updated_webhook_event.rbs +4 -14
  178. data/sig/dodopayments/models/update_subscription_plan_req.rbs +5 -0
  179. data/sig/dodopayments/models/webhook_event_type.rbs +6 -0
  180. data/sig/dodopayments/models/webhook_payload.rbs +50 -213
  181. data/sig/dodopayments/resources/checkout_sessions.rbs +2 -0
  182. data/sig/dodopayments/resources/payments.rbs +1 -0
  183. data/sig/dodopayments/resources/subscriptions.rbs +3 -0
  184. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bc0aa98fdabf63772954ef8a37fa9943640be90e8f5b63b6271d23d7679d347e
4
- data.tar.gz: 8ad9b63374eed557b79b1ec9469f96f58b05b9f68c695fa413785474ab35e9fc
3
+ metadata.gz: d827139482498b3f218d10da46c7dc1cd1ab9ad8b0ae2c189cec3e569d89281c
4
+ data.tar.gz: df661b3d70d0b2db7c2303178ac94af3fbf2aabcac58ed713f877e5798f6f97a
5
5
  SHA512:
6
- metadata.gz: ff56943bda78725f9e454cfb3ab1d9ebe09fbb8c01ff0fc54b47edbcf6417d8fb036a0e0e7d01adf8bdbd733089c03198508c97f25897ec3a718f957f478bd43
7
- data.tar.gz: ca67b58771ea486e6b99f1c0351555c3c527f0535ae5b30dc186ba65adfcb5506d3d8e1cb952158eb5290dde9c7dbab80b175ce392c4143f9b8c632810d3d6ac
6
+ metadata.gz: 7672453866107e0a8c5ff8a861b6ac40849258cca2ab525176484a0037d35b9cdf953e2e0426cfe72c8ca9759a11875ec3ae01526cd0a849330c44af1b30647b
7
+ data.tar.gz: 5a38f85089af1044e74042865fcf907db78b1ad5b1d5f52e5b26071a127febbf6a001342c706e08961b59adf17099a7a9c4f88cda01aff4eae5afdfd58982426
data/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.10.0 (2026-05-14)
4
+
5
+ Full Changelog: [v2.9.1...v2.10.0](https://github.com/dodopayments/dodopayments-ruby/compare/v2.9.1...v2.10.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** manual updates ([5bea624](https://github.com/dodopayments/dodopayments-ruby/commit/5bea6246c3a998c3587e24a9c345a41000a87e31))
10
+ * **api:** updated openapi spec to 1.98.0 ([4747cdf](https://github.com/dodopayments/dodopayments-ruby/commit/4747cdf437c49a58c4e70908e08e4bd853dd0859))
11
+ * **api:** updated openapi spec to v1.97.10 ([4b79dec](https://github.com/dodopayments/dodopayments-ruby/commit/4b79dec6275293cce30c1db6d682eeb4ee1f69b7))
12
+
13
+
14
+ ### Bug Fixes
15
+
16
+ * **client:** elide content type header on requests without body ([036bd33](https://github.com/dodopayments/dodopayments-ruby/commit/036bd33ad42365dfd68d18274297dcb46887ab94))
17
+
3
18
  ## 2.9.1 (2026-05-04)
4
19
 
5
20
  Full Changelog: [v2.9.0...v2.9.1](https://github.com/dodopayments/dodopayments-ruby/compare/v2.9.0...v2.9.1)
data/README.md CHANGED
@@ -26,7 +26,7 @@ To use this gem, install via Bundler by adding the following to your application
26
26
  <!-- x-release-please-start-version -->
27
27
 
28
28
  ```ruby
29
- gem "dodopayments", "~> 2.9.1"
29
+ gem "dodopayments", "~> 2.10.0"
30
30
  ```
31
31
 
32
32
  <!-- x-release-please-end -->
@@ -306,6 +306,8 @@ module Dodopayments
306
306
  Dodopayments::Internal::Util.deep_merge(*[req[:body], opts[:extra_body]].compact)
307
307
  end
308
308
 
309
+ headers.delete("content-type") if body.nil?
310
+
309
311
  url = Dodopayments::Internal::Util.join_parsed_uri(
310
312
  @base_url_components,
311
313
  {**req, path: path, query: query}
@@ -6,14 +6,28 @@ module Dodopayments
6
6
  # @api private
7
7
  #
8
8
  # @example
9
- # # `customer_request` is a `Dodopayments::CustomerRequest`
10
- # case customer_request
11
- # when Dodopayments::AttachExistingCustomer
12
- # puts(customer_request.customer_id)
13
- # when Dodopayments::NewCustomer
14
- # puts(customer_request.email)
9
+ # # `price` is a `Dodopayments::Price`
10
+ # case price
11
+ # when Dodopayments::Price::OneTimePrice
12
+ # puts(price.currency)
13
+ # when Dodopayments::Price::RecurringPrice
14
+ # puts(price.discount)
15
+ # when Dodopayments::Price::UsageBasedPrice
16
+ # puts(price.fixed_price)
15
17
  # else
16
- # puts(customer_request)
18
+ # puts(price)
19
+ # end
20
+ #
21
+ # @example
22
+ # case price
23
+ # in {type: :one_time_price, currency: currency, discount: discount, price: price}
24
+ # puts(currency)
25
+ # in {type: :recurring_price, currency: currency, discount: discount, payment_frequency_count: payment_frequency_count}
26
+ # puts(discount)
27
+ # in {type: :usage_based_price, currency: currency, discount: discount, fixed_price: fixed_price}
28
+ # puts(fixed_price)
29
+ # else
30
+ # puts(price)
17
31
  # end
18
32
  module Union
19
33
  include Dodopayments::Internal::Type::Converter
@@ -25,10 +25,10 @@ module Dodopayments
25
25
  # @!attribute type
26
26
  # The event type
27
27
  #
28
- # @return [Symbol, Dodopayments::Models::AbandonedCheckoutDetectedWebhookEvent::Type]
29
- required :type, enum: -> { Dodopayments::AbandonedCheckoutDetectedWebhookEvent::Type }
28
+ # @return [Symbol, :"abandoned_checkout.detected"]
29
+ required :type, const: :"abandoned_checkout.detected"
30
30
 
31
- # @!method initialize(business_id:, data:, timestamp:, type:)
31
+ # @!method initialize(business_id:, data:, timestamp:, type: :"abandoned_checkout.detected")
32
32
  # Some parameter documentations has been truncated, see
33
33
  # {Dodopayments::Models::AbandonedCheckoutDetectedWebhookEvent} for more details.
34
34
  #
@@ -38,7 +38,7 @@ module Dodopayments
38
38
  #
39
39
  # @param timestamp [Time] The timestamp of when the event occurred
40
40
  #
41
- # @param type [Symbol, Dodopayments::Models::AbandonedCheckoutDetectedWebhookEvent::Type] The event type
41
+ # @param type [Symbol, :"abandoned_checkout.detected"] The event type
42
42
 
43
43
  # @see Dodopayments::Models::AbandonedCheckoutDetectedWebhookEvent#data
44
44
  class Data < Dodopayments::Internal::Type::BaseModel
@@ -109,18 +109,6 @@ module Dodopayments
109
109
  # @return [Array<Symbol>]
110
110
  end
111
111
  end
112
-
113
- # The event type
114
- #
115
- # @see Dodopayments::Models::AbandonedCheckoutDetectedWebhookEvent#type
116
- module Type
117
- extend Dodopayments::Internal::Type::Enum
118
-
119
- ABANDONED_CHECKOUT_DETECTED = :"abandoned_checkout.detected"
120
-
121
- # @!method self.values
122
- # @return [Array<Symbol>]
123
- end
124
112
  end
125
113
  end
126
114
  end
@@ -25,10 +25,10 @@ module Dodopayments
25
25
  # @!attribute type
26
26
  # The event type
27
27
  #
28
- # @return [Symbol, Dodopayments::Models::AbandonedCheckoutRecoveredWebhookEvent::Type]
29
- required :type, enum: -> { Dodopayments::AbandonedCheckoutRecoveredWebhookEvent::Type }
28
+ # @return [Symbol, :"abandoned_checkout.recovered"]
29
+ required :type, const: :"abandoned_checkout.recovered"
30
30
 
31
- # @!method initialize(business_id:, data:, timestamp:, type:)
31
+ # @!method initialize(business_id:, data:, timestamp:, type: :"abandoned_checkout.recovered")
32
32
  # Some parameter documentations has been truncated, see
33
33
  # {Dodopayments::Models::AbandonedCheckoutRecoveredWebhookEvent} for more details.
34
34
  #
@@ -38,7 +38,7 @@ module Dodopayments
38
38
  #
39
39
  # @param timestamp [Time] The timestamp of when the event occurred
40
40
  #
41
- # @param type [Symbol, Dodopayments::Models::AbandonedCheckoutRecoveredWebhookEvent::Type] The event type
41
+ # @param type [Symbol, :"abandoned_checkout.recovered"] The event type
42
42
 
43
43
  # @see Dodopayments::Models::AbandonedCheckoutRecoveredWebhookEvent#data
44
44
  class Data < Dodopayments::Internal::Type::BaseModel
@@ -109,18 +109,6 @@ module Dodopayments
109
109
  # @return [Array<Symbol>]
110
110
  end
111
111
  end
112
-
113
- # The event type
114
- #
115
- # @see Dodopayments::Models::AbandonedCheckoutRecoveredWebhookEvent#type
116
- module Type
117
- extend Dodopayments::Internal::Type::Enum
118
-
119
- ABANDONED_CHECKOUT_RECOVERED = :"abandoned_checkout.recovered"
120
-
121
- # @!method self.values
122
- # @return [Array<Symbol>]
123
- end
124
112
  end
125
113
  end
126
114
  end
@@ -68,10 +68,21 @@ module Dodopayments
68
68
  optional :customization, -> { Dodopayments::CheckoutSessionCustomization }
69
69
 
70
70
  # @!attribute discount_code
71
+ # @deprecated Use `discount_id` instead.
72
+ #
73
+ # DEPRECATED: Use discount_codes instead. Cannot be used together with
74
+ # discount_codes.
71
75
  #
72
76
  # @return [String, nil]
73
77
  optional :discount_code, String, nil?: true
74
78
 
79
+ # @!attribute discount_codes
80
+ # Stacked discount codes to apply, in order. Max 20. Cannot be used together with
81
+ # discount_code.
82
+ #
83
+ # @return [Array<String>, nil]
84
+ optional :discount_codes, Dodopayments::Internal::Type::ArrayOf[String], nil?: true
85
+
75
86
  # @!attribute feature_flags
76
87
  #
77
88
  # @return [Dodopayments::Models::CheckoutSessionFlags, nil]
@@ -151,7 +162,7 @@ module Dodopayments
151
162
  # @return [String, nil]
152
163
  optional :tax_id, String, nil?: true
153
164
 
154
- # @!method initialize(product_cart:, allowed_payment_method_types: nil, billing_address: nil, billing_currency: nil, cancel_url: nil, confirm: nil, custom_fields: nil, customer: nil, customization: nil, discount_code: nil, feature_flags: nil, force_3ds: nil, mandate_min_amount_inr_paise: nil, metadata: nil, minimal_address: nil, payment_method_id: nil, product_collection_id: nil, return_url: nil, short_link: nil, show_saved_payment_methods: nil, subscription_data: nil, tax_id: nil)
165
+ # @!method initialize(product_cart:, allowed_payment_method_types: nil, billing_address: nil, billing_currency: nil, cancel_url: nil, confirm: nil, custom_fields: nil, customer: nil, customization: nil, discount_code: nil, discount_codes: nil, feature_flags: nil, force_3ds: nil, mandate_min_amount_inr_paise: nil, metadata: nil, minimal_address: nil, payment_method_id: nil, product_collection_id: nil, return_url: nil, short_link: nil, show_saved_payment_methods: nil, subscription_data: nil, tax_id: nil)
155
166
  # Some parameter documentations has been truncated, see
156
167
  # {Dodopayments::Models::CheckoutSessionRequest} for more details.
157
168
  #
@@ -173,7 +184,9 @@ module Dodopayments
173
184
  #
174
185
  # @param customization [Dodopayments::Models::CheckoutSessionCustomization] Customization for the checkout session page
175
186
  #
176
- # @param discount_code [String, nil]
187
+ # @param discount_code [String, nil] DEPRECATED: Use discount_codes instead. Cannot be used together with discount_co
188
+ #
189
+ # @param discount_codes [Array<String>, nil] Stacked discount codes to apply, in order. Max 20.
177
190
  #
178
191
  # @param feature_flags [Dodopayments::Models::CheckoutSessionFlags]
179
192
  #
@@ -24,29 +24,17 @@ module Dodopayments
24
24
  # @!attribute type
25
25
  # The event type
26
26
  #
27
- # @return [Symbol, Dodopayments::Models::CreditAddedWebhookEvent::Type]
28
- required :type, enum: -> { Dodopayments::CreditAddedWebhookEvent::Type }
27
+ # @return [Symbol, :"credit.added"]
28
+ required :type, const: :"credit.added"
29
29
 
30
- # @!method initialize(business_id:, data:, timestamp:, type:)
30
+ # @!method initialize(business_id:, data:, timestamp:, type: :"credit.added")
31
31
  # @param business_id [String] The business identifier
32
32
  #
33
33
  # @param data [Dodopayments::Models::CreditEntitlements::CreditLedgerEntry] Response for a ledger entry
34
34
  #
35
35
  # @param timestamp [Time] The timestamp of when the event occurred
36
36
  #
37
- # @param type [Symbol, Dodopayments::Models::CreditAddedWebhookEvent::Type] The event type
38
-
39
- # The event type
40
- #
41
- # @see Dodopayments::Models::CreditAddedWebhookEvent#type
42
- module Type
43
- extend Dodopayments::Internal::Type::Enum
44
-
45
- CREDIT_ADDED = :"credit.added"
46
-
47
- # @!method self.values
48
- # @return [Array<Symbol>]
49
- end
37
+ # @param type [Symbol, :"credit.added"] The event type
50
38
  end
51
39
  end
52
40
  end
@@ -24,17 +24,17 @@ module Dodopayments
24
24
  # @!attribute type
25
25
  # The event type
26
26
  #
27
- # @return [Symbol, Dodopayments::Models::CreditBalanceLowWebhookEvent::Type]
28
- required :type, enum: -> { Dodopayments::CreditBalanceLowWebhookEvent::Type }
27
+ # @return [Symbol, :"credit.balance_low"]
28
+ required :type, const: :"credit.balance_low"
29
29
 
30
- # @!method initialize(business_id:, data:, timestamp:, type:)
30
+ # @!method initialize(business_id:, data:, timestamp:, type: :"credit.balance_low")
31
31
  # @param business_id [String] The business identifier
32
32
  #
33
33
  # @param data [Dodopayments::Models::CreditBalanceLowWebhookEvent::Data] Webhook payload for credit.balance_low event
34
34
  #
35
35
  # @param timestamp [Time] The timestamp of when the event occurred
36
36
  #
37
- # @param type [Symbol, Dodopayments::Models::CreditBalanceLowWebhookEvent::Type] The event type
37
+ # @param type [Symbol, :"credit.balance_low"] The event type
38
38
 
39
39
  # @see Dodopayments::Models::CreditBalanceLowWebhookEvent#data
40
40
  class Data < Dodopayments::Internal::Type::BaseModel
@@ -90,18 +90,6 @@ module Dodopayments
90
90
  # @param threshold_amount [String]
91
91
  # @param threshold_percent [Integer]
92
92
  end
93
-
94
- # The event type
95
- #
96
- # @see Dodopayments::Models::CreditBalanceLowWebhookEvent#type
97
- module Type
98
- extend Dodopayments::Internal::Type::Enum
99
-
100
- CREDIT_BALANCE_LOW = :"credit.balance_low"
101
-
102
- # @!method self.values
103
- # @return [Array<Symbol>]
104
- end
105
93
  end
106
94
  end
107
95
  end
@@ -24,29 +24,17 @@ module Dodopayments
24
24
  # @!attribute type
25
25
  # The event type
26
26
  #
27
- # @return [Symbol, Dodopayments::Models::CreditDeductedWebhookEvent::Type]
28
- required :type, enum: -> { Dodopayments::CreditDeductedWebhookEvent::Type }
27
+ # @return [Symbol, :"credit.deducted"]
28
+ required :type, const: :"credit.deducted"
29
29
 
30
- # @!method initialize(business_id:, data:, timestamp:, type:)
30
+ # @!method initialize(business_id:, data:, timestamp:, type: :"credit.deducted")
31
31
  # @param business_id [String] The business identifier
32
32
  #
33
33
  # @param data [Dodopayments::Models::CreditEntitlements::CreditLedgerEntry] Response for a ledger entry
34
34
  #
35
35
  # @param timestamp [Time] The timestamp of when the event occurred
36
36
  #
37
- # @param type [Symbol, Dodopayments::Models::CreditDeductedWebhookEvent::Type] The event type
38
-
39
- # The event type
40
- #
41
- # @see Dodopayments::Models::CreditDeductedWebhookEvent#type
42
- module Type
43
- extend Dodopayments::Internal::Type::Enum
44
-
45
- CREDIT_DEDUCTED = :"credit.deducted"
46
-
47
- # @!method self.values
48
- # @return [Array<Symbol>]
49
- end
37
+ # @param type [Symbol, :"credit.deducted"] The event type
50
38
  end
51
39
  end
52
40
  end
@@ -24,29 +24,17 @@ module Dodopayments
24
24
  # @!attribute type
25
25
  # The event type
26
26
  #
27
- # @return [Symbol, Dodopayments::Models::CreditExpiredWebhookEvent::Type]
28
- required :type, enum: -> { Dodopayments::CreditExpiredWebhookEvent::Type }
27
+ # @return [Symbol, :"credit.expired"]
28
+ required :type, const: :"credit.expired"
29
29
 
30
- # @!method initialize(business_id:, data:, timestamp:, type:)
30
+ # @!method initialize(business_id:, data:, timestamp:, type: :"credit.expired")
31
31
  # @param business_id [String] The business identifier
32
32
  #
33
33
  # @param data [Dodopayments::Models::CreditEntitlements::CreditLedgerEntry] Response for a ledger entry
34
34
  #
35
35
  # @param timestamp [Time] The timestamp of when the event occurred
36
36
  #
37
- # @param type [Symbol, Dodopayments::Models::CreditExpiredWebhookEvent::Type] The event type
38
-
39
- # The event type
40
- #
41
- # @see Dodopayments::Models::CreditExpiredWebhookEvent#type
42
- module Type
43
- extend Dodopayments::Internal::Type::Enum
44
-
45
- CREDIT_EXPIRED = :"credit.expired"
46
-
47
- # @!method self.values
48
- # @return [Array<Symbol>]
49
- end
37
+ # @param type [Symbol, :"credit.expired"] The event type
50
38
  end
51
39
  end
52
40
  end
@@ -24,29 +24,17 @@ module Dodopayments
24
24
  # @!attribute type
25
25
  # The event type
26
26
  #
27
- # @return [Symbol, Dodopayments::Models::CreditManualAdjustmentWebhookEvent::Type]
28
- required :type, enum: -> { Dodopayments::CreditManualAdjustmentWebhookEvent::Type }
27
+ # @return [Symbol, :"credit.manual_adjustment"]
28
+ required :type, const: :"credit.manual_adjustment"
29
29
 
30
- # @!method initialize(business_id:, data:, timestamp:, type:)
30
+ # @!method initialize(business_id:, data:, timestamp:, type: :"credit.manual_adjustment")
31
31
  # @param business_id [String] The business identifier
32
32
  #
33
33
  # @param data [Dodopayments::Models::CreditEntitlements::CreditLedgerEntry] Response for a ledger entry
34
34
  #
35
35
  # @param timestamp [Time] The timestamp of when the event occurred
36
36
  #
37
- # @param type [Symbol, Dodopayments::Models::CreditManualAdjustmentWebhookEvent::Type] The event type
38
-
39
- # The event type
40
- #
41
- # @see Dodopayments::Models::CreditManualAdjustmentWebhookEvent#type
42
- module Type
43
- extend Dodopayments::Internal::Type::Enum
44
-
45
- CREDIT_MANUAL_ADJUSTMENT = :"credit.manual_adjustment"
46
-
47
- # @!method self.values
48
- # @return [Array<Symbol>]
49
- end
37
+ # @param type [Symbol, :"credit.manual_adjustment"] The event type
50
38
  end
51
39
  end
52
40
  end
@@ -24,29 +24,17 @@ module Dodopayments
24
24
  # @!attribute type
25
25
  # The event type
26
26
  #
27
- # @return [Symbol, Dodopayments::Models::CreditOverageChargedWebhookEvent::Type]
28
- required :type, enum: -> { Dodopayments::CreditOverageChargedWebhookEvent::Type }
27
+ # @return [Symbol, :"credit.overage_charged"]
28
+ required :type, const: :"credit.overage_charged"
29
29
 
30
- # @!method initialize(business_id:, data:, timestamp:, type:)
30
+ # @!method initialize(business_id:, data:, timestamp:, type: :"credit.overage_charged")
31
31
  # @param business_id [String] The business identifier
32
32
  #
33
33
  # @param data [Dodopayments::Models::CreditEntitlements::CreditLedgerEntry] Response for a ledger entry
34
34
  #
35
35
  # @param timestamp [Time] The timestamp of when the event occurred
36
36
  #
37
- # @param type [Symbol, Dodopayments::Models::CreditOverageChargedWebhookEvent::Type] The event type
38
-
39
- # The event type
40
- #
41
- # @see Dodopayments::Models::CreditOverageChargedWebhookEvent#type
42
- module Type
43
- extend Dodopayments::Internal::Type::Enum
44
-
45
- CREDIT_OVERAGE_CHARGED = :"credit.overage_charged"
46
-
47
- # @!method self.values
48
- # @return [Array<Symbol>]
49
- end
37
+ # @param type [Symbol, :"credit.overage_charged"] The event type
50
38
  end
51
39
  end
52
40
  end
@@ -24,29 +24,17 @@ module Dodopayments
24
24
  # @!attribute type
25
25
  # The event type
26
26
  #
27
- # @return [Symbol, Dodopayments::Models::CreditOverageResetWebhookEvent::Type]
28
- required :type, enum: -> { Dodopayments::CreditOverageResetWebhookEvent::Type }
27
+ # @return [Symbol, :"credit.overage_reset"]
28
+ required :type, const: :"credit.overage_reset"
29
29
 
30
- # @!method initialize(business_id:, data:, timestamp:, type:)
30
+ # @!method initialize(business_id:, data:, timestamp:, type: :"credit.overage_reset")
31
31
  # @param business_id [String] The business identifier
32
32
  #
33
33
  # @param data [Dodopayments::Models::CreditEntitlements::CreditLedgerEntry] Response for a ledger entry
34
34
  #
35
35
  # @param timestamp [Time] The timestamp of when the event occurred
36
36
  #
37
- # @param type [Symbol, Dodopayments::Models::CreditOverageResetWebhookEvent::Type] The event type
38
-
39
- # The event type
40
- #
41
- # @see Dodopayments::Models::CreditOverageResetWebhookEvent#type
42
- module Type
43
- extend Dodopayments::Internal::Type::Enum
44
-
45
- CREDIT_OVERAGE_RESET = :"credit.overage_reset"
46
-
47
- # @!method self.values
48
- # @return [Array<Symbol>]
49
- end
37
+ # @param type [Symbol, :"credit.overage_reset"] The event type
50
38
  end
51
39
  end
52
40
  end
@@ -24,29 +24,17 @@ module Dodopayments
24
24
  # @!attribute type
25
25
  # The event type
26
26
  #
27
- # @return [Symbol, Dodopayments::Models::CreditRolledOverWebhookEvent::Type]
28
- required :type, enum: -> { Dodopayments::CreditRolledOverWebhookEvent::Type }
27
+ # @return [Symbol, :"credit.rolled_over"]
28
+ required :type, const: :"credit.rolled_over"
29
29
 
30
- # @!method initialize(business_id:, data:, timestamp:, type:)
30
+ # @!method initialize(business_id:, data:, timestamp:, type: :"credit.rolled_over")
31
31
  # @param business_id [String] The business identifier
32
32
  #
33
33
  # @param data [Dodopayments::Models::CreditEntitlements::CreditLedgerEntry] Response for a ledger entry
34
34
  #
35
35
  # @param timestamp [Time] The timestamp of when the event occurred
36
36
  #
37
- # @param type [Symbol, Dodopayments::Models::CreditRolledOverWebhookEvent::Type] The event type
38
-
39
- # The event type
40
- #
41
- # @see Dodopayments::Models::CreditRolledOverWebhookEvent#type
42
- module Type
43
- extend Dodopayments::Internal::Type::Enum
44
-
45
- CREDIT_ROLLED_OVER = :"credit.rolled_over"
46
-
47
- # @!method self.values
48
- # @return [Array<Symbol>]
49
- end
37
+ # @param type [Symbol, :"credit.rolled_over"] The event type
50
38
  end
51
39
  end
52
40
  end
@@ -24,29 +24,17 @@ module Dodopayments
24
24
  # @!attribute type
25
25
  # The event type
26
26
  #
27
- # @return [Symbol, Dodopayments::Models::CreditRolloverForfeitedWebhookEvent::Type]
28
- required :type, enum: -> { Dodopayments::CreditRolloverForfeitedWebhookEvent::Type }
27
+ # @return [Symbol, :"credit.rollover_forfeited"]
28
+ required :type, const: :"credit.rollover_forfeited"
29
29
 
30
- # @!method initialize(business_id:, data:, timestamp:, type:)
30
+ # @!method initialize(business_id:, data:, timestamp:, type: :"credit.rollover_forfeited")
31
31
  # @param business_id [String] The business identifier
32
32
  #
33
33
  # @param data [Dodopayments::Models::CreditEntitlements::CreditLedgerEntry] Response for a ledger entry
34
34
  #
35
35
  # @param timestamp [Time] The timestamp of when the event occurred
36
36
  #
37
- # @param type [Symbol, Dodopayments::Models::CreditRolloverForfeitedWebhookEvent::Type] The event type
38
-
39
- # The event type
40
- #
41
- # @see Dodopayments::Models::CreditRolloverForfeitedWebhookEvent#type
42
- module Type
43
- extend Dodopayments::Internal::Type::Enum
44
-
45
- CREDIT_ROLLOVER_FORFEITED = :"credit.rollover_forfeited"
46
-
47
- # @!method self.values
48
- # @return [Array<Symbol>]
49
- end
37
+ # @param type [Symbol, :"credit.rollover_forfeited"] The event type
50
38
  end
51
39
  end
52
40
  end
@@ -23,29 +23,17 @@ module Dodopayments
23
23
  # @!attribute type
24
24
  # The event type
25
25
  #
26
- # @return [Symbol, Dodopayments::Models::DisputeAcceptedWebhookEvent::Type]
27
- required :type, enum: -> { Dodopayments::DisputeAcceptedWebhookEvent::Type }
26
+ # @return [Symbol, :"dispute.accepted"]
27
+ required :type, const: :"dispute.accepted"
28
28
 
29
- # @!method initialize(business_id:, data:, timestamp:, type:)
29
+ # @!method initialize(business_id:, data:, timestamp:, type: :"dispute.accepted")
30
30
  # @param business_id [String] The business identifier
31
31
  #
32
32
  # @param data [Dodopayments::Models::Dispute]
33
33
  #
34
34
  # @param timestamp [Time] The timestamp of when the event occurred
35
35
  #
36
- # @param type [Symbol, Dodopayments::Models::DisputeAcceptedWebhookEvent::Type] The event type
37
-
38
- # The event type
39
- #
40
- # @see Dodopayments::Models::DisputeAcceptedWebhookEvent#type
41
- module Type
42
- extend Dodopayments::Internal::Type::Enum
43
-
44
- DISPUTE_ACCEPTED = :"dispute.accepted"
45
-
46
- # @!method self.values
47
- # @return [Array<Symbol>]
48
- end
36
+ # @param type [Symbol, :"dispute.accepted"] The event type
49
37
  end
50
38
  end
51
39
  end
@@ -23,29 +23,17 @@ module Dodopayments
23
23
  # @!attribute type
24
24
  # The event type
25
25
  #
26
- # @return [Symbol, Dodopayments::Models::DisputeCancelledWebhookEvent::Type]
27
- required :type, enum: -> { Dodopayments::DisputeCancelledWebhookEvent::Type }
26
+ # @return [Symbol, :"dispute.cancelled"]
27
+ required :type, const: :"dispute.cancelled"
28
28
 
29
- # @!method initialize(business_id:, data:, timestamp:, type:)
29
+ # @!method initialize(business_id:, data:, timestamp:, type: :"dispute.cancelled")
30
30
  # @param business_id [String] The business identifier
31
31
  #
32
32
  # @param data [Dodopayments::Models::Dispute]
33
33
  #
34
34
  # @param timestamp [Time] The timestamp of when the event occurred
35
35
  #
36
- # @param type [Symbol, Dodopayments::Models::DisputeCancelledWebhookEvent::Type] The event type
37
-
38
- # The event type
39
- #
40
- # @see Dodopayments::Models::DisputeCancelledWebhookEvent#type
41
- module Type
42
- extend Dodopayments::Internal::Type::Enum
43
-
44
- DISPUTE_CANCELLED = :"dispute.cancelled"
45
-
46
- # @!method self.values
47
- # @return [Array<Symbol>]
48
- end
36
+ # @param type [Symbol, :"dispute.cancelled"] The event type
49
37
  end
50
38
  end
51
39
  end
@@ -23,29 +23,17 @@ module Dodopayments
23
23
  # @!attribute type
24
24
  # The event type
25
25
  #
26
- # @return [Symbol, Dodopayments::Models::DisputeChallengedWebhookEvent::Type]
27
- required :type, enum: -> { Dodopayments::DisputeChallengedWebhookEvent::Type }
26
+ # @return [Symbol, :"dispute.challenged"]
27
+ required :type, const: :"dispute.challenged"
28
28
 
29
- # @!method initialize(business_id:, data:, timestamp:, type:)
29
+ # @!method initialize(business_id:, data:, timestamp:, type: :"dispute.challenged")
30
30
  # @param business_id [String] The business identifier
31
31
  #
32
32
  # @param data [Dodopayments::Models::Dispute]
33
33
  #
34
34
  # @param timestamp [Time] The timestamp of when the event occurred
35
35
  #
36
- # @param type [Symbol, Dodopayments::Models::DisputeChallengedWebhookEvent::Type] The event type
37
-
38
- # The event type
39
- #
40
- # @see Dodopayments::Models::DisputeChallengedWebhookEvent#type
41
- module Type
42
- extend Dodopayments::Internal::Type::Enum
43
-
44
- DISPUTE_CHALLENGED = :"dispute.challenged"
45
-
46
- # @!method self.values
47
- # @return [Array<Symbol>]
48
- end
36
+ # @param type [Symbol, :"dispute.challenged"] The event type
49
37
  end
50
38
  end
51
39
  end