Class: Dodopayments::Models::CheckoutSessionPreviewResponse::ProductCart

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

Defined Under Namespace

Classes: Addon, CreditEntitlement, Meter

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(measurement_unit:, name:, price_per_unit:, description: nil, free_threshold: nil) ⇒ Object

Parameters:

  • measurement_unit (String)
  • name (String)
  • price_per_unit (String)
  • description (String, nil) (defaults to: nil)
  • free_threshold (Integer, nil) (defaults to: nil)


# File 'lib/dodopayments/models/checkout_session_preview_response.rb', line 294

Instance Attribute Details

#addonsArray<Dodopayments::Models::CheckoutSessionPreviewResponse::ProductCart::Addon>?



197
198
199
# File 'lib/dodopayments/models/checkout_session_preview_response.rb', line 197

optional :addons,
-> { Dodopayments::Internal::Type::ArrayOf[Dodopayments::Models::CheckoutSessionPreviewResponse::ProductCart::Addon] },
nil?: true

#credit_entitlementsArray<Dodopayments::Models::CheckoutSessionPreviewResponse::ProductCart::CreditEntitlement>

Credit entitlements that will be granted upon purchase



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

required :credit_entitlements,
-> { Dodopayments::Internal::Type::ArrayOf[Dodopayments::Models::CheckoutSessionPreviewResponse::ProductCart::CreditEntitlement] }

#currencySymbol, Dodopayments::Models::Currency

the currency in which the calculatiosn were made

Returns:



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

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

#descriptionString?

Returns:

  • (String, nil)


204
# File 'lib/dodopayments/models/checkout_session_preview_response.rb', line 204

optional :description, String, nil?: true

#discount_amountInteger?

discount percentage

Returns:

  • (Integer, nil)


210
# File 'lib/dodopayments/models/checkout_session_preview_response.rb', line 210

optional :discount_amount, Integer, nil?: true

#discount_cycleInteger?

number of cycles the discount will apply

Returns:

  • (Integer, nil)


216
# File 'lib/dodopayments/models/checkout_session_preview_response.rb', line 216

optional :discount_cycle, Integer, nil?: true

#discounted_priceInteger

discounted price

Returns:

  • (Integer)


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

required :discounted_price, Integer

#is_subscriptionBoolean

Whether this is a subscription product (affects tax calculation in breakup)

Returns:

  • (Boolean)


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

required :is_subscription, Dodopayments::Internal::Type::Boolean

#is_usage_basedBoolean

Returns:

  • (Boolean)


144
# File 'lib/dodopayments/models/checkout_session_preview_response.rb', line 144

required :is_usage_based, Dodopayments::Internal::Type::Boolean

#metersArray<Dodopayments::Models::CheckoutSessionPreviewResponse::ProductCart::Meter>



149
150
# File 'lib/dodopayments/models/checkout_session_preview_response.rb', line 149

required :meters,
-> { Dodopayments::Internal::Type::ArrayOf[Dodopayments::Models::CheckoutSessionPreviewResponse::ProductCart::Meter] }

#nameString?

name of the product

Returns:

  • (String, nil)


222
# File 'lib/dodopayments/models/checkout_session_preview_response.rb', line 222

optional :name, String, nil?: true

#og_currencySymbol, Dodopayments::Models::Currency

the product currency

Returns:



156
# File 'lib/dodopayments/models/checkout_session_preview_response.rb', line 156

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

#og_priceInteger

original price of the product

Returns:

  • (Integer)


162
# File 'lib/dodopayments/models/checkout_session_preview_response.rb', line 162

required :og_price, Integer

#product_idString

unique id of the product

Returns:

  • (String)


168
# File 'lib/dodopayments/models/checkout_session_preview_response.rb', line 168

required :product_id, String

#quantityInteger

Quanitity

Returns:

  • (Integer)


174
# File 'lib/dodopayments/models/checkout_session_preview_response.rb', line 174

required :quantity, Integer

#taxInteger?

total tax

Returns:

  • (Integer, nil)


228
# File 'lib/dodopayments/models/checkout_session_preview_response.rb', line 228

optional :tax, Integer, nil?: true

#tax_categorySymbol, Dodopayments::Models::TaxCategory

tax category



180
# File 'lib/dodopayments/models/checkout_session_preview_response.rb', line 180

required :tax_category, enum: -> { Dodopayments::TaxCategory }

#tax_inclusiveBoolean

Whether tax is included in the price

Returns:

  • (Boolean)


186
# File 'lib/dodopayments/models/checkout_session_preview_response.rb', line 186

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

#tax_rateInteger

tax rate

Returns:

  • (Integer)


192
# File 'lib/dodopayments/models/checkout_session_preview_response.rb', line 192

required :tax_rate, Integer