Class: Stripe::ProductCatalog::TrialOffer
- Inherits:
-
APIResource
- Object
- StripeObject
- APIResource
- Stripe::ProductCatalog::TrialOffer
- Extended by:
- APIOperations::Create
- Defined in:
- lib/stripe/resources/product_catalog/trial_offer.rb
Overview
Trial offers let you define free or paid introductory pricing for a subscription item. A TrialOffer specifies the price to charge during the trial, how long the trial lasts (a fixed end timestamp or a number of billing intervals), and what price the subscription item transitions to when the trial ends. You attach a TrialOffer to a subscription item using ‘items[trial_offer]` when creating or updating a subscription.
Defined Under Namespace
Classes: Duration, EndBehavior
Constant Summary collapse
- OBJECT_NAME =
"product_catalog.trial_offer"
Constants inherited from StripeObject
StripeObject::RESERVED_FIELD_NAMES
Instance Attribute Summary collapse
-
#duration ⇒ Object
readonly
Attribute for field duration.
-
#end_behavior ⇒ Object
readonly
Attribute for field end_behavior.
-
#id ⇒ Object
readonly
Unique identifier for the object.
-
#livemode ⇒ Object
readonly
If the object exists in live mode, the value is ‘true`.
-
#name ⇒ Object
readonly
A brief, user-friendly name for the trial offer-for identification purposes.
-
#object ⇒ Object
readonly
String representing the object’s type.
-
#price ⇒ Object
readonly
The price during the trial offer.
Attributes inherited from APIResource
Attributes inherited from StripeObject
Class Method Summary collapse
-
.create(params = {}, opts = {}) ⇒ Object
Creates a trial offer.
- .field_remappings ⇒ Object
- .inner_class_types ⇒ Object
- .object_name ⇒ Object
Methods included from APIOperations::Create
Methods inherited from APIResource
class_name, custom_method, #refresh, #request_stripe_object, resource_url, #resource_url, retrieve, save_nested_resource
Methods included from APIOperations::Request
Methods inherited from StripeObject
#==, #[], #[]=, #_get_inner_class_type, additive_object_param, additive_object_param?, #as_json, construct_from, #deleted?, #dirty!, #each, #eql?, field_encodings, #hash, #initialize, #inspect, #keys, #marshal_dump, #marshal_load, protected_fields, #serialize_params, #to_hash, #to_json, #to_s, #update_attributes, #values
Constructor Details
This class inherits a constructor from Stripe::StripeObject
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class Stripe::StripeObject
Instance Attribute Details
#duration ⇒ Object (readonly)
Attribute for field duration
73 74 75 |
# File 'lib/stripe/resources/product_catalog/trial_offer.rb', line 73 def duration @duration end |
#end_behavior ⇒ Object (readonly)
Attribute for field end_behavior
75 76 77 |
# File 'lib/stripe/resources/product_catalog/trial_offer.rb', line 75 def end_behavior @end_behavior end |
#id ⇒ Object (readonly)
Unique identifier for the object.
77 78 79 |
# File 'lib/stripe/resources/product_catalog/trial_offer.rb', line 77 def id @id end |
#livemode ⇒ Object (readonly)
If the object exists in live mode, the value is ‘true`. If the object exists in test mode, the value is `false`.
79 80 81 |
# File 'lib/stripe/resources/product_catalog/trial_offer.rb', line 79 def livemode @livemode end |
#name ⇒ Object (readonly)
A brief, user-friendly name for the trial offer-for identification purposes.
81 82 83 |
# File 'lib/stripe/resources/product_catalog/trial_offer.rb', line 81 def name @name end |
#object ⇒ Object (readonly)
String representing the object’s type. Objects of the same type share the same value.
83 84 85 |
# File 'lib/stripe/resources/product_catalog/trial_offer.rb', line 83 def object @object end |
#price ⇒ Object (readonly)
The price during the trial offer.
85 86 87 |
# File 'lib/stripe/resources/product_catalog/trial_offer.rb', line 85 def price @price end |
Class Method Details
.create(params = {}, opts = {}) ⇒ Object
Creates a trial offer.
88 89 90 91 92 93 94 95 |
# File 'lib/stripe/resources/product_catalog/trial_offer.rb', line 88 def self.create(params = {}, opts = {}) request_stripe_object( method: :post, path: "/v1/product_catalog/trial_offers", params: params, opts: opts ) end |
.field_remappings ⇒ Object
101 102 103 |
# File 'lib/stripe/resources/product_catalog/trial_offer.rb', line 101 def self.field_remappings @field_remappings = {} end |
.inner_class_types ⇒ Object
97 98 99 |
# File 'lib/stripe/resources/product_catalog/trial_offer.rb', line 97 def self.inner_class_types @inner_class_types = { duration: Duration, end_behavior: EndBehavior } end |
.object_name ⇒ Object
15 16 17 |
# File 'lib/stripe/resources/product_catalog/trial_offer.rb', line 15 def self.object_name "product_catalog.trial_offer" end |