Class: Dodopayments::Models::Subscription

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/dodopayments/models/subscription.rb

Overview

Defined Under Namespace

Classes: Meter

Instance Attribute Summary collapse

Method Summary

Methods inherited from Internal::Type::BaseModel

#==, ==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, #initialize, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, inspect, #inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

This class inherits a constructor from Dodopayments::Internal::Type::BaseModel

Instance Attribute Details

#addonsArray<Dodopayments::Models::AddonCartResponseItem>

Addons associated with this subscription



11
# File 'lib/dodopayments/models/subscription.rb', line 11

required :addons, -> { Dodopayments::Internal::Type::ArrayOf[Dodopayments::AddonCartResponseItem] }

#billingDodopayments::Models::BillingAddress

Billing address details for payments



17
# File 'lib/dodopayments/models/subscription.rb', line 17

required :billing, -> { Dodopayments::BillingAddress }

#cancel_at_next_billing_dateBoolean

Indicates if the subscription will cancel at the next billing date

Returns:

  • (Boolean)


23
# File 'lib/dodopayments/models/subscription.rb', line 23

required :cancel_at_next_billing_date, Dodopayments::Internal::Type::Boolean

#cancelled_atTime?

Cancelled timestamp if the subscription is cancelled

Returns:

  • (Time, nil)


145
# File 'lib/dodopayments/models/subscription.rb', line 145

optional :cancelled_at, Time, nil?: true

#created_atTime

Timestamp when the subscription was created

Returns:

  • (Time)


29
# File 'lib/dodopayments/models/subscription.rb', line 29

required :created_at, Time

#currencySymbol, Dodopayments::Models::Currency

Currency used for the subscription payments

Returns:



35
# File 'lib/dodopayments/models/subscription.rb', line 35

required :currency, enum: -> { Dodopayments::Currency }

#customerDodopayments::Models::CustomerLimitedDetails

Customer details associated with the subscription



41
# File 'lib/dodopayments/models/subscription.rb', line 41

required :customer, -> { Dodopayments::CustomerLimitedDetails }

#discount_cycles_remainingInteger?

Number of remaining discount cycles if discount is applied

Returns:

  • (Integer, nil)


151
# File 'lib/dodopayments/models/subscription.rb', line 151

optional :discount_cycles_remaining, Integer, nil?: true

#discount_idString?

The discount id if discount is applied

Returns:

  • (String, nil)


157
# File 'lib/dodopayments/models/subscription.rb', line 157

optional :discount_id, String, nil?: true

#expires_atTime?

Timestamp when the subscription will expire

Returns:

  • (Time, nil)


163
# File 'lib/dodopayments/models/subscription.rb', line 163

optional :expires_at, Time, nil?: true

#metadataHash{Symbol=>String}

Additional custom data associated with the subscription

Returns:

  • (Hash{Symbol=>String})


47
# File 'lib/dodopayments/models/subscription.rb', line 47

required :metadata, Dodopayments::Internal::Type::HashOf[String]

#metersArray<Dodopayments::Models::Subscription::Meter>

Meters associated with this subscription (for usage-based billing)



53
# File 'lib/dodopayments/models/subscription.rb', line 53

required :meters, -> { Dodopayments::Internal::Type::ArrayOf[Dodopayments::Subscription::Meter] }

#next_billing_dateTime

Timestamp of the next scheduled billing. Indicates the end of current billing period

Returns:

  • (Time)


60
# File 'lib/dodopayments/models/subscription.rb', line 60

required :next_billing_date, Time

#on_demandBoolean

Wether the subscription is on-demand or not

Returns:

  • (Boolean)


66
# File 'lib/dodopayments/models/subscription.rb', line 66

required :on_demand, Dodopayments::Internal::Type::Boolean

#payment_frequency_countInteger

Number of payment frequency intervals

Returns:

  • (Integer)


72
# File 'lib/dodopayments/models/subscription.rb', line 72

required :payment_frequency_count, Integer

#payment_frequency_intervalSymbol, Dodopayments::Models::TimeInterval

Time interval for payment frequency (e.g. month, year)



78
# File 'lib/dodopayments/models/subscription.rb', line 78

required :payment_frequency_interval, enum: -> { Dodopayments::TimeInterval }

#payment_method_idString?

Saved payment method id used for recurring charges

Returns:

  • (String, nil)


169
# File 'lib/dodopayments/models/subscription.rb', line 169

optional :payment_method_id, String, nil?: true

#previous_billing_dateTime

Timestamp of the last payment. Indicates the start of current billing period

Returns:

  • (Time)


84
# File 'lib/dodopayments/models/subscription.rb', line 84

required :previous_billing_date, Time

#product_idString

Identifier of the product associated with this subscription

Returns:

  • (String)


90
# File 'lib/dodopayments/models/subscription.rb', line 90

required :product_id, String

#quantityInteger

Number of units/items included in the subscription

Returns:

  • (Integer)


96
# File 'lib/dodopayments/models/subscription.rb', line 96

required :quantity, Integer

#recurring_pre_tax_amountInteger

Amount charged before tax for each recurring payment in smallest currency unit (e.g. cents)

Returns:

  • (Integer)


103
# File 'lib/dodopayments/models/subscription.rb', line 103

required :recurring_pre_tax_amount, Integer

#statusSymbol, Dodopayments::Models::SubscriptionStatus

Current status of the subscription



109
# File 'lib/dodopayments/models/subscription.rb', line 109

required :status, enum: -> { Dodopayments::SubscriptionStatus }

#subscription_idString

Unique identifier for the subscription

Returns:

  • (String)


115
# File 'lib/dodopayments/models/subscription.rb', line 115

required :subscription_id, String

#subscription_period_countInteger

Number of subscription period intervals

Returns:

  • (Integer)


121
# File 'lib/dodopayments/models/subscription.rb', line 121

required :subscription_period_count, Integer

#subscription_period_intervalSymbol, Dodopayments::Models::TimeInterval

Time interval for the subscription period (e.g. month, year)



127
# File 'lib/dodopayments/models/subscription.rb', line 127

required :subscription_period_interval, enum: -> { Dodopayments::TimeInterval }

#tax_idString?

Tax identifier provided for this subscription (if applicable)

Returns:

  • (String, nil)


175
# File 'lib/dodopayments/models/subscription.rb', line 175

optional :tax_id, String, nil?: true

#tax_inclusiveBoolean

Indicates if the recurring_pre_tax_amount is tax inclusive

Returns:

  • (Boolean)


133
# File 'lib/dodopayments/models/subscription.rb', line 133

required :tax_inclusive, Dodopayments::Internal::Type::Boolean

#trial_period_daysInteger

Number of days in the trial period (0 if no trial)

Returns:

  • (Integer)


139
# File 'lib/dodopayments/models/subscription.rb', line 139

required :trial_period_days, Integer