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
@@ -45,146 +45,94 @@ module Dodopayments
45
45
  module Data
46
46
  extend Dodopayments::Internal::Type::Union
47
47
 
48
- variant -> { Dodopayments::WebhookPayload::Data::Payment }
48
+ discriminator :payload_type
49
+
50
+ variant :Payment, -> { Dodopayments::WebhookPayload::Data::Payment }
49
51
 
50
52
  # Response struct representing subscription details
51
- variant -> { Dodopayments::WebhookPayload::Data::Subscription }
53
+ variant :Subscription, -> { Dodopayments::WebhookPayload::Data::Subscription }
52
54
 
53
- variant -> { Dodopayments::WebhookPayload::Data::Refund }
55
+ variant :Refund, -> { Dodopayments::WebhookPayload::Data::Refund }
54
56
 
55
- variant -> { Dodopayments::WebhookPayload::Data::Dispute }
57
+ variant :Dispute, -> { Dodopayments::WebhookPayload::Data::Dispute }
56
58
 
57
- variant -> { Dodopayments::WebhookPayload::Data::LicenseKey }
59
+ variant :LicenseKey, -> { Dodopayments::WebhookPayload::Data::LicenseKey }
58
60
 
59
61
  # Response for a ledger entry
60
- variant -> { Dodopayments::WebhookPayload::Data::CreditLedgerEntry }
62
+ variant :CreditLedgerEntry, -> { Dodopayments::WebhookPayload::Data::CreditLedgerEntry }
61
63
 
62
- variant -> { Dodopayments::WebhookPayload::Data::CreditBalanceLow }
64
+ variant :CreditBalanceLow, -> { Dodopayments::WebhookPayload::Data::CreditBalanceLow }
63
65
 
64
- variant -> { Dodopayments::WebhookPayload::Data::AbandonedCheckout }
66
+ variant :AbandonedCheckout, -> { Dodopayments::WebhookPayload::Data::AbandonedCheckout }
65
67
 
66
- variant -> { Dodopayments::WebhookPayload::Data::DunningAttempt }
68
+ variant :DunningAttempt, -> { Dodopayments::WebhookPayload::Data::DunningAttempt }
67
69
 
68
70
  # Detailed view of a single entitlement grant: who it's for, its
69
71
  # lifecycle state, and any integration-specific delivery payload.
70
- variant -> { Dodopayments::WebhookPayload::Data::EntitlementGrant }
72
+ variant :EntitlementGrant, -> { Dodopayments::WebhookPayload::Data::EntitlementGrant }
71
73
 
72
74
  class Payment < Dodopayments::Models::Payment
73
75
  # @!attribute payload_type
74
76
  #
75
- # @return [Symbol, Dodopayments::Models::WebhookPayload::Data::Payment::PayloadType]
76
- required :payload_type, enum: -> { Dodopayments::WebhookPayload::Data::Payment::PayloadType }
77
-
78
- # @!method initialize(payload_type:)
79
- # @param payload_type [Symbol, Dodopayments::Models::WebhookPayload::Data::Payment::PayloadType]
80
-
81
- module PayloadType
82
- extend Dodopayments::Internal::Type::Enum
83
-
84
- PAYMENT = :Payment
77
+ # @return [Symbol, :Payment]
78
+ required :payload_type, const: :Payment
85
79
 
86
- # @!method self.values
87
- # @return [Array<Symbol>]
88
- end
80
+ # @!method initialize(payload_type: :Payment)
81
+ # @param payload_type [Symbol, :Payment]
89
82
  end
90
83
 
91
84
  class Subscription < Dodopayments::Models::Subscription
92
85
  # @!attribute payload_type
93
86
  #
94
- # @return [Symbol, Dodopayments::Models::WebhookPayload::Data::Subscription::PayloadType]
95
- required :payload_type, enum: -> { Dodopayments::WebhookPayload::Data::Subscription::PayloadType }
87
+ # @return [Symbol, :Subscription]
88
+ required :payload_type, const: :Subscription
96
89
 
97
- # @!method initialize(payload_type:)
90
+ # @!method initialize(payload_type: :Subscription)
98
91
  # Response struct representing subscription details
99
92
  #
100
- # @param payload_type [Symbol, Dodopayments::Models::WebhookPayload::Data::Subscription::PayloadType]
101
-
102
- module PayloadType
103
- extend Dodopayments::Internal::Type::Enum
104
-
105
- SUBSCRIPTION = :Subscription
106
-
107
- # @!method self.values
108
- # @return [Array<Symbol>]
109
- end
93
+ # @param payload_type [Symbol, :Subscription]
110
94
  end
111
95
 
112
96
  class Refund < Dodopayments::Models::Refund
113
97
  # @!attribute payload_type
114
98
  #
115
- # @return [Symbol, Dodopayments::Models::WebhookPayload::Data::Refund::PayloadType]
116
- required :payload_type, enum: -> { Dodopayments::WebhookPayload::Data::Refund::PayloadType }
117
-
118
- # @!method initialize(payload_type:)
119
- # @param payload_type [Symbol, Dodopayments::Models::WebhookPayload::Data::Refund::PayloadType]
120
-
121
- module PayloadType
122
- extend Dodopayments::Internal::Type::Enum
99
+ # @return [Symbol, :Refund]
100
+ required :payload_type, const: :Refund
123
101
 
124
- REFUND = :Refund
125
-
126
- # @!method self.values
127
- # @return [Array<Symbol>]
128
- end
102
+ # @!method initialize(payload_type: :Refund)
103
+ # @param payload_type [Symbol, :Refund]
129
104
  end
130
105
 
131
106
  class Dispute < Dodopayments::Models::GetDispute
132
107
  # @!attribute payload_type
133
108
  #
134
- # @return [Symbol, Dodopayments::Models::WebhookPayload::Data::Dispute::PayloadType]
135
- required :payload_type, enum: -> { Dodopayments::WebhookPayload::Data::Dispute::PayloadType }
136
-
137
- # @!method initialize(payload_type:)
138
- # @param payload_type [Symbol, Dodopayments::Models::WebhookPayload::Data::Dispute::PayloadType]
109
+ # @return [Symbol, :Dispute]
110
+ required :payload_type, const: :Dispute
139
111
 
140
- module PayloadType
141
- extend Dodopayments::Internal::Type::Enum
142
-
143
- DISPUTE = :Dispute
144
-
145
- # @!method self.values
146
- # @return [Array<Symbol>]
147
- end
112
+ # @!method initialize(payload_type: :Dispute)
113
+ # @param payload_type [Symbol, :Dispute]
148
114
  end
149
115
 
150
116
  class LicenseKey < Dodopayments::Models::LicenseKey
151
117
  # @!attribute payload_type
152
118
  #
153
- # @return [Symbol, Dodopayments::Models::WebhookPayload::Data::LicenseKey::PayloadType]
154
- required :payload_type, enum: -> { Dodopayments::WebhookPayload::Data::LicenseKey::PayloadType }
155
-
156
- # @!method initialize(payload_type:)
157
- # @param payload_type [Symbol, Dodopayments::Models::WebhookPayload::Data::LicenseKey::PayloadType]
158
-
159
- module PayloadType
160
- extend Dodopayments::Internal::Type::Enum
119
+ # @return [Symbol, :LicenseKey]
120
+ required :payload_type, const: :LicenseKey
161
121
 
162
- LICENSE_KEY = :LicenseKey
163
-
164
- # @!method self.values
165
- # @return [Array<Symbol>]
166
- end
122
+ # @!method initialize(payload_type: :LicenseKey)
123
+ # @param payload_type [Symbol, :LicenseKey]
167
124
  end
168
125
 
169
126
  class CreditLedgerEntry < Dodopayments::Models::CreditEntitlements::CreditLedgerEntry
170
127
  # @!attribute payload_type
171
128
  #
172
- # @return [Symbol, Dodopayments::Models::WebhookPayload::Data::CreditLedgerEntry::PayloadType]
173
- required :payload_type, enum: -> { Dodopayments::WebhookPayload::Data::CreditLedgerEntry::PayloadType }
129
+ # @return [Symbol, :CreditLedgerEntry]
130
+ required :payload_type, const: :CreditLedgerEntry
174
131
 
175
- # @!method initialize(payload_type:)
132
+ # @!method initialize(payload_type: :CreditLedgerEntry)
176
133
  # Response for a ledger entry
177
134
  #
178
- # @param payload_type [Symbol, Dodopayments::Models::WebhookPayload::Data::CreditLedgerEntry::PayloadType]
179
-
180
- module PayloadType
181
- extend Dodopayments::Internal::Type::Enum
182
-
183
- CREDIT_LEDGER_ENTRY = :CreditLedgerEntry
184
-
185
- # @!method self.values
186
- # @return [Array<Symbol>]
187
- end
135
+ # @param payload_type [Symbol, :CreditLedgerEntry]
188
136
  end
189
137
 
190
138
  class CreditBalanceLow < Dodopayments::Internal::Type::BaseModel
@@ -210,8 +158,8 @@ module Dodopayments
210
158
 
211
159
  # @!attribute payload_type
212
160
  #
213
- # @return [Symbol, Dodopayments::Models::WebhookPayload::Data::CreditBalanceLow::PayloadType]
214
- required :payload_type, enum: -> { Dodopayments::WebhookPayload::Data::CreditBalanceLow::PayloadType }
161
+ # @return [Symbol, :CreditBalanceLow]
162
+ required :payload_type, const: :CreditBalanceLow
215
163
 
216
164
  # @!attribute subscription_credits_amount
217
165
  #
@@ -233,26 +181,16 @@ module Dodopayments
233
181
  # @return [Integer]
234
182
  required :threshold_percent, Integer
235
183
 
236
- # @!method initialize(available_balance:, credit_entitlement_id:, credit_entitlement_name:, customer_id:, payload_type:, subscription_credits_amount:, subscription_id:, threshold_amount:, threshold_percent:)
184
+ # @!method initialize(available_balance:, credit_entitlement_id:, credit_entitlement_name:, customer_id:, subscription_credits_amount:, subscription_id:, threshold_amount:, threshold_percent:, payload_type: :CreditBalanceLow)
237
185
  # @param available_balance [String]
238
186
  # @param credit_entitlement_id [String]
239
187
  # @param credit_entitlement_name [String]
240
188
  # @param customer_id [String]
241
- # @param payload_type [Symbol, Dodopayments::Models::WebhookPayload::Data::CreditBalanceLow::PayloadType]
242
189
  # @param subscription_credits_amount [String]
243
190
  # @param subscription_id [String]
244
191
  # @param threshold_amount [String]
245
192
  # @param threshold_percent [Integer]
246
-
247
- # @see Dodopayments::Models::WebhookPayload::Data::CreditBalanceLow#payload_type
248
- module PayloadType
249
- extend Dodopayments::Internal::Type::Enum
250
-
251
- CREDIT_BALANCE_LOW = :CreditBalanceLow
252
-
253
- # @!method self.values
254
- # @return [Array<Symbol>]
255
- end
193
+ # @param payload_type [Symbol, :CreditBalanceLow]
256
194
  end
257
195
 
258
196
  class AbandonedCheckout < Dodopayments::Internal::Type::BaseModel
@@ -274,8 +212,8 @@ module Dodopayments
274
212
 
275
213
  # @!attribute payload_type
276
214
  #
277
- # @return [Symbol, Dodopayments::Models::WebhookPayload::Data::AbandonedCheckout::PayloadType]
278
- required :payload_type, enum: -> { Dodopayments::WebhookPayload::Data::AbandonedCheckout::PayloadType }
215
+ # @return [Symbol, :AbandonedCheckout]
216
+ required :payload_type, const: :AbandonedCheckout
279
217
 
280
218
  # @!attribute payment_id
281
219
  #
@@ -292,14 +230,14 @@ module Dodopayments
292
230
  # @return [String, nil]
293
231
  optional :recovered_payment_id, String, nil?: true
294
232
 
295
- # @!method initialize(abandoned_at:, abandonment_reason:, customer_id:, payload_type:, payment_id:, status:, recovered_payment_id: nil)
233
+ # @!method initialize(abandoned_at:, abandonment_reason:, customer_id:, payment_id:, status:, recovered_payment_id: nil, payload_type: :AbandonedCheckout)
296
234
  # @param abandoned_at [Time]
297
235
  # @param abandonment_reason [Symbol, Dodopayments::Models::WebhookPayload::Data::AbandonedCheckout::AbandonmentReason]
298
236
  # @param customer_id [String]
299
- # @param payload_type [Symbol, Dodopayments::Models::WebhookPayload::Data::AbandonedCheckout::PayloadType]
300
237
  # @param payment_id [String]
301
238
  # @param status [Symbol, Dodopayments::Models::WebhookPayload::Data::AbandonedCheckout::Status]
302
239
  # @param recovered_payment_id [String, nil]
240
+ # @param payload_type [Symbol, :AbandonedCheckout]
303
241
 
304
242
  # @see Dodopayments::Models::WebhookPayload::Data::AbandonedCheckout#abandonment_reason
305
243
  module AbandonmentReason
@@ -312,16 +250,6 @@ module Dodopayments
312
250
  # @return [Array<Symbol>]
313
251
  end
314
252
 
315
- # @see Dodopayments::Models::WebhookPayload::Data::AbandonedCheckout#payload_type
316
- module PayloadType
317
- extend Dodopayments::Internal::Type::Enum
318
-
319
- ABANDONED_CHECKOUT = :AbandonedCheckout
320
-
321
- # @!method self.values
322
- # @return [Array<Symbol>]
323
- end
324
-
325
253
  # @see Dodopayments::Models::WebhookPayload::Data::AbandonedCheckout#status
326
254
  module Status
327
255
  extend Dodopayments::Internal::Type::Enum
@@ -350,8 +278,8 @@ module Dodopayments
350
278
 
351
279
  # @!attribute payload_type
352
280
  #
353
- # @return [Symbol, Dodopayments::Models::WebhookPayload::Data::DunningAttempt::PayloadType]
354
- required :payload_type, enum: -> { Dodopayments::WebhookPayload::Data::DunningAttempt::PayloadType }
281
+ # @return [Symbol, :DunningAttempt]
282
+ required :payload_type, const: :DunningAttempt
355
283
 
356
284
  # @!attribute status
357
285
  #
@@ -373,24 +301,14 @@ module Dodopayments
373
301
  # @return [String, nil]
374
302
  optional :payment_id, String, nil?: true
375
303
 
376
- # @!method initialize(created_at:, customer_id:, payload_type:, status:, subscription_id:, trigger_state:, payment_id: nil)
304
+ # @!method initialize(created_at:, customer_id:, status:, subscription_id:, trigger_state:, payment_id: nil, payload_type: :DunningAttempt)
377
305
  # @param created_at [Time]
378
306
  # @param customer_id [String]
379
- # @param payload_type [Symbol, Dodopayments::Models::WebhookPayload::Data::DunningAttempt::PayloadType]
380
307
  # @param status [Symbol, Dodopayments::Models::WebhookPayload::Data::DunningAttempt::Status]
381
308
  # @param subscription_id [String]
382
309
  # @param trigger_state [Symbol, Dodopayments::Models::WebhookPayload::Data::DunningAttempt::TriggerState]
383
310
  # @param payment_id [String, nil]
384
-
385
- # @see Dodopayments::Models::WebhookPayload::Data::DunningAttempt#payload_type
386
- module PayloadType
387
- extend Dodopayments::Internal::Type::Enum
388
-
389
- DUNNING_ATTEMPT = :DunningAttempt
390
-
391
- # @!method self.values
392
- # @return [Array<Symbol>]
393
- end
311
+ # @param payload_type [Symbol, :DunningAttempt]
394
312
 
395
313
  # @see Dodopayments::Models::WebhookPayload::Data::DunningAttempt#status
396
314
  module Status
@@ -419,23 +337,14 @@ module Dodopayments
419
337
  class EntitlementGrant < Dodopayments::Models::Entitlements::EntitlementGrant
420
338
  # @!attribute payload_type
421
339
  #
422
- # @return [Symbol, Dodopayments::Models::WebhookPayload::Data::EntitlementGrant::PayloadType]
423
- required :payload_type, enum: -> { Dodopayments::WebhookPayload::Data::EntitlementGrant::PayloadType }
340
+ # @return [Symbol, :EntitlementGrant]
341
+ required :payload_type, const: :EntitlementGrant
424
342
 
425
- # @!method initialize(payload_type:)
343
+ # @!method initialize(payload_type: :EntitlementGrant)
426
344
  # Detailed view of a single entitlement grant: who it's for, its lifecycle state,
427
345
  # and any integration-specific delivery payload.
428
346
  #
429
- # @param payload_type [Symbol, Dodopayments::Models::WebhookPayload::Data::EntitlementGrant::PayloadType]
430
-
431
- module PayloadType
432
- extend Dodopayments::Internal::Type::Enum
433
-
434
- ENTITLEMENT_GRANT = :EntitlementGrant
435
-
436
- # @!method self.values
437
- # @return [Array<Symbol>]
438
- end
347
+ # @param payload_type [Symbol, :EntitlementGrant]
439
348
  end
440
349
 
441
350
  # @!method self.variants
@@ -6,7 +6,7 @@ module Dodopayments
6
6
  # Some parameter documentations has been truncated, see
7
7
  # {Dodopayments::Models::CheckoutSessionCreateParams} for more details.
8
8
  #
9
- # @overload create(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, request_options: {})
9
+ # @overload create(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, request_options: {})
10
10
  #
11
11
  # @param product_cart [Array<Dodopayments::Models::ProductItemReq>]
12
12
  #
@@ -26,7 +26,9 @@ module Dodopayments
26
26
  #
27
27
  # @param customization [Dodopayments::Models::CheckoutSessionCustomization] Customization for the checkout session page
28
28
  #
29
- # @param discount_code [String, nil]
29
+ # @param discount_code [String, nil] DEPRECATED: Use discount_codes instead. Cannot be used together with discount_co
30
+ #
31
+ # @param discount_codes [Array<String>, nil] Stacked discount codes to apply, in order. Max 20.
30
32
  #
31
33
  # @param feature_flags [Dodopayments::Models::CheckoutSessionFlags]
32
34
  #
@@ -88,7 +90,7 @@ module Dodopayments
88
90
  # Some parameter documentations has been truncated, see
89
91
  # {Dodopayments::Models::CheckoutSessionPreviewParams} for more details.
90
92
  #
91
- # @overload preview(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, request_options: {})
93
+ # @overload preview(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, request_options: {})
92
94
  #
93
95
  # @param product_cart [Array<Dodopayments::Models::ProductItemReq>]
94
96
  #
@@ -108,7 +110,9 @@ module Dodopayments
108
110
  #
109
111
  # @param customization [Dodopayments::Models::CheckoutSessionCustomization] Customization for the checkout session page
110
112
  #
111
- # @param discount_code [String, nil]
113
+ # @param discount_code [String, nil] DEPRECATED: Use discount_codes instead. Cannot be used together with discount_co
114
+ #
115
+ # @param discount_codes [Array<String>, nil] Stacked discount codes to apply, in order. Max 20.
112
116
  #
113
117
  # @param feature_flags [Dodopayments::Models::CheckoutSessionFlags]
114
118
  #
@@ -8,7 +8,7 @@ module Dodopayments
8
8
  # Some parameter documentations has been truncated, see
9
9
  # {Dodopayments::Models::PaymentCreateParams} for more details.
10
10
  #
11
- # @overload create(billing:, customer:, product_cart:, adaptive_currency_fees_inclusive: nil, allowed_payment_method_types: nil, billing_currency: nil, discount_code: nil, force_3ds: nil, metadata: nil, payment_link: nil, payment_method_id: nil, redirect_immediately: nil, require_phone_number: nil, return_url: nil, short_link: nil, show_saved_payment_methods: nil, tax_id: nil, request_options: {})
11
+ # @overload create(billing:, customer:, product_cart:, adaptive_currency_fees_inclusive: nil, allowed_payment_method_types: nil, billing_currency: nil, discount_code: nil, discount_codes: nil, force_3ds: nil, metadata: nil, payment_link: nil, payment_method_id: nil, redirect_immediately: nil, require_phone_number: nil, return_url: nil, short_link: nil, show_saved_payment_methods: nil, tax_id: nil, request_options: {})
12
12
  #
13
13
  # @param billing [Dodopayments::Models::BillingAddress] Billing address details for the payment
14
14
  #
@@ -22,7 +22,9 @@ module Dodopayments
22
22
  #
23
23
  # @param billing_currency [Symbol, Dodopayments::Models::Currency, nil] Fix the currency in which the end customer is billed.
24
24
  #
25
- # @param discount_code [String, nil] Discount Code to apply to the transaction
25
+ # @param discount_code [String, nil] DEPRECATED: Use discount_codes instead. Cannot be used together with discount_co
26
+ #
27
+ # @param discount_codes [Array<String>, nil] Stacked discount codes to apply, in order of application. Max 20.
26
28
  #
27
29
  # @param force_3ds [Boolean, nil] Override merchant default 3DS behaviour for this payment
28
30
  #
@@ -8,7 +8,7 @@ module Dodopayments
8
8
  # Some parameter documentations has been truncated, see
9
9
  # {Dodopayments::Models::SubscriptionCreateParams} for more details.
10
10
  #
11
- # @overload create(billing:, customer:, product_id:, quantity:, addons: nil, allowed_payment_method_types: nil, billing_currency: nil, discount_code: nil, force_3ds: nil, mandate_min_amount_inr_paise: nil, metadata: nil, on_demand: nil, one_time_product_cart: nil, payment_link: nil, payment_method_id: nil, redirect_immediately: nil, require_phone_number: nil, return_url: nil, short_link: nil, show_saved_payment_methods: nil, tax_id: nil, trial_period_days: nil, request_options: {})
11
+ # @overload create(billing:, customer:, product_id:, quantity:, addons: nil, allowed_payment_method_types: nil, billing_currency: nil, discount_code: nil, discount_codes: nil, force_3ds: nil, mandate_min_amount_inr_paise: nil, metadata: nil, on_demand: nil, one_time_product_cart: nil, payment_link: nil, payment_method_id: nil, redirect_immediately: nil, require_phone_number: nil, return_url: nil, short_link: nil, show_saved_payment_methods: nil, tax_id: nil, trial_period_days: nil, request_options: {})
12
12
  #
13
13
  # @param billing [Dodopayments::Models::BillingAddress] Billing address information for the subscription
14
14
  #
@@ -24,7 +24,9 @@ module Dodopayments
24
24
  #
25
25
  # @param billing_currency [Symbol, Dodopayments::Models::Currency, nil] Fix the currency in which the end customer is billed.
26
26
  #
27
- # @param discount_code [String, nil] Discount Code to apply to the subscription
27
+ # @param discount_code [String, nil] DEPRECATED: Use discount_codes instead. Cannot be used together with discount_co
28
+ #
29
+ # @param discount_codes [Array<String>, nil] Stacked discount codes to apply, in order of application. Max 20.
28
30
  #
29
31
  # @param force_3ds [Boolean, nil] Override merchant default 3DS behaviour for this subscription
30
32
  #
@@ -192,7 +194,7 @@ module Dodopayments
192
194
  # Some parameter documentations has been truncated, see
193
195
  # {Dodopayments::Models::SubscriptionChangePlanParams} for more details.
194
196
  #
195
- # @overload change_plan(subscription_id, product_id:, proration_billing_mode:, quantity:, adaptive_currency_fees_inclusive: nil, addons: nil, discount_code: nil, effective_at: nil, metadata: nil, on_payment_failure: nil, request_options: {})
197
+ # @overload change_plan(subscription_id, product_id:, proration_billing_mode:, quantity:, adaptive_currency_fees_inclusive: nil, addons: nil, discount_code: nil, discount_codes: nil, effective_at: nil, metadata: nil, on_payment_failure: nil, request_options: {})
196
198
  #
197
199
  # @param subscription_id [String] Subscription Id
198
200
  #
@@ -206,7 +208,9 @@ module Dodopayments
206
208
  #
207
209
  # @param addons [Array<Dodopayments::Models::AttachAddon>, nil] Addons for the new plan.
208
210
  #
209
- # @param discount_code [String, nil] Optional discount code to apply to the new plan.
211
+ # @param discount_code [String, nil] DEPRECATED: Use discount_codes instead. Cannot be used together with discount_co
212
+ #
213
+ # @param discount_codes [Array<String>, nil] Stacked discount codes to apply to the new plan. Max 20.
210
214
  #
211
215
  # @param effective_at [Symbol, Dodopayments::Models::UpdateSubscriptionPlanReq::EffectiveAt] When to apply the plan change.
212
216
  #
@@ -268,7 +272,7 @@ module Dodopayments
268
272
  # Some parameter documentations has been truncated, see
269
273
  # {Dodopayments::Models::SubscriptionPreviewChangePlanParams} for more details.
270
274
  #
271
- # @overload preview_change_plan(subscription_id, product_id:, proration_billing_mode:, quantity:, adaptive_currency_fees_inclusive: nil, addons: nil, discount_code: nil, effective_at: nil, metadata: nil, on_payment_failure: nil, request_options: {})
275
+ # @overload preview_change_plan(subscription_id, product_id:, proration_billing_mode:, quantity:, adaptive_currency_fees_inclusive: nil, addons: nil, discount_code: nil, discount_codes: nil, effective_at: nil, metadata: nil, on_payment_failure: nil, request_options: {})
272
276
  #
273
277
  # @param subscription_id [String] Subscription Id
274
278
  #
@@ -282,7 +286,9 @@ module Dodopayments
282
286
  #
283
287
  # @param addons [Array<Dodopayments::Models::AttachAddon>, nil] Addons for the new plan.
284
288
  #
285
- # @param discount_code [String, nil] Optional discount code to apply to the new plan.
289
+ # @param discount_code [String, nil] DEPRECATED: Use discount_codes instead. Cannot be used together with discount_co
290
+ #
291
+ # @param discount_codes [Array<String>, nil] Stacked discount codes to apply to the new plan. Max 20.
286
292
  #
287
293
  # @param effective_at [Symbol, Dodopayments::Models::UpdateSubscriptionPlanReq::EffectiveAt] When to apply the plan change.
288
294
  #
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Dodopayments
4
- VERSION = "2.9.1"
4
+ VERSION = "2.10.0"
5
5
  end
@@ -33,11 +33,7 @@ module Dodopayments
33
33
  attr_accessor :timestamp
34
34
 
35
35
  # The event type
36
- sig do
37
- returns(
38
- Dodopayments::AbandonedCheckoutDetectedWebhookEvent::Type::TaggedSymbol
39
- )
40
- end
36
+ sig { returns(Symbol) }
41
37
  attr_accessor :type
42
38
 
43
39
  sig do
@@ -46,8 +42,7 @@ module Dodopayments
46
42
  data:
47
43
  Dodopayments::AbandonedCheckoutDetectedWebhookEvent::Data::OrHash,
48
44
  timestamp: Time,
49
- type:
50
- Dodopayments::AbandonedCheckoutDetectedWebhookEvent::Type::OrSymbol
45
+ type: Symbol
51
46
  ).returns(T.attached_class)
52
47
  end
53
48
  def self.new(
@@ -59,7 +54,7 @@ module Dodopayments
59
54
  # The timestamp of when the event occurred
60
55
  timestamp:,
61
56
  # The event type
62
- type:
57
+ type: :"abandoned_checkout.detected"
63
58
  )
64
59
  end
65
60
 
@@ -69,8 +64,7 @@ module Dodopayments
69
64
  business_id: String,
70
65
  data: Dodopayments::AbandonedCheckoutDetectedWebhookEvent::Data,
71
66
  timestamp: Time,
72
- type:
73
- Dodopayments::AbandonedCheckoutDetectedWebhookEvent::Type::TaggedSymbol
67
+ type: Symbol
74
68
  }
75
69
  )
76
70
  end
@@ -236,36 +230,6 @@ module Dodopayments
236
230
  end
237
231
  end
238
232
  end
239
-
240
- # The event type
241
- module Type
242
- extend Dodopayments::Internal::Type::Enum
243
-
244
- TaggedSymbol =
245
- T.type_alias do
246
- T.all(
247
- Symbol,
248
- Dodopayments::AbandonedCheckoutDetectedWebhookEvent::Type
249
- )
250
- end
251
- OrSymbol = T.type_alias { T.any(Symbol, String) }
252
-
253
- ABANDONED_CHECKOUT_DETECTED =
254
- T.let(
255
- :"abandoned_checkout.detected",
256
- Dodopayments::AbandonedCheckoutDetectedWebhookEvent::Type::TaggedSymbol
257
- )
258
-
259
- sig do
260
- override.returns(
261
- T::Array[
262
- Dodopayments::AbandonedCheckoutDetectedWebhookEvent::Type::TaggedSymbol
263
- ]
264
- )
265
- end
266
- def self.values
267
- end
268
- end
269
233
  end
270
234
  end
271
235
  end
@@ -35,11 +35,7 @@ module Dodopayments
35
35
  attr_accessor :timestamp
36
36
 
37
37
  # The event type
38
- sig do
39
- returns(
40
- Dodopayments::AbandonedCheckoutRecoveredWebhookEvent::Type::TaggedSymbol
41
- )
42
- end
38
+ sig { returns(Symbol) }
43
39
  attr_accessor :type
44
40
 
45
41
  sig do
@@ -48,8 +44,7 @@ module Dodopayments
48
44
  data:
49
45
  Dodopayments::AbandonedCheckoutRecoveredWebhookEvent::Data::OrHash,
50
46
  timestamp: Time,
51
- type:
52
- Dodopayments::AbandonedCheckoutRecoveredWebhookEvent::Type::OrSymbol
47
+ type: Symbol
53
48
  ).returns(T.attached_class)
54
49
  end
55
50
  def self.new(
@@ -61,7 +56,7 @@ module Dodopayments
61
56
  # The timestamp of when the event occurred
62
57
  timestamp:,
63
58
  # The event type
64
- type:
59
+ type: :"abandoned_checkout.recovered"
65
60
  )
66
61
  end
67
62
 
@@ -71,8 +66,7 @@ module Dodopayments
71
66
  business_id: String,
72
67
  data: Dodopayments::AbandonedCheckoutRecoveredWebhookEvent::Data,
73
68
  timestamp: Time,
74
- type:
75
- Dodopayments::AbandonedCheckoutRecoveredWebhookEvent::Type::TaggedSymbol
69
+ type: Symbol
76
70
  }
77
71
  )
78
72
  end
@@ -238,36 +232,6 @@ module Dodopayments
238
232
  end
239
233
  end
240
234
  end
241
-
242
- # The event type
243
- module Type
244
- extend Dodopayments::Internal::Type::Enum
245
-
246
- TaggedSymbol =
247
- T.type_alias do
248
- T.all(
249
- Symbol,
250
- Dodopayments::AbandonedCheckoutRecoveredWebhookEvent::Type
251
- )
252
- end
253
- OrSymbol = T.type_alias { T.any(Symbol, String) }
254
-
255
- ABANDONED_CHECKOUT_RECOVERED =
256
- T.let(
257
- :"abandoned_checkout.recovered",
258
- Dodopayments::AbandonedCheckoutRecoveredWebhookEvent::Type::TaggedSymbol
259
- )
260
-
261
- sig do
262
- override.returns(
263
- T::Array[
264
- Dodopayments::AbandonedCheckoutRecoveredWebhookEvent::Type::TaggedSymbol
265
- ]
266
- )
267
- end
268
- def self.values
269
- end
270
- end
271
235
  end
272
236
  end
273
237
  end
@@ -82,9 +82,16 @@ module Dodopayments
82
82
  end
83
83
  attr_writer :customization
84
84
 
85
+ # DEPRECATED: Use discount_codes instead. Cannot be used together with
86
+ # discount_codes.
85
87
  sig { returns(T.nilable(String)) }
86
88
  attr_accessor :discount_code
87
89
 
90
+ # Stacked discount codes to apply, in order. Max 20. Cannot be used together with
91
+ # discount_code.
92
+ sig { returns(T.nilable(T::Array[String])) }
93
+ attr_accessor :discount_codes
94
+
88
95
  sig { returns(T.nilable(Dodopayments::CheckoutSessionFlags)) }
89
96
  attr_reader :feature_flags
90
97
 
@@ -181,6 +188,7 @@ module Dodopayments
181
188
  ),
182
189
  customization: Dodopayments::CheckoutSessionCustomization::OrHash,
183
190
  discount_code: T.nilable(String),
191
+ discount_codes: T.nilable(T::Array[String]),
184
192
  feature_flags: Dodopayments::CheckoutSessionFlags::OrHash,
185
193
  force_3ds: T.nilable(T::Boolean),
186
194
  mandate_min_amount_inr_paise: T.nilable(Integer),
@@ -220,7 +228,12 @@ module Dodopayments
220
228
  customer: nil,
221
229
  # Customization for the checkout session page
222
230
  customization: nil,
231
+ # DEPRECATED: Use discount_codes instead. Cannot be used together with
232
+ # discount_codes.
223
233
  discount_code: nil,
234
+ # Stacked discount codes to apply, in order. Max 20. Cannot be used together with
235
+ # discount_code.
236
+ discount_codes: nil,
224
237
  feature_flags: nil,
225
238
  # Override merchant default 3DS behaviour for this session
226
239
  force_3ds: nil,
@@ -276,6 +289,7 @@ module Dodopayments
276
289
  ),
277
290
  customization: Dodopayments::CheckoutSessionCustomization,
278
291
  discount_code: T.nilable(String),
292
+ discount_codes: T.nilable(T::Array[String]),
279
293
  feature_flags: Dodopayments::CheckoutSessionFlags,
280
294
  force_3ds: T.nilable(T::Boolean),
281
295
  mandate_min_amount_inr_paise: T.nilable(Integer),