dodopayments 2.4.1 → 2.5.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 +21 -0
- data/README.md +1 -1
- data/lib/dodopayments/internal/util.rb +18 -4
- data/lib/dodopayments/models/abandoned_checkout_detected_webhook_event.rb +126 -0
- data/lib/dodopayments/models/abandoned_checkout_recovered_webhook_event.rb +126 -0
- data/lib/dodopayments/models/balance_ledger_entry.rb +2 -0
- data/lib/dodopayments/models/balance_retrieve_ledger_params.rb +2 -0
- data/lib/dodopayments/models/dunning_recovered_webhook_event.rb +118 -0
- data/lib/dodopayments/models/dunning_started_webhook_event.rb +118 -0
- data/lib/dodopayments/models/payouts/breakup/detail_download_csv_params.rb +24 -0
- data/lib/dodopayments/models/payouts/breakup/detail_list_params.rb +41 -0
- data/lib/dodopayments/models/payouts/breakup/detail_list_response.rb +94 -0
- data/lib/dodopayments/models/payouts/breakup_retrieve_params.rb +22 -0
- data/lib/dodopayments/models/payouts/breakup_retrieve_response.rb +37 -0
- data/lib/dodopayments/models/subscription_update_params.rb +19 -1
- data/lib/dodopayments/models/unsafe_unwrap_webhook_event.rb +9 -1
- data/lib/dodopayments/models/unwrap_webhook_event.rb +9 -1
- data/lib/dodopayments/models/webhook_event_type.rb +6 -0
- data/lib/dodopayments/models/webhook_payload.rb +168 -3
- data/lib/dodopayments/models.rb +10 -0
- data/lib/dodopayments/resources/payouts/breakup/details.rb +72 -0
- data/lib/dodopayments/resources/payouts/breakup.rb +43 -0
- data/lib/dodopayments/resources/payouts.rb +4 -0
- data/lib/dodopayments/resources/subscriptions.rb +3 -1
- data/lib/dodopayments/resources/webhooks.rb +2 -2
- data/lib/dodopayments/version.rb +1 -1
- data/lib/dodopayments.rb +11 -0
- data/rbi/dodopayments/internal/util.rbi +8 -0
- data/rbi/dodopayments/models/abandoned_checkout_detected_webhook_event.rbi +271 -0
- data/rbi/dodopayments/models/abandoned_checkout_recovered_webhook_event.rbi +273 -0
- data/rbi/dodopayments/models/balance_ledger_entry.rbi +10 -0
- data/rbi/dodopayments/models/balance_retrieve_ledger_params.rbi +10 -0
- data/rbi/dodopayments/models/dunning_recovered_webhook_event.rbi +249 -0
- data/rbi/dodopayments/models/dunning_started_webhook_event.rbi +249 -0
- data/rbi/dodopayments/models/payouts/breakup/detail_download_csv_params.rbi +45 -0
- data/rbi/dodopayments/models/payouts/breakup/detail_list_params.rbi +70 -0
- data/rbi/dodopayments/models/payouts/breakup/detail_list_response.rbi +116 -0
- data/rbi/dodopayments/models/payouts/breakup_retrieve_params.rbi +40 -0
- data/rbi/dodopayments/models/payouts/breakup_retrieve_response.rbi +53 -0
- data/rbi/dodopayments/models/subscription_update_params.rbi +54 -0
- data/rbi/dodopayments/models/unsafe_unwrap_webhook_event.rbi +4 -0
- data/rbi/dodopayments/models/unwrap_webhook_event.rbi +4 -0
- data/rbi/dodopayments/models/webhook_event_type.rbi +21 -0
- data/rbi/dodopayments/models/webhook_payload.rbi +400 -4
- data/rbi/dodopayments/models.rbi +13 -0
- data/rbi/dodopayments/resources/payouts/breakup/details.rbi +60 -0
- data/rbi/dodopayments/resources/payouts/breakup.rbi +36 -0
- data/rbi/dodopayments/resources/payouts.rbi +3 -0
- data/rbi/dodopayments/resources/subscriptions.rbi +5 -0
- data/rbi/dodopayments/resources/webhooks.rbi +8 -0
- data/sig/dodopayments/internal/util.rbs +4 -0
- data/sig/dodopayments/models/abandoned_checkout_detected_webhook_event.rbs +113 -0
- data/sig/dodopayments/models/abandoned_checkout_recovered_webhook_event.rbs +113 -0
- data/sig/dodopayments/models/balance_ledger_entry.rbs +4 -0
- data/sig/dodopayments/models/balance_retrieve_ledger_params.rbs +4 -0
- data/sig/dodopayments/models/dunning_recovered_webhook_event.rbs +110 -0
- data/sig/dodopayments/models/dunning_started_webhook_event.rbs +110 -0
- data/sig/dodopayments/models/payouts/breakup/detail_download_csv_params.rbs +28 -0
- data/sig/dodopayments/models/payouts/breakup/detail_list_params.rbs +40 -0
- data/sig/dodopayments/models/payouts/breakup/detail_list_response.rbs +64 -0
- data/sig/dodopayments/models/payouts/breakup_retrieve_params.rbs +25 -0
- data/sig/dodopayments/models/payouts/breakup_retrieve_response.rbs +23 -0
- data/sig/dodopayments/models/subscription_update_params.rbs +20 -0
- data/sig/dodopayments/models/unsafe_unwrap_webhook_event.rbs +5 -1
- data/sig/dodopayments/models/unwrap_webhook_event.rbs +5 -1
- data/sig/dodopayments/models/webhook_event_type.rbs +12 -0
- data/sig/dodopayments/models/webhook_payload.rbs +165 -0
- data/sig/dodopayments/models.rbs +10 -0
- data/sig/dodopayments/resources/payouts/breakup/details.rbs +23 -0
- data/sig/dodopayments/resources/payouts/breakup.rbs +16 -0
- data/sig/dodopayments/resources/payouts.rbs +2 -0
- data/sig/dodopayments/resources/subscriptions.rbs +1 -0
- data/sig/dodopayments/resources/webhooks.rbs +10 -2
- metadata +35 -2
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Dodopayments
|
|
4
|
+
module Models
|
|
5
|
+
module Payouts
|
|
6
|
+
module Breakup
|
|
7
|
+
# @see Dodopayments::Resources::Payouts::Breakup::Details#list
|
|
8
|
+
class DetailListResponse < Dodopayments::Internal::Type::BaseModel
|
|
9
|
+
# @!attribute id
|
|
10
|
+
# Unique identifier of the balance ledger entry.
|
|
11
|
+
#
|
|
12
|
+
# @return [String]
|
|
13
|
+
required :id, String
|
|
14
|
+
|
|
15
|
+
# @!attribute created_at
|
|
16
|
+
# Timestamp when this entry was created.
|
|
17
|
+
#
|
|
18
|
+
# @return [Time]
|
|
19
|
+
required :created_at, Time
|
|
20
|
+
|
|
21
|
+
# @!attribute event_type
|
|
22
|
+
# The type of balance ledger event (e.g., "payment", "refund", "dispute",
|
|
23
|
+
# "payment_fees").
|
|
24
|
+
#
|
|
25
|
+
# @return [String]
|
|
26
|
+
required :event_type, String
|
|
27
|
+
|
|
28
|
+
# @!attribute original_amount
|
|
29
|
+
# Original amount in the original currency (in smallest currency unit, e.g.,
|
|
30
|
+
# cents).
|
|
31
|
+
#
|
|
32
|
+
# @return [Integer]
|
|
33
|
+
required :original_amount, Integer
|
|
34
|
+
|
|
35
|
+
# @!attribute original_currency
|
|
36
|
+
# Original currency as ISO 4217 code (e.g., "USD", "EUR").
|
|
37
|
+
#
|
|
38
|
+
# @return [String]
|
|
39
|
+
required :original_currency, String
|
|
40
|
+
|
|
41
|
+
# @!attribute payout_currency_amount
|
|
42
|
+
# Amount in the payout's currency (in smallest currency unit). Uses cumulative
|
|
43
|
+
# rounding to ensure sum matches payout total exactly.
|
|
44
|
+
#
|
|
45
|
+
# @return [Integer]
|
|
46
|
+
required :payout_currency_amount, Integer
|
|
47
|
+
|
|
48
|
+
# @!attribute usd_equivalent_amount
|
|
49
|
+
# USD equivalent of the original amount (in cents).
|
|
50
|
+
#
|
|
51
|
+
# @return [Integer]
|
|
52
|
+
required :usd_equivalent_amount, Integer
|
|
53
|
+
|
|
54
|
+
# @!attribute description
|
|
55
|
+
# Human-readable description of the transaction.
|
|
56
|
+
#
|
|
57
|
+
# @return [String, nil]
|
|
58
|
+
optional :description, String, nil?: true
|
|
59
|
+
|
|
60
|
+
# @!attribute reference_object_id
|
|
61
|
+
# ID of the related object (e.g., payment ID, refund ID) if applicable.
|
|
62
|
+
#
|
|
63
|
+
# @return [String, nil]
|
|
64
|
+
optional :reference_object_id, String, nil?: true
|
|
65
|
+
|
|
66
|
+
# @!method initialize(id:, created_at:, event_type:, original_amount:, original_currency:, payout_currency_amount:, usd_equivalent_amount:, description: nil, reference_object_id: nil)
|
|
67
|
+
# Some parameter documentations has been truncated, see
|
|
68
|
+
# {Dodopayments::Models::Payouts::Breakup::DetailListResponse} for more details.
|
|
69
|
+
#
|
|
70
|
+
# Individual balance ledger entry for a payout, with amounts pro-rated into the
|
|
71
|
+
# payout's currency.
|
|
72
|
+
#
|
|
73
|
+
# @param id [String] Unique identifier of the balance ledger entry.
|
|
74
|
+
#
|
|
75
|
+
# @param created_at [Time] Timestamp when this entry was created.
|
|
76
|
+
#
|
|
77
|
+
# @param event_type [String] The type of balance ledger event (e.g., "payment", "refund", "dispute", "payment
|
|
78
|
+
#
|
|
79
|
+
# @param original_amount [Integer] Original amount in the original currency (in smallest currency unit, e.g., cents
|
|
80
|
+
#
|
|
81
|
+
# @param original_currency [String] Original currency as ISO 4217 code (e.g., "USD", "EUR").
|
|
82
|
+
#
|
|
83
|
+
# @param payout_currency_amount [Integer] Amount in the payout's currency (in smallest currency unit). Uses cumulative rou
|
|
84
|
+
#
|
|
85
|
+
# @param usd_equivalent_amount [Integer] USD equivalent of the original amount (in cents).
|
|
86
|
+
#
|
|
87
|
+
# @param description [String, nil] Human-readable description of the transaction.
|
|
88
|
+
#
|
|
89
|
+
# @param reference_object_id [String, nil] ID of the related object (e.g., payment ID, refund ID) if applicable.
|
|
90
|
+
end
|
|
91
|
+
end
|
|
92
|
+
end
|
|
93
|
+
end
|
|
94
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Dodopayments
|
|
4
|
+
module Models
|
|
5
|
+
module Payouts
|
|
6
|
+
# @see Dodopayments::Resources::Payouts::Breakup#retrieve
|
|
7
|
+
class BreakupRetrieveParams < Dodopayments::Internal::Type::BaseModel
|
|
8
|
+
extend Dodopayments::Internal::Type::RequestParameters::Converter
|
|
9
|
+
include Dodopayments::Internal::Type::RequestParameters
|
|
10
|
+
|
|
11
|
+
# @!attribute payout_id
|
|
12
|
+
#
|
|
13
|
+
# @return [String]
|
|
14
|
+
required :payout_id, String
|
|
15
|
+
|
|
16
|
+
# @!method initialize(payout_id:, request_options: {})
|
|
17
|
+
# @param payout_id [String]
|
|
18
|
+
# @param request_options [Dodopayments::RequestOptions, Hash{Symbol=>Object}]
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Dodopayments
|
|
4
|
+
module Models
|
|
5
|
+
module Payouts
|
|
6
|
+
class BreakupRetrieveResponseItem < Dodopayments::Internal::Type::BaseModel
|
|
7
|
+
# @!attribute event_type
|
|
8
|
+
# The type of balance ledger event (e.g., "payment", "refund", "dispute",
|
|
9
|
+
# "payment_fees").
|
|
10
|
+
#
|
|
11
|
+
# @return [String]
|
|
12
|
+
required :event_type, String
|
|
13
|
+
|
|
14
|
+
# @!attribute total
|
|
15
|
+
# Total amount for this event type in the payout's currency (in smallest currency
|
|
16
|
+
# unit, e.g., cents).
|
|
17
|
+
#
|
|
18
|
+
# @return [Integer]
|
|
19
|
+
required :total, Integer
|
|
20
|
+
|
|
21
|
+
# @!method initialize(event_type:, total:)
|
|
22
|
+
# Some parameter documentations has been truncated, see
|
|
23
|
+
# {Dodopayments::Models::Payouts::BreakupRetrieveResponseItem} for more details.
|
|
24
|
+
#
|
|
25
|
+
# Payout breakup aggregated by event type, with amounts in the payout's currency.
|
|
26
|
+
#
|
|
27
|
+
# @param event_type [String] The type of balance ledger event (e.g., "payment", "refund", "dispute", "payment
|
|
28
|
+
#
|
|
29
|
+
# @param total [Integer] Total amount for this event type in the payout's currency (in smallest currency
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
# @type [Dodopayments::Internal::Type::Converter]
|
|
33
|
+
BreakupRetrieveResponse =
|
|
34
|
+
Dodopayments::Internal::Type::ArrayOf[-> { Dodopayments::Models::Payouts::BreakupRetrieveResponseItem }]
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|
|
@@ -23,6 +23,11 @@ module Dodopayments
|
|
|
23
23
|
# @return [Boolean, nil]
|
|
24
24
|
optional :cancel_at_next_billing_date, Dodopayments::Internal::Type::Boolean, nil?: true
|
|
25
25
|
|
|
26
|
+
# @!attribute cancel_reason
|
|
27
|
+
#
|
|
28
|
+
# @return [Symbol, Dodopayments::Models::SubscriptionUpdateParams::CancelReason, nil]
|
|
29
|
+
optional :cancel_reason, enum: -> { Dodopayments::SubscriptionUpdateParams::CancelReason }, nil?: true
|
|
30
|
+
|
|
26
31
|
# @!attribute credit_entitlement_cart
|
|
27
32
|
# Update credit entitlement cart settings
|
|
28
33
|
#
|
|
@@ -63,13 +68,15 @@ module Dodopayments
|
|
|
63
68
|
# @return [String, nil]
|
|
64
69
|
optional :tax_id, String, nil?: true
|
|
65
70
|
|
|
66
|
-
# @!method initialize(subscription_id:, billing: nil, cancel_at_next_billing_date: nil, credit_entitlement_cart: nil, customer_name: nil, disable_on_demand: nil, metadata: nil, next_billing_date: nil, status: nil, tax_id: nil, request_options: {})
|
|
71
|
+
# @!method initialize(subscription_id:, billing: nil, cancel_at_next_billing_date: nil, cancel_reason: nil, credit_entitlement_cart: nil, customer_name: nil, disable_on_demand: nil, metadata: nil, next_billing_date: nil, status: nil, tax_id: nil, request_options: {})
|
|
67
72
|
# @param subscription_id [String]
|
|
68
73
|
#
|
|
69
74
|
# @param billing [Dodopayments::Models::BillingAddress, nil]
|
|
70
75
|
#
|
|
71
76
|
# @param cancel_at_next_billing_date [Boolean, nil] When set, the subscription will remain active until the end of billing period
|
|
72
77
|
#
|
|
78
|
+
# @param cancel_reason [Symbol, Dodopayments::Models::SubscriptionUpdateParams::CancelReason, nil]
|
|
79
|
+
#
|
|
73
80
|
# @param credit_entitlement_cart [Array<Dodopayments::Models::SubscriptionUpdateParams::CreditEntitlementCart>, nil] Update credit entitlement cart settings
|
|
74
81
|
#
|
|
75
82
|
# @param customer_name [String, nil]
|
|
@@ -86,6 +93,17 @@ module Dodopayments
|
|
|
86
93
|
#
|
|
87
94
|
# @param request_options [Dodopayments::RequestOptions, Hash{Symbol=>Object}]
|
|
88
95
|
|
|
96
|
+
module CancelReason
|
|
97
|
+
extend Dodopayments::Internal::Type::Enum
|
|
98
|
+
|
|
99
|
+
CANCELLED_BY_CUSTOMER = :cancelled_by_customer
|
|
100
|
+
CANCELLED_BY_MERCHANT = :cancelled_by_merchant
|
|
101
|
+
CANCELLED_BY_MERCHANT_SEND_DUNNING = :cancelled_by_merchant_send_dunning
|
|
102
|
+
|
|
103
|
+
# @!method self.values
|
|
104
|
+
# @return [Array<Symbol>]
|
|
105
|
+
end
|
|
106
|
+
|
|
89
107
|
class CreditEntitlementCart < Dodopayments::Internal::Type::BaseModel
|
|
90
108
|
# @!attribute credit_entitlement_id
|
|
91
109
|
#
|
|
@@ -5,6 +5,10 @@ module Dodopayments
|
|
|
5
5
|
module UnsafeUnwrapWebhookEvent
|
|
6
6
|
extend Dodopayments::Internal::Type::Union
|
|
7
7
|
|
|
8
|
+
variant -> { Dodopayments::AbandonedCheckoutDetectedWebhookEvent }
|
|
9
|
+
|
|
10
|
+
variant -> { Dodopayments::AbandonedCheckoutRecoveredWebhookEvent }
|
|
11
|
+
|
|
8
12
|
variant -> { Dodopayments::CreditAddedWebhookEvent }
|
|
9
13
|
|
|
10
14
|
variant -> { Dodopayments::CreditBalanceLowWebhookEvent }
|
|
@@ -35,6 +39,10 @@ module Dodopayments
|
|
|
35
39
|
|
|
36
40
|
variant -> { Dodopayments::DisputeWonWebhookEvent }
|
|
37
41
|
|
|
42
|
+
variant -> { Dodopayments::DunningRecoveredWebhookEvent }
|
|
43
|
+
|
|
44
|
+
variant -> { Dodopayments::DunningStartedWebhookEvent }
|
|
45
|
+
|
|
38
46
|
variant -> { Dodopayments::LicenseKeyCreatedWebhookEvent }
|
|
39
47
|
|
|
40
48
|
variant -> { Dodopayments::PaymentCancelledWebhookEvent }
|
|
@@ -66,7 +74,7 @@ module Dodopayments
|
|
|
66
74
|
variant -> { Dodopayments::SubscriptionUpdatedWebhookEvent }
|
|
67
75
|
|
|
68
76
|
# @!method self.variants
|
|
69
|
-
# @return [Array(Dodopayments::Models::CreditAddedWebhookEvent, Dodopayments::Models::CreditBalanceLowWebhookEvent, Dodopayments::Models::CreditDeductedWebhookEvent, Dodopayments::Models::CreditExpiredWebhookEvent, Dodopayments::Models::CreditManualAdjustmentWebhookEvent, Dodopayments::Models::CreditOverageChargedWebhookEvent, Dodopayments::Models::CreditRolledOverWebhookEvent, Dodopayments::Models::CreditRolloverForfeitedWebhookEvent, Dodopayments::Models::DisputeAcceptedWebhookEvent, Dodopayments::Models::DisputeCancelledWebhookEvent, Dodopayments::Models::DisputeChallengedWebhookEvent, Dodopayments::Models::DisputeExpiredWebhookEvent, Dodopayments::Models::DisputeLostWebhookEvent, Dodopayments::Models::DisputeOpenedWebhookEvent, Dodopayments::Models::DisputeWonWebhookEvent, Dodopayments::Models::LicenseKeyCreatedWebhookEvent, Dodopayments::Models::PaymentCancelledWebhookEvent, Dodopayments::Models::PaymentFailedWebhookEvent, Dodopayments::Models::PaymentProcessingWebhookEvent, Dodopayments::Models::PaymentSucceededWebhookEvent, Dodopayments::Models::RefundFailedWebhookEvent, Dodopayments::Models::RefundSucceededWebhookEvent, Dodopayments::Models::SubscriptionActiveWebhookEvent, Dodopayments::Models::SubscriptionCancelledWebhookEvent, Dodopayments::Models::SubscriptionExpiredWebhookEvent, Dodopayments::Models::SubscriptionFailedWebhookEvent, Dodopayments::Models::SubscriptionOnHoldWebhookEvent, Dodopayments::Models::SubscriptionPlanChangedWebhookEvent, Dodopayments::Models::SubscriptionRenewedWebhookEvent, Dodopayments::Models::SubscriptionUpdatedWebhookEvent)]
|
|
77
|
+
# @return [Array(Dodopayments::Models::AbandonedCheckoutDetectedWebhookEvent, Dodopayments::Models::AbandonedCheckoutRecoveredWebhookEvent, Dodopayments::Models::CreditAddedWebhookEvent, Dodopayments::Models::CreditBalanceLowWebhookEvent, Dodopayments::Models::CreditDeductedWebhookEvent, Dodopayments::Models::CreditExpiredWebhookEvent, Dodopayments::Models::CreditManualAdjustmentWebhookEvent, Dodopayments::Models::CreditOverageChargedWebhookEvent, Dodopayments::Models::CreditRolledOverWebhookEvent, Dodopayments::Models::CreditRolloverForfeitedWebhookEvent, Dodopayments::Models::DisputeAcceptedWebhookEvent, Dodopayments::Models::DisputeCancelledWebhookEvent, Dodopayments::Models::DisputeChallengedWebhookEvent, Dodopayments::Models::DisputeExpiredWebhookEvent, Dodopayments::Models::DisputeLostWebhookEvent, Dodopayments::Models::DisputeOpenedWebhookEvent, Dodopayments::Models::DisputeWonWebhookEvent, Dodopayments::Models::DunningRecoveredWebhookEvent, Dodopayments::Models::DunningStartedWebhookEvent, Dodopayments::Models::LicenseKeyCreatedWebhookEvent, Dodopayments::Models::PaymentCancelledWebhookEvent, Dodopayments::Models::PaymentFailedWebhookEvent, Dodopayments::Models::PaymentProcessingWebhookEvent, Dodopayments::Models::PaymentSucceededWebhookEvent, Dodopayments::Models::RefundFailedWebhookEvent, Dodopayments::Models::RefundSucceededWebhookEvent, Dodopayments::Models::SubscriptionActiveWebhookEvent, Dodopayments::Models::SubscriptionCancelledWebhookEvent, Dodopayments::Models::SubscriptionExpiredWebhookEvent, Dodopayments::Models::SubscriptionFailedWebhookEvent, Dodopayments::Models::SubscriptionOnHoldWebhookEvent, Dodopayments::Models::SubscriptionPlanChangedWebhookEvent, Dodopayments::Models::SubscriptionRenewedWebhookEvent, Dodopayments::Models::SubscriptionUpdatedWebhookEvent)]
|
|
70
78
|
end
|
|
71
79
|
end
|
|
72
80
|
end
|
|
@@ -5,6 +5,10 @@ module Dodopayments
|
|
|
5
5
|
module UnwrapWebhookEvent
|
|
6
6
|
extend Dodopayments::Internal::Type::Union
|
|
7
7
|
|
|
8
|
+
variant -> { Dodopayments::AbandonedCheckoutDetectedWebhookEvent }
|
|
9
|
+
|
|
10
|
+
variant -> { Dodopayments::AbandonedCheckoutRecoveredWebhookEvent }
|
|
11
|
+
|
|
8
12
|
variant -> { Dodopayments::CreditAddedWebhookEvent }
|
|
9
13
|
|
|
10
14
|
variant -> { Dodopayments::CreditBalanceLowWebhookEvent }
|
|
@@ -35,6 +39,10 @@ module Dodopayments
|
|
|
35
39
|
|
|
36
40
|
variant -> { Dodopayments::DisputeWonWebhookEvent }
|
|
37
41
|
|
|
42
|
+
variant -> { Dodopayments::DunningRecoveredWebhookEvent }
|
|
43
|
+
|
|
44
|
+
variant -> { Dodopayments::DunningStartedWebhookEvent }
|
|
45
|
+
|
|
38
46
|
variant -> { Dodopayments::LicenseKeyCreatedWebhookEvent }
|
|
39
47
|
|
|
40
48
|
variant -> { Dodopayments::PaymentCancelledWebhookEvent }
|
|
@@ -66,7 +74,7 @@ module Dodopayments
|
|
|
66
74
|
variant -> { Dodopayments::SubscriptionUpdatedWebhookEvent }
|
|
67
75
|
|
|
68
76
|
# @!method self.variants
|
|
69
|
-
# @return [Array(Dodopayments::Models::CreditAddedWebhookEvent, Dodopayments::Models::CreditBalanceLowWebhookEvent, Dodopayments::Models::CreditDeductedWebhookEvent, Dodopayments::Models::CreditExpiredWebhookEvent, Dodopayments::Models::CreditManualAdjustmentWebhookEvent, Dodopayments::Models::CreditOverageChargedWebhookEvent, Dodopayments::Models::CreditRolledOverWebhookEvent, Dodopayments::Models::CreditRolloverForfeitedWebhookEvent, Dodopayments::Models::DisputeAcceptedWebhookEvent, Dodopayments::Models::DisputeCancelledWebhookEvent, Dodopayments::Models::DisputeChallengedWebhookEvent, Dodopayments::Models::DisputeExpiredWebhookEvent, Dodopayments::Models::DisputeLostWebhookEvent, Dodopayments::Models::DisputeOpenedWebhookEvent, Dodopayments::Models::DisputeWonWebhookEvent, Dodopayments::Models::LicenseKeyCreatedWebhookEvent, Dodopayments::Models::PaymentCancelledWebhookEvent, Dodopayments::Models::PaymentFailedWebhookEvent, Dodopayments::Models::PaymentProcessingWebhookEvent, Dodopayments::Models::PaymentSucceededWebhookEvent, Dodopayments::Models::RefundFailedWebhookEvent, Dodopayments::Models::RefundSucceededWebhookEvent, Dodopayments::Models::SubscriptionActiveWebhookEvent, Dodopayments::Models::SubscriptionCancelledWebhookEvent, Dodopayments::Models::SubscriptionExpiredWebhookEvent, Dodopayments::Models::SubscriptionFailedWebhookEvent, Dodopayments::Models::SubscriptionOnHoldWebhookEvent, Dodopayments::Models::SubscriptionPlanChangedWebhookEvent, Dodopayments::Models::SubscriptionRenewedWebhookEvent, Dodopayments::Models::SubscriptionUpdatedWebhookEvent)]
|
|
77
|
+
# @return [Array(Dodopayments::Models::AbandonedCheckoutDetectedWebhookEvent, Dodopayments::Models::AbandonedCheckoutRecoveredWebhookEvent, Dodopayments::Models::CreditAddedWebhookEvent, Dodopayments::Models::CreditBalanceLowWebhookEvent, Dodopayments::Models::CreditDeductedWebhookEvent, Dodopayments::Models::CreditExpiredWebhookEvent, Dodopayments::Models::CreditManualAdjustmentWebhookEvent, Dodopayments::Models::CreditOverageChargedWebhookEvent, Dodopayments::Models::CreditRolledOverWebhookEvent, Dodopayments::Models::CreditRolloverForfeitedWebhookEvent, Dodopayments::Models::DisputeAcceptedWebhookEvent, Dodopayments::Models::DisputeCancelledWebhookEvent, Dodopayments::Models::DisputeChallengedWebhookEvent, Dodopayments::Models::DisputeExpiredWebhookEvent, Dodopayments::Models::DisputeLostWebhookEvent, Dodopayments::Models::DisputeOpenedWebhookEvent, Dodopayments::Models::DisputeWonWebhookEvent, Dodopayments::Models::DunningRecoveredWebhookEvent, Dodopayments::Models::DunningStartedWebhookEvent, Dodopayments::Models::LicenseKeyCreatedWebhookEvent, Dodopayments::Models::PaymentCancelledWebhookEvent, Dodopayments::Models::PaymentFailedWebhookEvent, Dodopayments::Models::PaymentProcessingWebhookEvent, Dodopayments::Models::PaymentSucceededWebhookEvent, Dodopayments::Models::RefundFailedWebhookEvent, Dodopayments::Models::RefundSucceededWebhookEvent, Dodopayments::Models::SubscriptionActiveWebhookEvent, Dodopayments::Models::SubscriptionCancelledWebhookEvent, Dodopayments::Models::SubscriptionExpiredWebhookEvent, Dodopayments::Models::SubscriptionFailedWebhookEvent, Dodopayments::Models::SubscriptionOnHoldWebhookEvent, Dodopayments::Models::SubscriptionPlanChangedWebhookEvent, Dodopayments::Models::SubscriptionRenewedWebhookEvent, Dodopayments::Models::SubscriptionUpdatedWebhookEvent)]
|
|
70
78
|
end
|
|
71
79
|
end
|
|
72
80
|
end
|
|
@@ -41,6 +41,12 @@ module Dodopayments
|
|
|
41
41
|
CREDIT_OVERAGE_CHARGED = :"credit.overage_charged"
|
|
42
42
|
CREDIT_MANUAL_ADJUSTMENT = :"credit.manual_adjustment"
|
|
43
43
|
CREDIT_BALANCE_LOW = :"credit.balance_low"
|
|
44
|
+
ABANDONED_CHECKOUT_DETECTED = :"abandoned_checkout.detected"
|
|
45
|
+
ABANDONED_CHECKOUT_RECOVERED = :"abandoned_checkout.recovered"
|
|
46
|
+
DUNNING_STARTED = :"dunning.started"
|
|
47
|
+
DUNNING_RECOVERED = :"dunning.recovered"
|
|
48
|
+
ACR_EMAIL = :"acr.email"
|
|
49
|
+
DUNNING_EMAIL = :"dunning.email"
|
|
44
50
|
|
|
45
51
|
# @!method self.values
|
|
46
52
|
# @return [Array<Symbol>]
|
|
@@ -11,7 +11,7 @@ module Dodopayments
|
|
|
11
11
|
# @!attribute data
|
|
12
12
|
# The latest data at the time of delivery attempt
|
|
13
13
|
#
|
|
14
|
-
# @return [Dodopayments::Models::WebhookPayload::Data::Payment, Dodopayments::Models::WebhookPayload::Data::Subscription, Dodopayments::Models::WebhookPayload::Data::Refund, Dodopayments::Models::WebhookPayload::Data::Dispute, Dodopayments::Models::WebhookPayload::Data::LicenseKey, Dodopayments::Models::WebhookPayload::Data::CreditLedgerEntry, Dodopayments::Models::WebhookPayload::Data::CreditBalanceLow]
|
|
14
|
+
# @return [Dodopayments::Models::WebhookPayload::Data::Payment, Dodopayments::Models::WebhookPayload::Data::Subscription, Dodopayments::Models::WebhookPayload::Data::Refund, Dodopayments::Models::WebhookPayload::Data::Dispute, Dodopayments::Models::WebhookPayload::Data::LicenseKey, Dodopayments::Models::WebhookPayload::Data::CreditLedgerEntry, Dodopayments::Models::WebhookPayload::Data::CreditBalanceLow, Dodopayments::Models::WebhookPayload::Data::AbandonedCheckout, Dodopayments::Models::WebhookPayload::Data::DunningAttempt]
|
|
15
15
|
required :data, union: -> { Dodopayments::WebhookPayload::Data }
|
|
16
16
|
|
|
17
17
|
# @!attribute timestamp
|
|
@@ -33,7 +33,7 @@ module Dodopayments
|
|
|
33
33
|
#
|
|
34
34
|
# @param business_id [String]
|
|
35
35
|
#
|
|
36
|
-
# @param data [Dodopayments::Models::WebhookPayload::Data::Payment, Dodopayments::Models::WebhookPayload::Data::Subscription, Dodopayments::Models::WebhookPayload::Data::Refund, Dodopayments::Models::WebhookPayload::Data::Dispute, Dodopayments::Models::WebhookPayload::Data::LicenseKey, Dodopayments::Models::WebhookPayload::Data::CreditLedgerEntry, Dodopayments::Models::WebhookPayload::Data::CreditBalanceLow] The latest data at the time of delivery attempt
|
|
36
|
+
# @param data [Dodopayments::Models::WebhookPayload::Data::Payment, Dodopayments::Models::WebhookPayload::Data::Subscription, Dodopayments::Models::WebhookPayload::Data::Refund, Dodopayments::Models::WebhookPayload::Data::Dispute, Dodopayments::Models::WebhookPayload::Data::LicenseKey, Dodopayments::Models::WebhookPayload::Data::CreditLedgerEntry, Dodopayments::Models::WebhookPayload::Data::CreditBalanceLow, Dodopayments::Models::WebhookPayload::Data::AbandonedCheckout, Dodopayments::Models::WebhookPayload::Data::DunningAttempt] The latest data at the time of delivery attempt
|
|
37
37
|
#
|
|
38
38
|
# @param timestamp [Time] The timestamp of when the event occurred (not necessarily the same of when it wa
|
|
39
39
|
#
|
|
@@ -61,6 +61,10 @@ module Dodopayments
|
|
|
61
61
|
|
|
62
62
|
variant -> { Dodopayments::WebhookPayload::Data::CreditBalanceLow }
|
|
63
63
|
|
|
64
|
+
variant -> { Dodopayments::WebhookPayload::Data::AbandonedCheckout }
|
|
65
|
+
|
|
66
|
+
variant -> { Dodopayments::WebhookPayload::Data::DunningAttempt }
|
|
67
|
+
|
|
64
68
|
class Payment < Dodopayments::Models::Payment
|
|
65
69
|
# @!attribute payload_type
|
|
66
70
|
#
|
|
@@ -247,8 +251,169 @@ module Dodopayments
|
|
|
247
251
|
end
|
|
248
252
|
end
|
|
249
253
|
|
|
254
|
+
class AbandonedCheckout < Dodopayments::Internal::Type::BaseModel
|
|
255
|
+
# @!attribute abandoned_at
|
|
256
|
+
#
|
|
257
|
+
# @return [Time]
|
|
258
|
+
required :abandoned_at, Time
|
|
259
|
+
|
|
260
|
+
# @!attribute abandonment_reason
|
|
261
|
+
#
|
|
262
|
+
# @return [Symbol, Dodopayments::Models::WebhookPayload::Data::AbandonedCheckout::AbandonmentReason]
|
|
263
|
+
required :abandonment_reason,
|
|
264
|
+
enum: -> { Dodopayments::WebhookPayload::Data::AbandonedCheckout::AbandonmentReason }
|
|
265
|
+
|
|
266
|
+
# @!attribute customer_id
|
|
267
|
+
#
|
|
268
|
+
# @return [String]
|
|
269
|
+
required :customer_id, String
|
|
270
|
+
|
|
271
|
+
# @!attribute payload_type
|
|
272
|
+
#
|
|
273
|
+
# @return [Symbol, Dodopayments::Models::WebhookPayload::Data::AbandonedCheckout::PayloadType]
|
|
274
|
+
required :payload_type, enum: -> { Dodopayments::WebhookPayload::Data::AbandonedCheckout::PayloadType }
|
|
275
|
+
|
|
276
|
+
# @!attribute payment_id
|
|
277
|
+
#
|
|
278
|
+
# @return [String]
|
|
279
|
+
required :payment_id, String
|
|
280
|
+
|
|
281
|
+
# @!attribute status
|
|
282
|
+
#
|
|
283
|
+
# @return [Symbol, Dodopayments::Models::WebhookPayload::Data::AbandonedCheckout::Status]
|
|
284
|
+
required :status, enum: -> { Dodopayments::WebhookPayload::Data::AbandonedCheckout::Status }
|
|
285
|
+
|
|
286
|
+
# @!attribute recovered_payment_id
|
|
287
|
+
#
|
|
288
|
+
# @return [String, nil]
|
|
289
|
+
optional :recovered_payment_id, String, nil?: true
|
|
290
|
+
|
|
291
|
+
# @!method initialize(abandoned_at:, abandonment_reason:, customer_id:, payload_type:, payment_id:, status:, recovered_payment_id: nil)
|
|
292
|
+
# @param abandoned_at [Time]
|
|
293
|
+
# @param abandonment_reason [Symbol, Dodopayments::Models::WebhookPayload::Data::AbandonedCheckout::AbandonmentReason]
|
|
294
|
+
# @param customer_id [String]
|
|
295
|
+
# @param payload_type [Symbol, Dodopayments::Models::WebhookPayload::Data::AbandonedCheckout::PayloadType]
|
|
296
|
+
# @param payment_id [String]
|
|
297
|
+
# @param status [Symbol, Dodopayments::Models::WebhookPayload::Data::AbandonedCheckout::Status]
|
|
298
|
+
# @param recovered_payment_id [String, nil]
|
|
299
|
+
|
|
300
|
+
# @see Dodopayments::Models::WebhookPayload::Data::AbandonedCheckout#abandonment_reason
|
|
301
|
+
module AbandonmentReason
|
|
302
|
+
extend Dodopayments::Internal::Type::Enum
|
|
303
|
+
|
|
304
|
+
PAYMENT_FAILED = :payment_failed
|
|
305
|
+
CHECKOUT_INCOMPLETE = :checkout_incomplete
|
|
306
|
+
|
|
307
|
+
# @!method self.values
|
|
308
|
+
# @return [Array<Symbol>]
|
|
309
|
+
end
|
|
310
|
+
|
|
311
|
+
# @see Dodopayments::Models::WebhookPayload::Data::AbandonedCheckout#payload_type
|
|
312
|
+
module PayloadType
|
|
313
|
+
extend Dodopayments::Internal::Type::Enum
|
|
314
|
+
|
|
315
|
+
ABANDONED_CHECKOUT = :AbandonedCheckout
|
|
316
|
+
|
|
317
|
+
# @!method self.values
|
|
318
|
+
# @return [Array<Symbol>]
|
|
319
|
+
end
|
|
320
|
+
|
|
321
|
+
# @see Dodopayments::Models::WebhookPayload::Data::AbandonedCheckout#status
|
|
322
|
+
module Status
|
|
323
|
+
extend Dodopayments::Internal::Type::Enum
|
|
324
|
+
|
|
325
|
+
ABANDONED = :abandoned
|
|
326
|
+
RECOVERING = :recovering
|
|
327
|
+
RECOVERED = :recovered
|
|
328
|
+
EXHAUSTED = :exhausted
|
|
329
|
+
OPTED_OUT = :opted_out
|
|
330
|
+
|
|
331
|
+
# @!method self.values
|
|
332
|
+
# @return [Array<Symbol>]
|
|
333
|
+
end
|
|
334
|
+
end
|
|
335
|
+
|
|
336
|
+
class DunningAttempt < Dodopayments::Internal::Type::BaseModel
|
|
337
|
+
# @!attribute created_at
|
|
338
|
+
#
|
|
339
|
+
# @return [Time]
|
|
340
|
+
required :created_at, Time
|
|
341
|
+
|
|
342
|
+
# @!attribute customer_id
|
|
343
|
+
#
|
|
344
|
+
# @return [String]
|
|
345
|
+
required :customer_id, String
|
|
346
|
+
|
|
347
|
+
# @!attribute payload_type
|
|
348
|
+
#
|
|
349
|
+
# @return [Symbol, Dodopayments::Models::WebhookPayload::Data::DunningAttempt::PayloadType]
|
|
350
|
+
required :payload_type, enum: -> { Dodopayments::WebhookPayload::Data::DunningAttempt::PayloadType }
|
|
351
|
+
|
|
352
|
+
# @!attribute status
|
|
353
|
+
#
|
|
354
|
+
# @return [Symbol, Dodopayments::Models::WebhookPayload::Data::DunningAttempt::Status]
|
|
355
|
+
required :status, enum: -> { Dodopayments::WebhookPayload::Data::DunningAttempt::Status }
|
|
356
|
+
|
|
357
|
+
# @!attribute subscription_id
|
|
358
|
+
#
|
|
359
|
+
# @return [String]
|
|
360
|
+
required :subscription_id, String
|
|
361
|
+
|
|
362
|
+
# @!attribute trigger_state
|
|
363
|
+
#
|
|
364
|
+
# @return [Symbol, Dodopayments::Models::WebhookPayload::Data::DunningAttempt::TriggerState]
|
|
365
|
+
required :trigger_state, enum: -> { Dodopayments::WebhookPayload::Data::DunningAttempt::TriggerState }
|
|
366
|
+
|
|
367
|
+
# @!attribute payment_id
|
|
368
|
+
#
|
|
369
|
+
# @return [String, nil]
|
|
370
|
+
optional :payment_id, String, nil?: true
|
|
371
|
+
|
|
372
|
+
# @!method initialize(created_at:, customer_id:, payload_type:, status:, subscription_id:, trigger_state:, payment_id: nil)
|
|
373
|
+
# @param created_at [Time]
|
|
374
|
+
# @param customer_id [String]
|
|
375
|
+
# @param payload_type [Symbol, Dodopayments::Models::WebhookPayload::Data::DunningAttempt::PayloadType]
|
|
376
|
+
# @param status [Symbol, Dodopayments::Models::WebhookPayload::Data::DunningAttempt::Status]
|
|
377
|
+
# @param subscription_id [String]
|
|
378
|
+
# @param trigger_state [Symbol, Dodopayments::Models::WebhookPayload::Data::DunningAttempt::TriggerState]
|
|
379
|
+
# @param payment_id [String, nil]
|
|
380
|
+
|
|
381
|
+
# @see Dodopayments::Models::WebhookPayload::Data::DunningAttempt#payload_type
|
|
382
|
+
module PayloadType
|
|
383
|
+
extend Dodopayments::Internal::Type::Enum
|
|
384
|
+
|
|
385
|
+
DUNNING_ATTEMPT = :DunningAttempt
|
|
386
|
+
|
|
387
|
+
# @!method self.values
|
|
388
|
+
# @return [Array<Symbol>]
|
|
389
|
+
end
|
|
390
|
+
|
|
391
|
+
# @see Dodopayments::Models::WebhookPayload::Data::DunningAttempt#status
|
|
392
|
+
module Status
|
|
393
|
+
extend Dodopayments::Internal::Type::Enum
|
|
394
|
+
|
|
395
|
+
RECOVERING = :recovering
|
|
396
|
+
RECOVERED = :recovered
|
|
397
|
+
EXHAUSTED = :exhausted
|
|
398
|
+
|
|
399
|
+
# @!method self.values
|
|
400
|
+
# @return [Array<Symbol>]
|
|
401
|
+
end
|
|
402
|
+
|
|
403
|
+
# @see Dodopayments::Models::WebhookPayload::Data::DunningAttempt#trigger_state
|
|
404
|
+
module TriggerState
|
|
405
|
+
extend Dodopayments::Internal::Type::Enum
|
|
406
|
+
|
|
407
|
+
ON_HOLD = :on_hold
|
|
408
|
+
CANCELLED = :cancelled
|
|
409
|
+
|
|
410
|
+
# @!method self.values
|
|
411
|
+
# @return [Array<Symbol>]
|
|
412
|
+
end
|
|
413
|
+
end
|
|
414
|
+
|
|
250
415
|
# @!method self.variants
|
|
251
|
-
# @return [Array(Dodopayments::Models::WebhookPayload::Data::Payment, Dodopayments::Models::WebhookPayload::Data::Subscription, Dodopayments::Models::WebhookPayload::Data::Refund, Dodopayments::Models::WebhookPayload::Data::Dispute, Dodopayments::Models::WebhookPayload::Data::LicenseKey, Dodopayments::Models::WebhookPayload::Data::CreditLedgerEntry, Dodopayments::Models::WebhookPayload::Data::CreditBalanceLow)]
|
|
416
|
+
# @return [Array(Dodopayments::Models::WebhookPayload::Data::Payment, Dodopayments::Models::WebhookPayload::Data::Subscription, Dodopayments::Models::WebhookPayload::Data::Refund, Dodopayments::Models::WebhookPayload::Data::Dispute, Dodopayments::Models::WebhookPayload::Data::LicenseKey, Dodopayments::Models::WebhookPayload::Data::CreditLedgerEntry, Dodopayments::Models::WebhookPayload::Data::CreditBalanceLow, Dodopayments::Models::WebhookPayload::Data::AbandonedCheckout, Dodopayments::Models::WebhookPayload::Data::DunningAttempt)]
|
|
252
417
|
end
|
|
253
418
|
end
|
|
254
419
|
end
|
data/lib/dodopayments/models.rb
CHANGED
|
@@ -39,6 +39,10 @@ module Dodopayments
|
|
|
39
39
|
mod.define_sorbet_constant!(const) { T.type_alias { mod.to_sorbet_type } }
|
|
40
40
|
end
|
|
41
41
|
|
|
42
|
+
AbandonedCheckoutDetectedWebhookEvent = Dodopayments::Models::AbandonedCheckoutDetectedWebhookEvent
|
|
43
|
+
|
|
44
|
+
AbandonedCheckoutRecoveredWebhookEvent = Dodopayments::Models::AbandonedCheckoutRecoveredWebhookEvent
|
|
45
|
+
|
|
42
46
|
AddMeterToPrice = Dodopayments::Models::AddMeterToPrice
|
|
43
47
|
|
|
44
48
|
AddonCartResponseItem = Dodopayments::Models::AddonCartResponseItem
|
|
@@ -217,6 +221,10 @@ module Dodopayments
|
|
|
217
221
|
|
|
218
222
|
DisputeWonWebhookEvent = Dodopayments::Models::DisputeWonWebhookEvent
|
|
219
223
|
|
|
224
|
+
DunningRecoveredWebhookEvent = Dodopayments::Models::DunningRecoveredWebhookEvent
|
|
225
|
+
|
|
226
|
+
DunningStartedWebhookEvent = Dodopayments::Models::DunningStartedWebhookEvent
|
|
227
|
+
|
|
220
228
|
Event = Dodopayments::Models::Event
|
|
221
229
|
|
|
222
230
|
EventInput = Dodopayments::Models::EventInput
|
|
@@ -309,6 +317,8 @@ module Dodopayments
|
|
|
309
317
|
|
|
310
318
|
PayoutListParams = Dodopayments::Models::PayoutListParams
|
|
311
319
|
|
|
320
|
+
Payouts = Dodopayments::Models::Payouts
|
|
321
|
+
|
|
312
322
|
Price = Dodopayments::Models::Price
|
|
313
323
|
|
|
314
324
|
Product = Dodopayments::Models::Product
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Dodopayments
|
|
4
|
+
module Resources
|
|
5
|
+
class Payouts
|
|
6
|
+
class Breakup
|
|
7
|
+
class Details
|
|
8
|
+
# Returns paginated individual balance ledger entries for a payout, with each
|
|
9
|
+
# entry's amount pro-rated into the payout's currency. Supports pagination via
|
|
10
|
+
# `page_size` (default 10, max 100) and `page_number` (default 0) query
|
|
11
|
+
# parameters.
|
|
12
|
+
#
|
|
13
|
+
# @overload list(payout_id, page_number: nil, page_size: nil, request_options: {})
|
|
14
|
+
#
|
|
15
|
+
# @param payout_id [String] Id of the Payout to get breakup for
|
|
16
|
+
#
|
|
17
|
+
# @param page_number [Integer] Page number (0-indexed). Default: 0.
|
|
18
|
+
#
|
|
19
|
+
# @param page_size [Integer] Number of items per page. Default: 10, Max: 100.
|
|
20
|
+
#
|
|
21
|
+
# @param request_options [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
22
|
+
#
|
|
23
|
+
# @return [Dodopayments::Internal::DefaultPageNumberPagination<Dodopayments::Models::Payouts::Breakup::DetailListResponse>]
|
|
24
|
+
#
|
|
25
|
+
# @see Dodopayments::Models::Payouts::Breakup::DetailListParams
|
|
26
|
+
def list(payout_id, params = {})
|
|
27
|
+
parsed, options = Dodopayments::Payouts::Breakup::DetailListParams.dump_request(params)
|
|
28
|
+
query = Dodopayments::Internal::Util.encode_query_params(parsed)
|
|
29
|
+
@client.request(
|
|
30
|
+
method: :get,
|
|
31
|
+
path: ["payouts/%1$s/breakup/details", payout_id],
|
|
32
|
+
query: query,
|
|
33
|
+
page: Dodopayments::Internal::DefaultPageNumberPagination,
|
|
34
|
+
model: Dodopayments::Models::Payouts::Breakup::DetailListResponse,
|
|
35
|
+
options: options
|
|
36
|
+
)
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
# Downloads the complete payout breakup as a CSV file. Each row represents a
|
|
40
|
+
# balance ledger entry with columns: Ledger ID, Event Type, Original Amount,
|
|
41
|
+
# Original Currency, Reference Object ID, Description, Created At, USD Equivalent
|
|
42
|
+
# Amount, and Payout Currency Amount.
|
|
43
|
+
#
|
|
44
|
+
# @overload download_csv(payout_id, request_options: {})
|
|
45
|
+
#
|
|
46
|
+
# @param payout_id [String] Id of the Payout to get breakup for
|
|
47
|
+
#
|
|
48
|
+
# @param request_options [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
49
|
+
#
|
|
50
|
+
# @return [nil]
|
|
51
|
+
#
|
|
52
|
+
# @see Dodopayments::Models::Payouts::Breakup::DetailDownloadCsvParams
|
|
53
|
+
def download_csv(payout_id, params = {})
|
|
54
|
+
@client.request(
|
|
55
|
+
method: :get,
|
|
56
|
+
path: ["payouts/%1$s/breakup/details/csv", payout_id],
|
|
57
|
+
model: NilClass,
|
|
58
|
+
options: params[:request_options]
|
|
59
|
+
)
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
# @api private
|
|
63
|
+
#
|
|
64
|
+
# @param client [Dodopayments::Client]
|
|
65
|
+
def initialize(client:)
|
|
66
|
+
@client = client
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
end
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Dodopayments
|
|
4
|
+
module Resources
|
|
5
|
+
class Payouts
|
|
6
|
+
class Breakup
|
|
7
|
+
# @return [Dodopayments::Resources::Payouts::Breakup::Details]
|
|
8
|
+
attr_reader :details
|
|
9
|
+
|
|
10
|
+
# Returns the breakdown of a payout by event type (payments, refunds, disputes,
|
|
11
|
+
# fees, etc.) in the payout's currency. Each amount is proportionally allocated
|
|
12
|
+
# based on USD equivalent values, ensuring the total sums exactly to the payout
|
|
13
|
+
# amount.
|
|
14
|
+
#
|
|
15
|
+
# @overload retrieve(payout_id, request_options: {})
|
|
16
|
+
#
|
|
17
|
+
# @param payout_id [String] Id of the Payout to get breakup for
|
|
18
|
+
#
|
|
19
|
+
# @param request_options [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
20
|
+
#
|
|
21
|
+
# @return [Array<Dodopayments::Models::Payouts::BreakupRetrieveResponseItem>]
|
|
22
|
+
#
|
|
23
|
+
# @see Dodopayments::Models::Payouts::BreakupRetrieveParams
|
|
24
|
+
def retrieve(payout_id, params = {})
|
|
25
|
+
@client.request(
|
|
26
|
+
method: :get,
|
|
27
|
+
path: ["payouts/%1$s/breakup", payout_id],
|
|
28
|
+
model: Dodopayments::Internal::Type::ArrayOf[Dodopayments::Models::Payouts::BreakupRetrieveResponseItem],
|
|
29
|
+
options: params[:request_options]
|
|
30
|
+
)
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
# @api private
|
|
34
|
+
#
|
|
35
|
+
# @param client [Dodopayments::Client]
|
|
36
|
+
def initialize(client:)
|
|
37
|
+
@client = client
|
|
38
|
+
@details = Dodopayments::Resources::Payouts::Breakup::Details.new(client: client)
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
@@ -3,6 +3,9 @@
|
|
|
3
3
|
module Dodopayments
|
|
4
4
|
module Resources
|
|
5
5
|
class Payouts
|
|
6
|
+
# @return [Dodopayments::Resources::Payouts::Breakup]
|
|
7
|
+
attr_reader :breakup
|
|
8
|
+
|
|
6
9
|
# @overload list(created_at_gte: nil, created_at_lte: nil, page_number: nil, page_size: nil, request_options: {})
|
|
7
10
|
#
|
|
8
11
|
# @param created_at_gte [Time] Get payouts created after this time (inclusive)
|
|
@@ -36,6 +39,7 @@ module Dodopayments
|
|
|
36
39
|
# @param client [Dodopayments::Client]
|
|
37
40
|
def initialize(client:)
|
|
38
41
|
@client = client
|
|
42
|
+
@breakup = Dodopayments::Resources::Payouts::Breakup.new(client: client)
|
|
39
43
|
end
|
|
40
44
|
end
|
|
41
45
|
end
|
|
@@ -84,7 +84,7 @@ module Dodopayments
|
|
|
84
84
|
)
|
|
85
85
|
end
|
|
86
86
|
|
|
87
|
-
# @overload update(subscription_id, billing: nil, cancel_at_next_billing_date: nil, credit_entitlement_cart: nil, customer_name: nil, disable_on_demand: nil, metadata: nil, next_billing_date: nil, status: nil, tax_id: nil, request_options: {})
|
|
87
|
+
# @overload update(subscription_id, billing: nil, cancel_at_next_billing_date: nil, cancel_reason: nil, credit_entitlement_cart: nil, customer_name: nil, disable_on_demand: nil, metadata: nil, next_billing_date: nil, status: nil, tax_id: nil, request_options: {})
|
|
88
88
|
#
|
|
89
89
|
# @param subscription_id [String] Subscription Id
|
|
90
90
|
#
|
|
@@ -92,6 +92,8 @@ module Dodopayments
|
|
|
92
92
|
#
|
|
93
93
|
# @param cancel_at_next_billing_date [Boolean, nil] When set, the subscription will remain active until the end of billing period
|
|
94
94
|
#
|
|
95
|
+
# @param cancel_reason [Symbol, Dodopayments::Models::SubscriptionUpdateParams::CancelReason, nil]
|
|
96
|
+
#
|
|
95
97
|
# @param credit_entitlement_cart [Array<Dodopayments::Models::SubscriptionUpdateParams::CreditEntitlementCart>, nil] Update credit entitlement cart settings
|
|
96
98
|
#
|
|
97
99
|
# @param customer_name [String, nil]
|