class Stripe::Plan
- Stripe::Plan
- Reference
- Object
Overview
You can now model subscriptions more flexibly using the Prices API. It replaces the Plans API and is backwards compatible to simplify your migration. Plans define the base price, currency, and billing cycle for recurring purchases of products. Products help you track inventory or provisioning, and plans help you track pricing. Different physical goods or levels of service should be represented by products, and pricing options should be represented by plans. This approach lets you change prices without having to change your provisioning scheme. For example, you might have a single "gold" product that has plans for $10/month, $100/year, €9/month, and €90/year. Related guides: Set up a subscription and more about products and prices.
Included Modules
- JSON::Serializable
- JSON::Serializable::Unmapped
- OpenApi::Json
- OpenApi::Validatable
Defined in:
stripe/models/plan.crConstant Summary
-
ERROR_MESSAGE_FOR_AGGREGATE_USAGE =
"invalid value for \"aggregate_usage\", must be one of [last_during_period, last_ever, max, sum]."
-
ERROR_MESSAGE_FOR_BILLING_SCHEME =
"invalid value for \"billing_scheme\", must be one of [per_unit, tiered]."
-
ERROR_MESSAGE_FOR_INTERVAL =
"invalid value for \"interval\", must be one of [day, month, week, year]."
-
ERROR_MESSAGE_FOR_OBJECT =
"invalid value for \"object\", must be one of [plan]."
-
ERROR_MESSAGE_FOR_TIERS_MODE =
"invalid value for \"tiers_mode\", must be one of [graduated, volume]."
-
ERROR_MESSAGE_FOR_USAGE_TYPE =
"invalid value for \"usage_type\", must be one of [licensed, metered]."
-
MAX_LENGTH_FOR_ID =
5000
-
MAX_LENGTH_FOR_METER =
5000
-
MAX_LENGTH_FOR_NICKNAME =
5000
-
VALID_VALUES_FOR_AGGREGATE_USAGE =
String.static_array("last_during_period", "last_ever", "max", "sum")
-
VALID_VALUES_FOR_BILLING_SCHEME =
String.static_array("per_unit", "tiered")
-
VALID_VALUES_FOR_INTERVAL =
String.static_array("day", "month", "week", "year")
-
VALID_VALUES_FOR_OBJECT =
String.static_array("plan")
-
VALID_VALUES_FOR_TIERS_MODE =
String.static_array("graduated", "volume")
-
VALID_VALUES_FOR_USAGE_TYPE =
String.static_array("licensed", "metered")
Constructors
- .new(pull : JSON::PullParser)
-
.new(*, active : Bool | Nil = nil, aggregate_usage : String | Nil = nil, amount : Int64 | Nil = nil, amount_decimal : BigDecimal | Nil = nil, billing_scheme : String | Nil = nil, created : Int64 | Nil = nil, currency : String | Nil = nil, id : String | Nil = nil, interval : String | Nil = nil, interval_count : Int64 | Nil = nil, livemode : Bool | Nil = nil, metadata : Hash(String, String) | Nil = nil, meter : String | Nil = nil, nickname : String | Nil = nil, object : String | Nil = nil, product : Stripe::PlanProduct | Nil = nil, tiers_mode : String | Nil = nil, transform_usage : Stripe::PlanTransformUsage | Nil = nil, trial_period_days : Int64 | Nil = nil, usage_type : String | Nil = nil, tiers : Array(Stripe::PlanTier) | Nil = nil)
Initializes the object @param [Hash] attributes Model attributes in the form of hash
Instance Method Summary
-
#==(other : self)
Generates #hash and #== methods from all fields #== @return [Bool] #hash calculates hash code according to all attributes.
- #active : Bool | Nil
-
#active=(new_value : Bool | Nil)
Custom attribute writer method checking allowed values (enum).
- #aggregate_usage : String | Nil
-
#aggregate_usage=(new_value : String | Nil)
Custom attribute writer method checking allowed values (enum).
- #amount : Int64 | Nil
-
#amount=(new_value : Int64 | Nil)
Custom attribute writer method checking allowed values (enum).
- #amount_decimal : BigDecimal | Nil
-
#amount_decimal=(new_value : BigDecimal | Nil)
Custom attribute writer method checking allowed values (enum).
- #billing_scheme : String | Nil
-
#billing_scheme=(new_value : String | Nil)
Custom attribute writer method checking allowed values (enum).
- #created : Int64 | Nil
-
#created=(new_value : Int64 | Nil)
Custom attribute writer method checking allowed values (enum).
- #currency : String | Nil
-
#currency=(new_value : String | Nil)
Custom attribute writer method checking allowed values (enum).
-
#hash(hasher)
Generates #hash and #== methods from all fields #== @return [Bool] #hash calculates hash code according to all attributes.
- #id : String | Nil
-
#id=(new_value : String | Nil)
Custom attribute writer method checking allowed values (enum).
- #interval : String | Nil
-
#interval=(new_value : String | Nil)
Custom attribute writer method checking allowed values (enum).
- #interval_count : Int64 | Nil
-
#interval_count=(new_value : Int64 | Nil)
Custom attribute writer method checking allowed values (enum).
-
#list_invalid_properties : Array(String)
Show invalid properties with the reasons.
- #livemode : Bool | Nil
-
#livemode=(new_value : Bool | Nil)
Custom attribute writer method checking allowed values (enum).
- #metadata : Hash(String, String) | Nil
-
#metadata=(new_value : Hash(String, String) | Nil)
Custom attribute writer method checking allowed values (enum).
- #meter : String | Nil
-
#meter=(new_value : String | Nil)
Custom attribute writer method checking allowed values (enum).
- #nickname : String | Nil
-
#nickname=(new_value : String | Nil)
Custom attribute writer method checking allowed values (enum).
- #object : String | Nil
-
#object=(new_value : String | Nil)
Custom attribute writer method checking allowed values (enum).
- #product : Stripe::PlanProduct | Nil
-
#product=(new_value : Stripe::PlanProduct | Nil)
Custom attribute writer method checking allowed values (enum).
- #tiers : Array(Stripe::PlanTier) | Nil
-
#tiers=(new_value : Array(Stripe::PlanTier) | Nil)
Custom attribute writer method checking allowed values (enum).
- #tiers_mode : String | Nil
-
#tiers_mode=(new_value : String | Nil)
Custom attribute writer method checking allowed values (enum).
- #transform_usage : Stripe::PlanTransformUsage | Nil
-
#transform_usage=(new_value : Stripe::PlanTransformUsage | Nil)
Custom attribute writer method checking allowed values (enum).
- #trial_period_days : Int64 | Nil
-
#trial_period_days=(new_value : Int64 | Nil)
Custom attribute writer method checking allowed values (enum).
- #usage_type : String | Nil
-
#usage_type=(new_value : String | Nil)
Custom attribute writer method checking allowed values (enum).
-
#valid? : Bool
Check to see if the all the properties in the model are valid @return true if the model is valid
Instance methods inherited from module OpenApi::Json
after_initialize
after_initialize,
clone
clone,
eql?(o : self)
eql?,
to_hash : Hash(String, JSON::Any)
to_hash,
to_json_any : JSON::Any
to_json_any
Class methods inherited from module OpenApi::Json
build_from_hash(hash : Hash)
build_from_hash,
build_from_json_any(json_any : JSON::Any)
build_from_json_any
Instance methods inherited from module OpenApi::Validatable
list_invalid_properties : Array(String)
list_invalid_properties,
list_invalid_properties_for(key : String) : Array(String)
list_invalid_properties_for,
valid? : Bool
valid?,
validate : Nil
validate
Constructor Detail
Initializes the object @param [Hash] attributes Model attributes in the form of hash
Instance Method Detail
Generates #hash and #== methods from all fields #== @return [Bool] #hash calculates hash code according to all attributes. #hash @return [UInt64] Hash code
Custom attribute writer method checking allowed values (enum). @param [Object] active Object to be assigned
Custom attribute writer method checking allowed values (enum). @param [Object] aggregate_usage Object to be assigned
Custom attribute writer method checking allowed values (enum). @param [Object] amount Object to be assigned
Custom attribute writer method checking allowed values (enum). @param [Object] amount_decimal Object to be assigned
Custom attribute writer method checking allowed values (enum). @param [Object] billing_scheme Object to be assigned
Custom attribute writer method checking allowed values (enum). @param [Object] created Object to be assigned
Custom attribute writer method checking allowed values (enum). @param [Object] currency Object to be assigned
Generates #hash and #== methods from all fields #== @return [Bool] #hash calculates hash code according to all attributes. #hash @return [UInt64] Hash code
Custom attribute writer method checking allowed values (enum). @param [Object] id Object to be assigned
Custom attribute writer method checking allowed values (enum). @param [Object] interval Object to be assigned
Custom attribute writer method checking allowed values (enum). @param [Object] interval_count Object to be assigned
Show invalid properties with the reasons. Usually used together with valid? @return Array for valid properties with the reasons
Custom attribute writer method checking allowed values (enum). @param [Object] livemode Object to be assigned
Custom attribute writer method checking allowed values (enum). @param [Object] metadata Object to be assigned
Custom attribute writer method checking allowed values (enum). @param [Object] meter Object to be assigned
Custom attribute writer method checking allowed values (enum). @param [Object] nickname Object to be assigned
Custom attribute writer method checking allowed values (enum). @param [Object] object Object to be assigned
Custom attribute writer method checking allowed values (enum). @param [Object] product Object to be assigned
Custom attribute writer method checking allowed values (enum). @param [Object] tiers Object to be assigned
Custom attribute writer method checking allowed values (enum). @param [Object] tiers_mode Object to be assigned
Custom attribute writer method checking allowed values (enum). @param [Object] transform_usage Object to be assigned
Custom attribute writer method checking allowed values (enum). @param [Object] trial_period_days Object to be assigned
Custom attribute writer method checking allowed values (enum). @param [Object] usage_type Object to be assigned
Check to see if the all the properties in the model are valid @return true if the model is valid