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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +15 -0
- data/README.md +1 -1
- data/lib/dodopayments/internal/transport/base_client.rb +2 -0
- data/lib/dodopayments/internal/type/union.rb +21 -7
- data/lib/dodopayments/models/abandoned_checkout_detected_webhook_event.rb +4 -16
- data/lib/dodopayments/models/abandoned_checkout_recovered_webhook_event.rb +4 -16
- data/lib/dodopayments/models/checkout_session_request.rb +15 -2
- data/lib/dodopayments/models/credit_added_webhook_event.rb +4 -16
- data/lib/dodopayments/models/credit_balance_low_webhook_event.rb +4 -16
- data/lib/dodopayments/models/credit_deducted_webhook_event.rb +4 -16
- data/lib/dodopayments/models/credit_expired_webhook_event.rb +4 -16
- data/lib/dodopayments/models/credit_manual_adjustment_webhook_event.rb +4 -16
- data/lib/dodopayments/models/credit_overage_charged_webhook_event.rb +4 -16
- data/lib/dodopayments/models/credit_overage_reset_webhook_event.rb +4 -16
- data/lib/dodopayments/models/credit_rolled_over_webhook_event.rb +4 -16
- data/lib/dodopayments/models/credit_rollover_forfeited_webhook_event.rb +4 -16
- data/lib/dodopayments/models/dispute_accepted_webhook_event.rb +4 -16
- data/lib/dodopayments/models/dispute_cancelled_webhook_event.rb +4 -16
- data/lib/dodopayments/models/dispute_challenged_webhook_event.rb +4 -16
- data/lib/dodopayments/models/dispute_expired_webhook_event.rb +4 -16
- data/lib/dodopayments/models/dispute_lost_webhook_event.rb +4 -16
- data/lib/dodopayments/models/dispute_opened_webhook_event.rb +4 -16
- data/lib/dodopayments/models/dispute_won_webhook_event.rb +4 -16
- data/lib/dodopayments/models/dunning_recovered_webhook_event.rb +4 -16
- data/lib/dodopayments/models/dunning_started_webhook_event.rb +4 -16
- data/lib/dodopayments/models/entitlement_grant_created_webhook_event.rb +4 -16
- data/lib/dodopayments/models/entitlement_grant_delivered_webhook_event.rb +4 -16
- data/lib/dodopayments/models/entitlement_grant_failed_webhook_event.rb +4 -16
- data/lib/dodopayments/models/entitlement_grant_revoked_webhook_event.rb +4 -16
- data/lib/dodopayments/models/license_key_created_webhook_event.rb +4 -16
- data/lib/dodopayments/models/payment.rb +153 -3
- data/lib/dodopayments/models/payment_cancelled_webhook_event.rb +4 -16
- data/lib/dodopayments/models/payment_create_params.rb +15 -3
- data/lib/dodopayments/models/payment_create_response.rb +14 -3
- data/lib/dodopayments/models/payment_failed_webhook_event.rb +4 -16
- data/lib/dodopayments/models/payment_processing_webhook_event.rb +4 -16
- data/lib/dodopayments/models/payment_succeeded_webhook_event.rb +4 -16
- data/lib/dodopayments/models/payout_list_response.rb +6 -3
- data/lib/dodopayments/models/price.rb +20 -48
- data/lib/dodopayments/models/product.rb +3 -3
- data/lib/dodopayments/models/product_create_params.rb +3 -3
- data/lib/dodopayments/models/product_item_req.rb +42 -1
- data/lib/dodopayments/models/product_update_params.rb +3 -3
- data/lib/dodopayments/models/refund_failed_webhook_event.rb +4 -16
- data/lib/dodopayments/models/refund_succeeded_webhook_event.rb +4 -16
- data/lib/dodopayments/models/subscription.rb +153 -5
- data/lib/dodopayments/models/subscription_active_webhook_event.rb +4 -16
- data/lib/dodopayments/models/subscription_cancelled_webhook_event.rb +4 -16
- data/lib/dodopayments/models/subscription_create_params.rb +15 -3
- data/lib/dodopayments/models/subscription_create_response.rb +14 -3
- data/lib/dodopayments/models/subscription_expired_webhook_event.rb +4 -16
- data/lib/dodopayments/models/subscription_failed_webhook_event.rb +4 -16
- data/lib/dodopayments/models/subscription_list_response.rb +36 -5
- data/lib/dodopayments/models/subscription_on_hold_webhook_event.rb +4 -16
- data/lib/dodopayments/models/subscription_plan_changed_webhook_event.rb +4 -16
- data/lib/dodopayments/models/subscription_preview_change_plan_response.rb +21 -49
- data/lib/dodopayments/models/subscription_renewed_webhook_event.rb +4 -16
- data/lib/dodopayments/models/subscription_update_payment_method_params.rb +12 -30
- data/lib/dodopayments/models/subscription_updated_webhook_event.rb +4 -16
- data/lib/dodopayments/models/unsafe_unwrap_webhook_event.rb +41 -39
- data/lib/dodopayments/models/unwrap_webhook_event.rb +41 -39
- data/lib/dodopayments/models/update_subscription_plan_req.rb +17 -6
- data/lib/dodopayments/models/webhook_event_type.rb +3 -0
- data/lib/dodopayments/models/webhook_payload.rb +52 -143
- data/lib/dodopayments/resources/checkout_sessions.rb +8 -4
- data/lib/dodopayments/resources/payments.rb +4 -2
- data/lib/dodopayments/resources/subscriptions.rb +12 -6
- data/lib/dodopayments/version.rb +1 -1
- data/rbi/dodopayments/models/abandoned_checkout_detected_webhook_event.rbi +4 -40
- data/rbi/dodopayments/models/abandoned_checkout_recovered_webhook_event.rbi +4 -40
- data/rbi/dodopayments/models/checkout_session_request.rbi +14 -0
- data/rbi/dodopayments/models/credit_added_webhook_event.rbi +4 -29
- data/rbi/dodopayments/models/credit_balance_low_webhook_event.rbi +4 -33
- data/rbi/dodopayments/models/credit_deducted_webhook_event.rbi +4 -33
- data/rbi/dodopayments/models/credit_expired_webhook_event.rbi +4 -33
- data/rbi/dodopayments/models/credit_manual_adjustment_webhook_event.rbi +4 -39
- data/rbi/dodopayments/models/credit_overage_charged_webhook_event.rbi +4 -36
- data/rbi/dodopayments/models/credit_overage_reset_webhook_event.rbi +4 -36
- data/rbi/dodopayments/models/credit_rolled_over_webhook_event.rbi +4 -33
- data/rbi/dodopayments/models/credit_rollover_forfeited_webhook_event.rbi +4 -40
- data/rbi/dodopayments/models/dispute_accepted_webhook_event.rbi +4 -33
- data/rbi/dodopayments/models/dispute_cancelled_webhook_event.rbi +4 -33
- data/rbi/dodopayments/models/dispute_challenged_webhook_event.rbi +4 -34
- data/rbi/dodopayments/models/dispute_expired_webhook_event.rbi +4 -33
- data/rbi/dodopayments/models/dispute_lost_webhook_event.rbi +4 -29
- data/rbi/dodopayments/models/dispute_opened_webhook_event.rbi +4 -33
- data/rbi/dodopayments/models/dispute_won_webhook_event.rbi +4 -29
- data/rbi/dodopayments/models/dunning_recovered_webhook_event.rbi +4 -33
- data/rbi/dodopayments/models/dunning_started_webhook_event.rbi +4 -33
- data/rbi/dodopayments/models/entitlement_grant_created_webhook_event.rbi +4 -40
- data/rbi/dodopayments/models/entitlement_grant_delivered_webhook_event.rbi +4 -40
- data/rbi/dodopayments/models/entitlement_grant_failed_webhook_event.rbi +4 -39
- data/rbi/dodopayments/models/entitlement_grant_revoked_webhook_event.rbi +4 -40
- data/rbi/dodopayments/models/license_key_created_webhook_event.rbi +4 -34
- data/rbi/dodopayments/models/payment.rbi +170 -2
- data/rbi/dodopayments/models/payment_cancelled_webhook_event.rbi +4 -33
- data/rbi/dodopayments/models/payment_create_params.rbi +14 -2
- data/rbi/dodopayments/models/payment_create_response.rbi +12 -2
- data/rbi/dodopayments/models/payment_failed_webhook_event.rbi +4 -33
- data/rbi/dodopayments/models/payment_processing_webhook_event.rbi +4 -34
- data/rbi/dodopayments/models/payment_succeeded_webhook_event.rbi +4 -33
- data/rbi/dodopayments/models/price.rbi +18 -90
- data/rbi/dodopayments/models/product_item_req.rbi +74 -3
- data/rbi/dodopayments/models/refund_failed_webhook_event.rbi +4 -31
- data/rbi/dodopayments/models/refund_succeeded_webhook_event.rbi +4 -33
- data/rbi/dodopayments/models/subscription.rbi +173 -4
- data/rbi/dodopayments/models/subscription_active_webhook_event.rbi +4 -36
- data/rbi/dodopayments/models/subscription_cancelled_webhook_event.rbi +4 -36
- data/rbi/dodopayments/models/subscription_create_params.rbi +14 -2
- data/rbi/dodopayments/models/subscription_create_response.rbi +12 -2
- data/rbi/dodopayments/models/subscription_expired_webhook_event.rbi +4 -36
- data/rbi/dodopayments/models/subscription_failed_webhook_event.rbi +4 -36
- data/rbi/dodopayments/models/subscription_list_response.rbi +67 -4
- data/rbi/dodopayments/models/subscription_on_hold_webhook_event.rbi +4 -36
- data/rbi/dodopayments/models/subscription_plan_changed_webhook_event.rbi +4 -40
- data/rbi/dodopayments/models/subscription_preview_change_plan_response.rbi +18 -123
- data/rbi/dodopayments/models/subscription_renewed_webhook_event.rbi +4 -36
- data/rbi/dodopayments/models/subscription_update_payment_method_params.rbi +12 -96
- data/rbi/dodopayments/models/subscription_updated_webhook_event.rbi +4 -36
- data/rbi/dodopayments/models/update_subscription_plan_req.rbi +18 -8
- data/rbi/dodopayments/models/webhook_event_type.rbi +15 -0
- data/rbi/dodopayments/models/webhook_payload.rbi +46 -466
- data/rbi/dodopayments/resources/checkout_sessions.rbi +12 -0
- data/rbi/dodopayments/resources/payments.rbi +6 -1
- data/rbi/dodopayments/resources/subscriptions.rbi +22 -9
- data/sig/dodopayments/models/abandoned_checkout_detected_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/abandoned_checkout_recovered_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/checkout_session_request.rbs +5 -0
- data/sig/dodopayments/models/credit_added_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/credit_balance_low_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/credit_deducted_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/credit_expired_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/credit_manual_adjustment_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/credit_overage_charged_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/credit_overage_reset_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/credit_rolled_over_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/credit_rollover_forfeited_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/dispute_accepted_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/dispute_cancelled_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/dispute_challenged_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/dispute_expired_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/dispute_lost_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/dispute_opened_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/dispute_won_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/dunning_recovered_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/dunning_started_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/entitlement_grant_created_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/entitlement_grant_delivered_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/entitlement_grant_failed_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/entitlement_grant_revoked_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/license_key_created_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/payment.rbs +97 -0
- data/sig/dodopayments/models/payment_cancelled_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/payment_create_params.rbs +5 -0
- data/sig/dodopayments/models/payment_create_response.rbs +5 -0
- data/sig/dodopayments/models/payment_failed_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/payment_processing_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/payment_succeeded_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/price.rbs +15 -45
- data/sig/dodopayments/models/product_item_req.rbs +27 -3
- data/sig/dodopayments/models/refund_failed_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/refund_succeeded_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/subscription.rbs +97 -0
- data/sig/dodopayments/models/subscription_active_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/subscription_cancelled_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/subscription_create_params.rbs +5 -0
- data/sig/dodopayments/models/subscription_create_response.rbs +5 -0
- data/sig/dodopayments/models/subscription_expired_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/subscription_failed_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/subscription_list_response.rbs +24 -0
- data/sig/dodopayments/models/subscription_on_hold_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/subscription_plan_changed_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/subscription_preview_change_plan_response.rbs +15 -45
- data/sig/dodopayments/models/subscription_renewed_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/subscription_update_payment_method_params.rbs +8 -48
- data/sig/dodopayments/models/subscription_updated_webhook_event.rbs +4 -14
- data/sig/dodopayments/models/update_subscription_plan_req.rbs +5 -0
- data/sig/dodopayments/models/webhook_event_type.rbs +6 -0
- data/sig/dodopayments/models/webhook_payload.rbs +50 -213
- data/sig/dodopayments/resources/checkout_sessions.rbs +2 -0
- data/sig/dodopayments/resources/payments.rbs +1 -0
- data/sig/dodopayments/resources/subscriptions.rbs +3 -0
- metadata +2 -2
|
@@ -30,11 +30,7 @@ module Dodopayments
|
|
|
30
30
|
attr_accessor :timestamp
|
|
31
31
|
|
|
32
32
|
# The event type
|
|
33
|
-
sig
|
|
34
|
-
returns(
|
|
35
|
-
Dodopayments::EntitlementGrantFailedWebhookEvent::Type::TaggedSymbol
|
|
36
|
-
)
|
|
37
|
-
end
|
|
33
|
+
sig { returns(Symbol) }
|
|
38
34
|
attr_accessor :type
|
|
39
35
|
|
|
40
36
|
sig do
|
|
@@ -42,7 +38,7 @@ module Dodopayments
|
|
|
42
38
|
business_id: String,
|
|
43
39
|
data: Dodopayments::Entitlements::EntitlementGrant::OrHash,
|
|
44
40
|
timestamp: Time,
|
|
45
|
-
type:
|
|
41
|
+
type: Symbol
|
|
46
42
|
).returns(T.attached_class)
|
|
47
43
|
end
|
|
48
44
|
def self.new(
|
|
@@ -54,7 +50,7 @@ module Dodopayments
|
|
|
54
50
|
# The timestamp of when the event occurred
|
|
55
51
|
timestamp:,
|
|
56
52
|
# The event type
|
|
57
|
-
type:
|
|
53
|
+
type: :"entitlement_grant.failed"
|
|
58
54
|
)
|
|
59
55
|
end
|
|
60
56
|
|
|
@@ -64,43 +60,12 @@ module Dodopayments
|
|
|
64
60
|
business_id: String,
|
|
65
61
|
data: Dodopayments::Entitlements::EntitlementGrant,
|
|
66
62
|
timestamp: Time,
|
|
67
|
-
type:
|
|
68
|
-
Dodopayments::EntitlementGrantFailedWebhookEvent::Type::TaggedSymbol
|
|
63
|
+
type: Symbol
|
|
69
64
|
}
|
|
70
65
|
)
|
|
71
66
|
end
|
|
72
67
|
def to_hash
|
|
73
68
|
end
|
|
74
|
-
|
|
75
|
-
# The event type
|
|
76
|
-
module Type
|
|
77
|
-
extend Dodopayments::Internal::Type::Enum
|
|
78
|
-
|
|
79
|
-
TaggedSymbol =
|
|
80
|
-
T.type_alias do
|
|
81
|
-
T.all(
|
|
82
|
-
Symbol,
|
|
83
|
-
Dodopayments::EntitlementGrantFailedWebhookEvent::Type
|
|
84
|
-
)
|
|
85
|
-
end
|
|
86
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
87
|
-
|
|
88
|
-
ENTITLEMENT_GRANT_FAILED =
|
|
89
|
-
T.let(
|
|
90
|
-
:"entitlement_grant.failed",
|
|
91
|
-
Dodopayments::EntitlementGrantFailedWebhookEvent::Type::TaggedSymbol
|
|
92
|
-
)
|
|
93
|
-
|
|
94
|
-
sig do
|
|
95
|
-
override.returns(
|
|
96
|
-
T::Array[
|
|
97
|
-
Dodopayments::EntitlementGrantFailedWebhookEvent::Type::TaggedSymbol
|
|
98
|
-
]
|
|
99
|
-
)
|
|
100
|
-
end
|
|
101
|
-
def self.values
|
|
102
|
-
end
|
|
103
|
-
end
|
|
104
69
|
end
|
|
105
70
|
end
|
|
106
71
|
end
|
|
@@ -30,11 +30,7 @@ module Dodopayments
|
|
|
30
30
|
attr_accessor :timestamp
|
|
31
31
|
|
|
32
32
|
# The event type
|
|
33
|
-
sig
|
|
34
|
-
returns(
|
|
35
|
-
Dodopayments::EntitlementGrantRevokedWebhookEvent::Type::TaggedSymbol
|
|
36
|
-
)
|
|
37
|
-
end
|
|
33
|
+
sig { returns(Symbol) }
|
|
38
34
|
attr_accessor :type
|
|
39
35
|
|
|
40
36
|
sig do
|
|
@@ -42,8 +38,7 @@ module Dodopayments
|
|
|
42
38
|
business_id: String,
|
|
43
39
|
data: Dodopayments::Entitlements::EntitlementGrant::OrHash,
|
|
44
40
|
timestamp: Time,
|
|
45
|
-
type:
|
|
46
|
-
Dodopayments::EntitlementGrantRevokedWebhookEvent::Type::OrSymbol
|
|
41
|
+
type: Symbol
|
|
47
42
|
).returns(T.attached_class)
|
|
48
43
|
end
|
|
49
44
|
def self.new(
|
|
@@ -55,7 +50,7 @@ module Dodopayments
|
|
|
55
50
|
# The timestamp of when the event occurred
|
|
56
51
|
timestamp:,
|
|
57
52
|
# The event type
|
|
58
|
-
type:
|
|
53
|
+
type: :"entitlement_grant.revoked"
|
|
59
54
|
)
|
|
60
55
|
end
|
|
61
56
|
|
|
@@ -65,43 +60,12 @@ module Dodopayments
|
|
|
65
60
|
business_id: String,
|
|
66
61
|
data: Dodopayments::Entitlements::EntitlementGrant,
|
|
67
62
|
timestamp: Time,
|
|
68
|
-
type:
|
|
69
|
-
Dodopayments::EntitlementGrantRevokedWebhookEvent::Type::TaggedSymbol
|
|
63
|
+
type: Symbol
|
|
70
64
|
}
|
|
71
65
|
)
|
|
72
66
|
end
|
|
73
67
|
def to_hash
|
|
74
68
|
end
|
|
75
|
-
|
|
76
|
-
# The event type
|
|
77
|
-
module Type
|
|
78
|
-
extend Dodopayments::Internal::Type::Enum
|
|
79
|
-
|
|
80
|
-
TaggedSymbol =
|
|
81
|
-
T.type_alias do
|
|
82
|
-
T.all(
|
|
83
|
-
Symbol,
|
|
84
|
-
Dodopayments::EntitlementGrantRevokedWebhookEvent::Type
|
|
85
|
-
)
|
|
86
|
-
end
|
|
87
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
88
|
-
|
|
89
|
-
ENTITLEMENT_GRANT_REVOKED =
|
|
90
|
-
T.let(
|
|
91
|
-
:"entitlement_grant.revoked",
|
|
92
|
-
Dodopayments::EntitlementGrantRevokedWebhookEvent::Type::TaggedSymbol
|
|
93
|
-
)
|
|
94
|
-
|
|
95
|
-
sig do
|
|
96
|
-
override.returns(
|
|
97
|
-
T::Array[
|
|
98
|
-
Dodopayments::EntitlementGrantRevokedWebhookEvent::Type::TaggedSymbol
|
|
99
|
-
]
|
|
100
|
-
)
|
|
101
|
-
end
|
|
102
|
-
def self.values
|
|
103
|
-
end
|
|
104
|
-
end
|
|
105
69
|
end
|
|
106
70
|
end
|
|
107
71
|
end
|
|
@@ -26,9 +26,7 @@ module Dodopayments
|
|
|
26
26
|
attr_accessor :timestamp
|
|
27
27
|
|
|
28
28
|
# The event type
|
|
29
|
-
sig
|
|
30
|
-
returns(Dodopayments::LicenseKeyCreatedWebhookEvent::Type::TaggedSymbol)
|
|
31
|
-
end
|
|
29
|
+
sig { returns(Symbol) }
|
|
32
30
|
attr_accessor :type
|
|
33
31
|
|
|
34
32
|
sig do
|
|
@@ -36,7 +34,7 @@ module Dodopayments
|
|
|
36
34
|
business_id: String,
|
|
37
35
|
data: Dodopayments::LicenseKey::OrHash,
|
|
38
36
|
timestamp: Time,
|
|
39
|
-
type:
|
|
37
|
+
type: Symbol
|
|
40
38
|
).returns(T.attached_class)
|
|
41
39
|
end
|
|
42
40
|
def self.new(
|
|
@@ -46,7 +44,7 @@ module Dodopayments
|
|
|
46
44
|
# The timestamp of when the event occurred
|
|
47
45
|
timestamp:,
|
|
48
46
|
# The event type
|
|
49
|
-
type:
|
|
47
|
+
type: :"license_key.created"
|
|
50
48
|
)
|
|
51
49
|
end
|
|
52
50
|
|
|
@@ -56,40 +54,12 @@ module Dodopayments
|
|
|
56
54
|
business_id: String,
|
|
57
55
|
data: Dodopayments::LicenseKey,
|
|
58
56
|
timestamp: Time,
|
|
59
|
-
type:
|
|
60
|
-
Dodopayments::LicenseKeyCreatedWebhookEvent::Type::TaggedSymbol
|
|
57
|
+
type: Symbol
|
|
61
58
|
}
|
|
62
59
|
)
|
|
63
60
|
end
|
|
64
61
|
def to_hash
|
|
65
62
|
end
|
|
66
|
-
|
|
67
|
-
# The event type
|
|
68
|
-
module Type
|
|
69
|
-
extend Dodopayments::Internal::Type::Enum
|
|
70
|
-
|
|
71
|
-
TaggedSymbol =
|
|
72
|
-
T.type_alias do
|
|
73
|
-
T.all(Symbol, Dodopayments::LicenseKeyCreatedWebhookEvent::Type)
|
|
74
|
-
end
|
|
75
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
76
|
-
|
|
77
|
-
LICENSE_KEY_CREATED =
|
|
78
|
-
T.let(
|
|
79
|
-
:"license_key.created",
|
|
80
|
-
Dodopayments::LicenseKeyCreatedWebhookEvent::Type::TaggedSymbol
|
|
81
|
-
)
|
|
82
|
-
|
|
83
|
-
sig do
|
|
84
|
-
override.returns(
|
|
85
|
-
T::Array[
|
|
86
|
-
Dodopayments::LicenseKeyCreatedWebhookEvent::Type::TaggedSymbol
|
|
87
|
-
]
|
|
88
|
-
)
|
|
89
|
-
end
|
|
90
|
-
def self.values
|
|
91
|
-
end
|
|
92
|
-
end
|
|
93
63
|
end
|
|
94
64
|
end
|
|
95
65
|
end
|
|
@@ -106,10 +106,14 @@ module Dodopayments
|
|
|
106
106
|
sig { returns(T.nilable(T::Array[Dodopayments::CustomFieldResponse])) }
|
|
107
107
|
attr_accessor :custom_field_responses
|
|
108
108
|
|
|
109
|
-
#
|
|
109
|
+
# DEPRECATED: Use discounts instead. Returns the first discount's ID if present.
|
|
110
110
|
sig { returns(T.nilable(String)) }
|
|
111
111
|
attr_accessor :discount_id
|
|
112
112
|
|
|
113
|
+
# All stacked discounts applied, ordered by position
|
|
114
|
+
sig { returns(T.nilable(T::Array[Dodopayments::Payment::Discount])) }
|
|
115
|
+
attr_accessor :discounts
|
|
116
|
+
|
|
113
117
|
# An error code if the payment failed
|
|
114
118
|
sig { returns(T.nilable(String)) }
|
|
115
119
|
attr_accessor :error_code
|
|
@@ -196,6 +200,8 @@ module Dodopayments
|
|
|
196
200
|
custom_field_responses:
|
|
197
201
|
T.nilable(T::Array[Dodopayments::CustomFieldResponse::OrHash]),
|
|
198
202
|
discount_id: T.nilable(String),
|
|
203
|
+
discounts:
|
|
204
|
+
T.nilable(T::Array[Dodopayments::Payment::Discount::OrHash]),
|
|
199
205
|
error_code: T.nilable(String),
|
|
200
206
|
error_message: T.nilable(String),
|
|
201
207
|
invoice_id: T.nilable(String),
|
|
@@ -262,8 +268,10 @@ module Dodopayments
|
|
|
262
268
|
checkout_session_id: nil,
|
|
263
269
|
# Customer's responses to custom fields collected during checkout
|
|
264
270
|
custom_field_responses: nil,
|
|
265
|
-
#
|
|
271
|
+
# DEPRECATED: Use discounts instead. Returns the first discount's ID if present.
|
|
266
272
|
discount_id: nil,
|
|
273
|
+
# All stacked discounts applied, ordered by position
|
|
274
|
+
discounts: nil,
|
|
267
275
|
# An error code if the payment failed
|
|
268
276
|
error_code: nil,
|
|
269
277
|
# An error message if the payment failed
|
|
@@ -325,6 +333,7 @@ module Dodopayments
|
|
|
325
333
|
custom_field_responses:
|
|
326
334
|
T.nilable(T::Array[Dodopayments::CustomFieldResponse]),
|
|
327
335
|
discount_id: T.nilable(String),
|
|
336
|
+
discounts: T.nilable(T::Array[Dodopayments::Payment::Discount]),
|
|
328
337
|
error_code: T.nilable(String),
|
|
329
338
|
error_message: T.nilable(String),
|
|
330
339
|
invoice_id: T.nilable(String),
|
|
@@ -347,6 +356,165 @@ module Dodopayments
|
|
|
347
356
|
def to_hash
|
|
348
357
|
end
|
|
349
358
|
|
|
359
|
+
class Discount < Dodopayments::Internal::Type::BaseModel
|
|
360
|
+
OrHash =
|
|
361
|
+
T.type_alias do
|
|
362
|
+
T.any(
|
|
363
|
+
Dodopayments::Payment::Discount,
|
|
364
|
+
Dodopayments::Internal::AnyHash
|
|
365
|
+
)
|
|
366
|
+
end
|
|
367
|
+
|
|
368
|
+
# The discount amount (basis points for percentage, USD cents for flat)
|
|
369
|
+
sig { returns(Integer) }
|
|
370
|
+
attr_accessor :amount
|
|
371
|
+
|
|
372
|
+
# The business this discount belongs to
|
|
373
|
+
sig { returns(String) }
|
|
374
|
+
attr_accessor :business_id
|
|
375
|
+
|
|
376
|
+
# The discount code
|
|
377
|
+
sig { returns(String) }
|
|
378
|
+
attr_accessor :code
|
|
379
|
+
|
|
380
|
+
# Timestamp when the discount was created
|
|
381
|
+
sig { returns(Time) }
|
|
382
|
+
attr_accessor :created_at
|
|
383
|
+
|
|
384
|
+
# The unique discount ID
|
|
385
|
+
sig { returns(String) }
|
|
386
|
+
attr_accessor :discount_id
|
|
387
|
+
|
|
388
|
+
# Additional metadata
|
|
389
|
+
sig { returns(T::Hash[Symbol, String]) }
|
|
390
|
+
attr_accessor :metadata
|
|
391
|
+
|
|
392
|
+
# Position of this discount in the stack (0-based)
|
|
393
|
+
sig { returns(Integer) }
|
|
394
|
+
attr_accessor :position
|
|
395
|
+
|
|
396
|
+
# Whether this discount should be preserved when a subscription changes plans
|
|
397
|
+
sig { returns(T::Boolean) }
|
|
398
|
+
attr_accessor :preserve_on_plan_change
|
|
399
|
+
|
|
400
|
+
# List of product IDs to which this discount is restricted
|
|
401
|
+
sig { returns(T::Array[String]) }
|
|
402
|
+
attr_accessor :restricted_to
|
|
403
|
+
|
|
404
|
+
# How many times this discount has been used
|
|
405
|
+
sig { returns(Integer) }
|
|
406
|
+
attr_accessor :times_used
|
|
407
|
+
|
|
408
|
+
# The type of discount
|
|
409
|
+
sig { returns(Dodopayments::DiscountType::TaggedSymbol) }
|
|
410
|
+
attr_accessor :type
|
|
411
|
+
|
|
412
|
+
# Remaining billing cycles for this discount on this subscription (None for
|
|
413
|
+
# one-time payments)
|
|
414
|
+
sig { returns(T.nilable(Integer)) }
|
|
415
|
+
attr_accessor :cycles_remaining
|
|
416
|
+
|
|
417
|
+
# Optional date/time after which discount is expired
|
|
418
|
+
sig { returns(T.nilable(Time)) }
|
|
419
|
+
attr_accessor :expires_at
|
|
420
|
+
|
|
421
|
+
# Name for the Discount
|
|
422
|
+
sig { returns(T.nilable(String)) }
|
|
423
|
+
attr_accessor :name
|
|
424
|
+
|
|
425
|
+
# Number of subscription billing cycles this discount is valid for
|
|
426
|
+
sig { returns(T.nilable(Integer)) }
|
|
427
|
+
attr_accessor :subscription_cycles
|
|
428
|
+
|
|
429
|
+
# Usage limit for this discount, if any
|
|
430
|
+
sig { returns(T.nilable(Integer)) }
|
|
431
|
+
attr_accessor :usage_limit
|
|
432
|
+
|
|
433
|
+
# Response struct for a discount with its position in a stack and optional
|
|
434
|
+
# cycle-tracking information (for subscriptions).
|
|
435
|
+
sig do
|
|
436
|
+
params(
|
|
437
|
+
amount: Integer,
|
|
438
|
+
business_id: String,
|
|
439
|
+
code: String,
|
|
440
|
+
created_at: Time,
|
|
441
|
+
discount_id: String,
|
|
442
|
+
metadata: T::Hash[Symbol, String],
|
|
443
|
+
position: Integer,
|
|
444
|
+
preserve_on_plan_change: T::Boolean,
|
|
445
|
+
restricted_to: T::Array[String],
|
|
446
|
+
times_used: Integer,
|
|
447
|
+
type: Dodopayments::DiscountType::OrSymbol,
|
|
448
|
+
cycles_remaining: T.nilable(Integer),
|
|
449
|
+
expires_at: T.nilable(Time),
|
|
450
|
+
name: T.nilable(String),
|
|
451
|
+
subscription_cycles: T.nilable(Integer),
|
|
452
|
+
usage_limit: T.nilable(Integer)
|
|
453
|
+
).returns(T.attached_class)
|
|
454
|
+
end
|
|
455
|
+
def self.new(
|
|
456
|
+
# The discount amount (basis points for percentage, USD cents for flat)
|
|
457
|
+
amount:,
|
|
458
|
+
# The business this discount belongs to
|
|
459
|
+
business_id:,
|
|
460
|
+
# The discount code
|
|
461
|
+
code:,
|
|
462
|
+
# Timestamp when the discount was created
|
|
463
|
+
created_at:,
|
|
464
|
+
# The unique discount ID
|
|
465
|
+
discount_id:,
|
|
466
|
+
# Additional metadata
|
|
467
|
+
metadata:,
|
|
468
|
+
# Position of this discount in the stack (0-based)
|
|
469
|
+
position:,
|
|
470
|
+
# Whether this discount should be preserved when a subscription changes plans
|
|
471
|
+
preserve_on_plan_change:,
|
|
472
|
+
# List of product IDs to which this discount is restricted
|
|
473
|
+
restricted_to:,
|
|
474
|
+
# How many times this discount has been used
|
|
475
|
+
times_used:,
|
|
476
|
+
# The type of discount
|
|
477
|
+
type:,
|
|
478
|
+
# Remaining billing cycles for this discount on this subscription (None for
|
|
479
|
+
# one-time payments)
|
|
480
|
+
cycles_remaining: nil,
|
|
481
|
+
# Optional date/time after which discount is expired
|
|
482
|
+
expires_at: nil,
|
|
483
|
+
# Name for the Discount
|
|
484
|
+
name: nil,
|
|
485
|
+
# Number of subscription billing cycles this discount is valid for
|
|
486
|
+
subscription_cycles: nil,
|
|
487
|
+
# Usage limit for this discount, if any
|
|
488
|
+
usage_limit: nil
|
|
489
|
+
)
|
|
490
|
+
end
|
|
491
|
+
|
|
492
|
+
sig do
|
|
493
|
+
override.returns(
|
|
494
|
+
{
|
|
495
|
+
amount: Integer,
|
|
496
|
+
business_id: String,
|
|
497
|
+
code: String,
|
|
498
|
+
created_at: Time,
|
|
499
|
+
discount_id: String,
|
|
500
|
+
metadata: T::Hash[Symbol, String],
|
|
501
|
+
position: Integer,
|
|
502
|
+
preserve_on_plan_change: T::Boolean,
|
|
503
|
+
restricted_to: T::Array[String],
|
|
504
|
+
times_used: Integer,
|
|
505
|
+
type: Dodopayments::DiscountType::TaggedSymbol,
|
|
506
|
+
cycles_remaining: T.nilable(Integer),
|
|
507
|
+
expires_at: T.nilable(Time),
|
|
508
|
+
name: T.nilable(String),
|
|
509
|
+
subscription_cycles: T.nilable(Integer),
|
|
510
|
+
usage_limit: T.nilable(Integer)
|
|
511
|
+
}
|
|
512
|
+
)
|
|
513
|
+
end
|
|
514
|
+
def to_hash
|
|
515
|
+
end
|
|
516
|
+
end
|
|
517
|
+
|
|
350
518
|
class ProductCart < Dodopayments::Internal::Type::BaseModel
|
|
351
519
|
OrHash =
|
|
352
520
|
T.type_alias do
|
|
@@ -26,9 +26,7 @@ module Dodopayments
|
|
|
26
26
|
attr_accessor :timestamp
|
|
27
27
|
|
|
28
28
|
# The event type
|
|
29
|
-
sig
|
|
30
|
-
returns(Dodopayments::PaymentCancelledWebhookEvent::Type::TaggedSymbol)
|
|
31
|
-
end
|
|
29
|
+
sig { returns(Symbol) }
|
|
32
30
|
attr_accessor :type
|
|
33
31
|
|
|
34
32
|
sig do
|
|
@@ -36,7 +34,7 @@ module Dodopayments
|
|
|
36
34
|
business_id: String,
|
|
37
35
|
data: Dodopayments::Payment::OrHash,
|
|
38
36
|
timestamp: Time,
|
|
39
|
-
type:
|
|
37
|
+
type: Symbol
|
|
40
38
|
).returns(T.attached_class)
|
|
41
39
|
end
|
|
42
40
|
def self.new(
|
|
@@ -46,7 +44,7 @@ module Dodopayments
|
|
|
46
44
|
# The timestamp of when the event occurred
|
|
47
45
|
timestamp:,
|
|
48
46
|
# The event type
|
|
49
|
-
type:
|
|
47
|
+
type: :"payment.cancelled"
|
|
50
48
|
)
|
|
51
49
|
end
|
|
52
50
|
|
|
@@ -56,39 +54,12 @@ module Dodopayments
|
|
|
56
54
|
business_id: String,
|
|
57
55
|
data: Dodopayments::Payment,
|
|
58
56
|
timestamp: Time,
|
|
59
|
-
type:
|
|
57
|
+
type: Symbol
|
|
60
58
|
}
|
|
61
59
|
)
|
|
62
60
|
end
|
|
63
61
|
def to_hash
|
|
64
62
|
end
|
|
65
|
-
|
|
66
|
-
# The event type
|
|
67
|
-
module Type
|
|
68
|
-
extend Dodopayments::Internal::Type::Enum
|
|
69
|
-
|
|
70
|
-
TaggedSymbol =
|
|
71
|
-
T.type_alias do
|
|
72
|
-
T.all(Symbol, Dodopayments::PaymentCancelledWebhookEvent::Type)
|
|
73
|
-
end
|
|
74
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
75
|
-
|
|
76
|
-
PAYMENT_CANCELLED =
|
|
77
|
-
T.let(
|
|
78
|
-
:"payment.cancelled",
|
|
79
|
-
Dodopayments::PaymentCancelledWebhookEvent::Type::TaggedSymbol
|
|
80
|
-
)
|
|
81
|
-
|
|
82
|
-
sig do
|
|
83
|
-
override.returns(
|
|
84
|
-
T::Array[
|
|
85
|
-
Dodopayments::PaymentCancelledWebhookEvent::Type::TaggedSymbol
|
|
86
|
-
]
|
|
87
|
-
)
|
|
88
|
-
end
|
|
89
|
-
def self.values
|
|
90
|
-
end
|
|
91
|
-
end
|
|
92
63
|
end
|
|
93
64
|
end
|
|
94
65
|
end
|
|
@@ -54,10 +54,16 @@ module Dodopayments
|
|
|
54
54
|
sig { returns(T.nilable(Dodopayments::Currency::OrSymbol)) }
|
|
55
55
|
attr_accessor :billing_currency
|
|
56
56
|
|
|
57
|
-
#
|
|
57
|
+
# DEPRECATED: Use discount_codes instead. Cannot be used together with
|
|
58
|
+
# discount_codes.
|
|
58
59
|
sig { returns(T.nilable(String)) }
|
|
59
60
|
attr_accessor :discount_code
|
|
60
61
|
|
|
62
|
+
# Stacked discount codes to apply, in order of application. Max 20. Cannot be used
|
|
63
|
+
# together with discount_code.
|
|
64
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
65
|
+
attr_accessor :discount_codes
|
|
66
|
+
|
|
61
67
|
# Override merchant default 3DS behaviour for this payment
|
|
62
68
|
sig { returns(T.nilable(T::Boolean)) }
|
|
63
69
|
attr_accessor :force_3ds
|
|
@@ -132,6 +138,7 @@ module Dodopayments
|
|
|
132
138
|
T.nilable(T::Array[Dodopayments::PaymentMethodTypes::OrSymbol]),
|
|
133
139
|
billing_currency: T.nilable(Dodopayments::Currency::OrSymbol),
|
|
134
140
|
discount_code: T.nilable(String),
|
|
141
|
+
discount_codes: T.nilable(T::Array[String]),
|
|
135
142
|
force_3ds: T.nilable(T::Boolean),
|
|
136
143
|
metadata: T::Hash[Symbol, String],
|
|
137
144
|
payment_link: T.nilable(T::Boolean),
|
|
@@ -165,8 +172,12 @@ module Dodopayments
|
|
|
165
172
|
# Fix the currency in which the end customer is billed. If Dodo Payments cannot
|
|
166
173
|
# support that currency for this transaction, it will not proceed
|
|
167
174
|
billing_currency: nil,
|
|
168
|
-
#
|
|
175
|
+
# DEPRECATED: Use discount_codes instead. Cannot be used together with
|
|
176
|
+
# discount_codes.
|
|
169
177
|
discount_code: nil,
|
|
178
|
+
# Stacked discount codes to apply, in order of application. Max 20. Cannot be used
|
|
179
|
+
# together with discount_code.
|
|
180
|
+
discount_codes: nil,
|
|
170
181
|
# Override merchant default 3DS behaviour for this payment
|
|
171
182
|
force_3ds: nil,
|
|
172
183
|
# Additional metadata associated with the payment. Defaults to empty if not
|
|
@@ -214,6 +225,7 @@ module Dodopayments
|
|
|
214
225
|
T.nilable(T::Array[Dodopayments::PaymentMethodTypes::OrSymbol]),
|
|
215
226
|
billing_currency: T.nilable(Dodopayments::Currency::OrSymbol),
|
|
216
227
|
discount_code: T.nilable(String),
|
|
228
|
+
discount_codes: T.nilable(T::Array[String]),
|
|
217
229
|
force_3ds: T.nilable(T::Boolean),
|
|
218
230
|
metadata: T::Hash[Symbol, String],
|
|
219
231
|
payment_link: T.nilable(T::Boolean),
|
|
@@ -37,10 +37,15 @@ module Dodopayments
|
|
|
37
37
|
sig { returns(Integer) }
|
|
38
38
|
attr_accessor :total_amount
|
|
39
39
|
|
|
40
|
-
#
|
|
40
|
+
# DEPRECATED: Use discount_ids instead. Returns the first discount's ID if
|
|
41
|
+
# present.
|
|
41
42
|
sig { returns(T.nilable(String)) }
|
|
42
43
|
attr_accessor :discount_id
|
|
43
44
|
|
|
45
|
+
# All stacked discount IDs applied, in order of application
|
|
46
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
47
|
+
attr_accessor :discount_ids
|
|
48
|
+
|
|
44
49
|
# Expiry timestamp of the payment link
|
|
45
50
|
sig { returns(T.nilable(Time)) }
|
|
46
51
|
attr_accessor :expires_on
|
|
@@ -61,6 +66,7 @@ module Dodopayments
|
|
|
61
66
|
payment_id: String,
|
|
62
67
|
total_amount: Integer,
|
|
63
68
|
discount_id: T.nilable(String),
|
|
69
|
+
discount_ids: T.nilable(T::Array[String]),
|
|
64
70
|
expires_on: T.nilable(Time),
|
|
65
71
|
payment_link: T.nilable(String),
|
|
66
72
|
product_cart:
|
|
@@ -79,8 +85,11 @@ module Dodopayments
|
|
|
79
85
|
payment_id:,
|
|
80
86
|
# Total amount of the payment in smallest currency unit (e.g. cents)
|
|
81
87
|
total_amount:,
|
|
82
|
-
#
|
|
88
|
+
# DEPRECATED: Use discount_ids instead. Returns the first discount's ID if
|
|
89
|
+
# present.
|
|
83
90
|
discount_id: nil,
|
|
91
|
+
# All stacked discount IDs applied, in order of application
|
|
92
|
+
discount_ids: nil,
|
|
84
93
|
# Expiry timestamp of the payment link
|
|
85
94
|
expires_on: nil,
|
|
86
95
|
# Optional URL to a hosted payment page
|
|
@@ -99,6 +108,7 @@ module Dodopayments
|
|
|
99
108
|
payment_id: String,
|
|
100
109
|
total_amount: Integer,
|
|
101
110
|
discount_id: T.nilable(String),
|
|
111
|
+
discount_ids: T.nilable(T::Array[String]),
|
|
102
112
|
expires_on: T.nilable(Time),
|
|
103
113
|
payment_link: T.nilable(String),
|
|
104
114
|
product_cart:
|
|
@@ -26,9 +26,7 @@ module Dodopayments
|
|
|
26
26
|
attr_accessor :timestamp
|
|
27
27
|
|
|
28
28
|
# The event type
|
|
29
|
-
sig
|
|
30
|
-
returns(Dodopayments::PaymentFailedWebhookEvent::Type::TaggedSymbol)
|
|
31
|
-
end
|
|
29
|
+
sig { returns(Symbol) }
|
|
32
30
|
attr_accessor :type
|
|
33
31
|
|
|
34
32
|
sig do
|
|
@@ -36,7 +34,7 @@ module Dodopayments
|
|
|
36
34
|
business_id: String,
|
|
37
35
|
data: Dodopayments::Payment::OrHash,
|
|
38
36
|
timestamp: Time,
|
|
39
|
-
type:
|
|
37
|
+
type: Symbol
|
|
40
38
|
).returns(T.attached_class)
|
|
41
39
|
end
|
|
42
40
|
def self.new(
|
|
@@ -46,7 +44,7 @@ module Dodopayments
|
|
|
46
44
|
# The timestamp of when the event occurred
|
|
47
45
|
timestamp:,
|
|
48
46
|
# The event type
|
|
49
|
-
type:
|
|
47
|
+
type: :"payment.failed"
|
|
50
48
|
)
|
|
51
49
|
end
|
|
52
50
|
|
|
@@ -56,39 +54,12 @@ module Dodopayments
|
|
|
56
54
|
business_id: String,
|
|
57
55
|
data: Dodopayments::Payment,
|
|
58
56
|
timestamp: Time,
|
|
59
|
-
type:
|
|
57
|
+
type: Symbol
|
|
60
58
|
}
|
|
61
59
|
)
|
|
62
60
|
end
|
|
63
61
|
def to_hash
|
|
64
62
|
end
|
|
65
|
-
|
|
66
|
-
# The event type
|
|
67
|
-
module Type
|
|
68
|
-
extend Dodopayments::Internal::Type::Enum
|
|
69
|
-
|
|
70
|
-
TaggedSymbol =
|
|
71
|
-
T.type_alias do
|
|
72
|
-
T.all(Symbol, Dodopayments::PaymentFailedWebhookEvent::Type)
|
|
73
|
-
end
|
|
74
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
75
|
-
|
|
76
|
-
PAYMENT_FAILED =
|
|
77
|
-
T.let(
|
|
78
|
-
:"payment.failed",
|
|
79
|
-
Dodopayments::PaymentFailedWebhookEvent::Type::TaggedSymbol
|
|
80
|
-
)
|
|
81
|
-
|
|
82
|
-
sig do
|
|
83
|
-
override.returns(
|
|
84
|
-
T::Array[
|
|
85
|
-
Dodopayments::PaymentFailedWebhookEvent::Type::TaggedSymbol
|
|
86
|
-
]
|
|
87
|
-
)
|
|
88
|
-
end
|
|
89
|
-
def self.values
|
|
90
|
-
end
|
|
91
|
-
end
|
|
92
63
|
end
|
|
93
64
|
end
|
|
94
65
|
end
|