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

Overview

Defined Under Namespace

Classes: CheckoutStyling, CustomField, Image, PaymentMethodConfiguration

Instance Attribute Summary collapse

Attributes included from Internal::Type::RequestParameters

#request_options

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(id:) ⇒ Object

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

Parameters:

  • id (String)

    The ID of an existing file object.



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

Instance Attribute Details

#billing_periodInteger?

The number of days between recurring charges. For example, 30 for monthly or 365 for yearly.

Returns:

  • (Integer, nil)


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

optional :billing_period, Integer, nil?: true

#checkout_stylingWhopSDK::Models::PlanCreateParams::CheckoutStyling?

Checkout styling overrides for this plan. Pass null to inherit from the company default.



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

optional :checkout_styling, -> { WhopSDK::PlanCreateParams::CheckoutStyling }, nil?: true

#company_idString

The unique identifier of the company to create this plan for.

Returns:

  • (String)


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

required :company_id, String

#currencySymbol, ...

The available currencies on the platform

Returns:



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

optional :currency, enum: -> { WhopSDK::Currency }, nil?: true

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

An array of custom field definitions to collect from customers at checkout.



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.

Returns:

  • (String, nil)


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

optional :description, String, nil?: true

#expiration_daysInteger?

The number of days until the membership expires and access is revoked. Used for expiration-based plans.

Returns:

  • (Integer, nil)


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

optional :expiration_days, Integer, nil?: true

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

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



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

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

#initial_priceFloat?

The amount charged on the first purchase. For one-time plans, this is the full price. For recurring plans, this is an additional charge on top of the renewal price. Provided in the plan’s currency (e.g., 10.43 for $10.43).

Returns:

  • (Float, nil)


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

optional :initial_price, Float, nil?: true

#internal_notesString?

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

Returns:

  • (String, nil)


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

optional :internal_notes, String, nil?: true

#legacy_payment_method_controlsBoolean?

Whether this plan uses legacy payment method controls.

Returns:

  • (Boolean, nil)


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

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

#override_tax_typeSymbol, ...

Whether or not the tax is included in a plan’s price (or if it hasn’t been set up)

Returns:



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

optional :override_tax_type, enum: -> { WhopSDK::TaxType }, nil?: true

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

Explicit payment method configuration for the plan. When not provided, the company’s defaults apply.



101
102
103
# File 'lib/whop_sdk/models/plan_create_params.rb', line 101

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

#plan_typeSymbol, ...

The type of plan that can be attached to a product

Returns:



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

optional :plan_type, enum: -> { WhopSDK::PlanType }, nil?: true

#product_idString

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

Returns:

  • (String)


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

required :product_id, String

#release_methodSymbol, ...

The methods of how a plan can be released.

Returns:



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

optional :release_method, enum: -> { WhopSDK::ReleaseMethod }, nil?: true

#renewal_priceFloat?

The amount charged each billing period for recurring plans. Provided in the plan’s currency (e.g., 10.43 for $10.43).

Returns:

  • (Float, nil)


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

optional :renewal_price, Float, nil?: true

#split_pay_required_paymentsInteger?

The number of installment payments required before the subscription pauses.

Returns:

  • (Integer, nil)


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

optional :split_pay_required_payments, Integer, nil?: true

#stockInteger?

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

Returns:

  • (Integer, nil)


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

optional :stock, Integer, nil?: true

#titleString?

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

Returns:

  • (String, nil)


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

optional :title, String, nil?: true

#trial_period_daysInteger?

The number of free trial days before the first charge on a recurring plan.

Returns:

  • (Integer, nil)


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

optional :trial_period_days, Integer, nil?: true

#unlimited_stockBoolean?

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

Returns:

  • (Boolean, nil)


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

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

#visibilitySymbol, ...

Visibility of a resource

Returns:



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

optional :visibility, enum: -> { WhopSDK::Visibility }, nil?: true