Class: Dodopayments::Models::Price::UsageBasedPrice

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

Defined Under Namespace

Modules: Type

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, 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

#initialize(currency: , discount: , fixed_price: , payment_frequency_count: , payment_frequency_interval: , purchasing_power_parity: , subscription_period_count: , subscription_period_interval: , type: , meters: nil, tax_inclusive: nil) ⇒ Object

Some parameter documentations has been truncated, see Dodopayments::Models::Price::UsageBasedPrice for more details.

Usage Based price details.

Parameters:

  • currency (Symbol, Dodopayments::Models::Currency) (defaults to: )

    The currency in which the payment is made.

  • discount (Integer) (defaults to: )

    Discount applied to the price, represented as a percentage (0 to 100).

  • fixed_price (Integer) (defaults to: )

    The fixed payment amount. Represented in the lowest denomination of the currency

  • payment_frequency_count (Integer) (defaults to: )

    Number of units for the payment frequency.

  • payment_frequency_interval (Symbol, Dodopayments::Models::TimeInterval) (defaults to: )

    The time interval for the payment frequency (e.g., day, month, year).

  • purchasing_power_parity (Boolean) (defaults to: )

    Indicates if purchasing power parity adjustments are applied to the price.

  • subscription_period_count (Integer) (defaults to: )

    Number of units for the subscription period.

  • subscription_period_interval (Symbol, Dodopayments::Models::TimeInterval) (defaults to: )

    The time interval for the subscription period (e.g., day, month, year).

  • type (Symbol, Dodopayments::Models::Price::UsageBasedPrice::Type) (defaults to: )
  • meters (Array<Dodopayments::Models::AddMeterToPrice>, nil) (defaults to: nil)
  • tax_inclusive (Boolean, nil) (defaults to: nil)

    Indicates if the price is tax inclusive



# File 'lib/dodopayments/models/price.rb', line 289

Instance Attribute Details

#currencySymbol, Dodopayments::Models::Currency

The currency in which the payment is made.

Returns:



221
# File 'lib/dodopayments/models/price.rb', line 221

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

#discountInteger

Discount applied to the price, represented as a percentage (0 to 100).

Returns:

  • (Integer)


227
# File 'lib/dodopayments/models/price.rb', line 227

required :discount, Integer

#fixed_priceInteger

The fixed payment amount. Represented in the lowest denomination of the currency (e.g., cents for USD). For example, to charge $1.00, pass ‘100`.

Returns:

  • (Integer)


234
# File 'lib/dodopayments/models/price.rb', line 234

required :fixed_price, Integer

#metersArray<Dodopayments::Models::AddMeterToPrice>?

Returns:



277
278
279
280
281
# File 'lib/dodopayments/models/price.rb', line 277

optional :meters,
-> {
  Dodopayments::Internal::Type::ArrayOf[Dodopayments::AddMeterToPrice]
},
nil?: true

#payment_frequency_countInteger

Number of units for the payment frequency. For example, a value of ‘1` with a `payment_frequency_interval` of `month` represents monthly payments.

Returns:

  • (Integer)


241
# File 'lib/dodopayments/models/price.rb', line 241

required :payment_frequency_count, Integer

#payment_frequency_intervalSymbol, Dodopayments::Models::TimeInterval

The time interval for the payment frequency (e.g., day, month, year).



247
# File 'lib/dodopayments/models/price.rb', line 247

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

#purchasing_power_parityBoolean

Indicates if purchasing power parity adjustments are applied to the price. Purchasing power parity feature is not available as of now

Returns:

  • (Boolean)


254
# File 'lib/dodopayments/models/price.rb', line 254

required :purchasing_power_parity, Dodopayments::Internal::Type::Boolean

#subscription_period_countInteger

Number of units for the subscription period. For example, a value of ‘12` with a `subscription_period_interval` of `month` represents a one-year subscription.

Returns:

  • (Integer)


261
# File 'lib/dodopayments/models/price.rb', line 261

required :subscription_period_count, Integer

#subscription_period_intervalSymbol, Dodopayments::Models::TimeInterval

The time interval for the subscription period (e.g., day, month, year).



267
# File 'lib/dodopayments/models/price.rb', line 267

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

#tax_inclusiveBoolean?

Indicates if the price is tax inclusive

Returns:

  • (Boolean, nil)


287
# File 'lib/dodopayments/models/price.rb', line 287

optional :tax_inclusive, Dodopayments::Internal::Type::Boolean, nil?: true

#typeSymbol, Dodopayments::Models::Price::UsageBasedPrice::Type



272
# File 'lib/dodopayments/models/price.rb', line 272

required :type, enum: -> { Dodopayments::Price::UsageBasedPrice::Type }