Class: WhopSDK::Models::PlanCreateParams

Inherits:
Internal::Type::BaseModel show all
Extended by:
Internal::Type::RequestParameters::Converter
Includes:
Internal::Type::RequestParameters
Defined in:
lib/whop_sdk/models/plan_create_params.rb,
sig/whop_sdk/models/plan_create_params.rbs

Overview

See Also:

  • WhopSDK::Resources::Plans#create

Defined Under Namespace

Modules: ThreeDSLevel Classes: CustomField, Image, PaymentMethodConfiguration

Instance Attribute Summary collapse

Attributes included from Internal::Type::RequestParameters

#request_options

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Internal::Type::RequestParameters::Converter

dump_request

Methods included from Internal::Type::RequestParameters

included

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(disabled: nil, enabled: nil, include_platform_defaults: nil) ⇒ Object

Explicit payment method configuration for the plan. When not provided, the account's defaults apply.

Parameters:

  • disabled (Array<String>) (defaults to: nil)
  • enabled (Array<String>) (defaults to: nil)
  • include_platform_defaults (Boolean) (defaults to: nil)


# File 'lib/whop_sdk/models/plan_create_params.rb', line 309

Instance Attribute Details

#account_idString?

The unique identifier of the account to create this plan for. Defaults to the caller's account.

Parameters:

  • (String)

Returns:

  • (String, nil)


15
# File 'lib/whop_sdk/models/plan_create_params.rb', line 15

optional :account_id, String

#adaptive_pricing_enabledBoolean?

Whether this plan accepts local currency payments via adaptive pricing.

Parameters:

  • value (Boolean, nil)

Returns:

  • (Boolean, nil)


21
# File 'lib/whop_sdk/models/plan_create_params.rb', line 21

optional :adaptive_pricing_enabled, WhopSDK::Internal::Type::Boolean, nil?: true

#billing_periodInteger?

Recurring billing interval in days, such as 30 for monthly or 365 for annual.

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


27
# File 'lib/whop_sdk/models/plan_create_params.rb', line 27

optional :billing_period, Integer, nil?: true

#checkout_stylingObject?

Checkout styling overrides for this plan.

Parameters:

  • value (top, nil)

Returns:

  • (Object, nil)


33
# File 'lib/whop_sdk/models/plan_create_params.rb', line 33

optional :checkout_styling, WhopSDK::Internal::Type::Unknown, nil?: true

#currencyString?

The three-letter ISO currency code for the plan's pricing. Defaults to USD.

Parameters:

  • (String)

Returns:

  • (String, nil)


39
# File 'lib/whop_sdk/models/plan_create_params.rb', line 39

optional :currency, String

#custom_fieldsArray<WhopSDK::Models::PlanCreateParams::CustomField>?

An array of custom field definitions to collect from customers at checkout. Omitting this field clears existing custom fields.

Parameters:

  • value (::Array[WhopSDK::PlanCreateParams::CustomField], nil)

Returns:



46
47
48
# File 'lib/whop_sdk/models/plan_create_params.rb', line 46

optional :custom_fields,
-> { WhopSDK::Internal::Type::ArrayOf[WhopSDK::PlanCreateParams::CustomField] },
nil?: true

#descriptionString?

A text description of the plan displayed to customers on the product page.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


54
# File 'lib/whop_sdk/models/plan_create_params.rb', line 54

optional :description, String, nil?: true

#expiration_daysInteger?

Access duration in days before the membership expires.

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


60
# File 'lib/whop_sdk/models/plan_create_params.rb', line 60

optional :expiration_days, Integer, nil?: true

#imageWhopSDK::Models::PlanCreateParams::Image?

An image displayed on the product page to represent this plan.

Parameters:

  • value (WhopSDK::PlanCreateParams::Image, nil)

Returns:



66
# File 'lib/whop_sdk/models/plan_create_params.rb', line 66

optional :image, -> { WhopSDK::PlanCreateParams::Image }, nil?: true

#initial_priceFloat?

Initial amount charged in the plan's currency, e.g. 10.43 for $10.43.

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


72
# File 'lib/whop_sdk/models/plan_create_params.rb', line 72

optional :initial_price, Float, nil?: true

#internal_notesString?

Private notes visible only to the account owner. Not shown to customers.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


78
# File 'lib/whop_sdk/models/plan_create_params.rb', line 78

optional :internal_notes, String, nil?: true

#legacy_payment_method_controlsBoolean?

Whether this plan uses legacy payment method controls.

Parameters:

  • value (Boolean, nil)

Returns:

  • (Boolean, nil)


84
# File 'lib/whop_sdk/models/plan_create_params.rb', line 84

optional :legacy_payment_method_controls, WhopSDK::Internal::Type::Boolean, nil?: true

#metadataObject?

Custom key-value pairs to store on the plan. Included in webhook payloads for payment and membership events. Max 50 keys, 100 chars per key, 500 chars per string value.

Parameters:

  • value (top, nil)

Returns:

  • (Object, nil)


92
# File 'lib/whop_sdk/models/plan_create_params.rb', line 92

optional :metadata, WhopSDK::Internal::Type::Unknown, nil?: true

#override_tax_typeString?

Override the default tax classification for this specific plan.

Parameters:

  • (String)

Returns:

  • (String, nil)


98
# File 'lib/whop_sdk/models/plan_create_params.rb', line 98

optional :override_tax_type, String

#payment_method_configurationWhopSDK::Models::PlanCreateParams::PaymentMethodConfiguration?

Explicit payment method configuration for the plan. When not provided, the account's defaults apply.

Parameters:

  • value (WhopSDK::PlanCreateParams::PaymentMethodConfiguration, nil)

Returns:



105
106
107
# File 'lib/whop_sdk/models/plan_create_params.rb', line 105

optional :payment_method_configuration,
-> { WhopSDK::PlanCreateParams::PaymentMethodConfiguration },
nil?: true

#plan_typeString?

Plan billing type, such as one_time or renewal.

Parameters:

  • (String)

Returns:

  • (String, nil)


113
# File 'lib/whop_sdk/models/plan_create_params.rb', line 113

optional :plan_type, String

#product_idString?

The unique identifier of the product to attach this plan to.

Parameters:

  • (String)

Returns:

  • (String, nil)


119
# File 'lib/whop_sdk/models/plan_create_params.rb', line 119

optional :product_id, String

#release_methodString?

Sales method for this plan, such as buy_now or waitlist.

Parameters:

  • (String)

Returns:

  • (String, nil)


125
# File 'lib/whop_sdk/models/plan_create_params.rb', line 125

optional :release_method, String

#renewal_priceFloat?

The amount charged each billing period for recurring plans, in the plan's currency.

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


132
# File 'lib/whop_sdk/models/plan_create_params.rb', line 132

optional :renewal_price, Float, nil?: true

#split_pay_required_paymentsInteger?

Installment payments required before the subscription pauses.

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


138
# File 'lib/whop_sdk/models/plan_create_params.rb', line 138

optional :split_pay_required_payments, Integer, nil?: true

#stockInteger?

The maximum number of units available for purchase. Ignored when unlimited_stock is true.

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


145
# File 'lib/whop_sdk/models/plan_create_params.rb', line 145

optional :stock, Integer, nil?: true

#three_ds_levelSymbol, ...

3D Secure behavior for this plan. Send null to inherit the account default.



151
# File 'lib/whop_sdk/models/plan_create_params.rb', line 151

optional :three_ds_level, enum: -> { WhopSDK::PlanCreateParams::ThreeDSLevel }

#titleString?

The display name of the plan shown to customers on the product page.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


157
# File 'lib/whop_sdk/models/plan_create_params.rb', line 157

optional :title, String, nil?: true

#trial_period_daysInteger?

Free trial duration before the first recurring charge.

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


163
# File 'lib/whop_sdk/models/plan_create_params.rb', line 163

optional :trial_period_days, Integer, nil?: true

#unlimited_stockBoolean?

Whether the plan has unlimited stock. When true, the stock field is ignored.

Parameters:

  • value (Boolean, nil)

Returns:

  • (Boolean, nil)


169
# File 'lib/whop_sdk/models/plan_create_params.rb', line 169

optional :unlimited_stock, WhopSDK::Internal::Type::Boolean, nil?: true

#visibilityString?

Whether the plan is visible to customers or hidden from public view.

Parameters:

  • (String)

Returns:

  • (String, nil)


175
# File 'lib/whop_sdk/models/plan_create_params.rb', line 175

optional :visibility, String

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/whop_sdk/models/plan_create_params.rb', line 293

Instance Method Details

#to_hash{

Returns:

  • ({)


138
# File 'sig/whop_sdk/models/plan_create_params.rbs', line 138

def to_hash: -> {