Class: Stripe::Checkout::SessionService::CreateParams::SubscriptionData

Inherits:
RequestParams
  • Object
show all
Defined in:
lib/stripe/services/checkout/session_service.rb

Defined Under Namespace

Classes: BillingMode, InvoiceSettings, TransferData, TrialSettings

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from RequestParams

#to_h

Constructor Details

#initialize(application_fee_percent: nil, billing_cycle_anchor: nil, billing_mode: nil, default_tax_rates: nil, description: nil, invoice_settings: nil, metadata: nil, on_behalf_of: nil, proration_behavior: nil, transfer_data: nil, trial_end: nil, trial_period_days: nil, trial_settings: nil) ⇒ SubscriptionData

Returns a new instance of SubscriptionData.



2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
# File 'lib/stripe/services/checkout/session_service.rb', line 2269

def initialize(
  application_fee_percent: nil,
  billing_cycle_anchor: nil,
  billing_mode: nil,
  default_tax_rates: nil,
  description: nil,
  invoice_settings: nil,
  metadata: nil,
  on_behalf_of: nil,
  proration_behavior: nil,
  transfer_data: nil,
  trial_end: nil,
  trial_period_days: nil,
  trial_settings: nil
)
  @application_fee_percent = application_fee_percent
  @billing_cycle_anchor = billing_cycle_anchor
  @billing_mode = billing_mode
  @default_tax_rates = default_tax_rates
  @description = description
  @invoice_settings = invoice_settings
  @metadata = 
  @on_behalf_of = on_behalf_of
  @proration_behavior = proration_behavior
  @transfer_data = transfer_data
  @trial_end = trial_end
  @trial_period_days = trial_period_days
  @trial_settings = trial_settings
end

Instance Attribute Details

#application_fee_percentObject

A non-negative decimal between 0 and 100, with at most two decimal places. This represents the percentage of the subscription invoice total that will be transferred to the application owner’s Stripe account. To use an application fee percent, the request must be made on behalf of another account, using the ‘Stripe-Account` header or an OAuth key. For more information, see the application fees [documentation](stripe.com/docs/connect/subscriptions#collecting-fees-on-subscriptions).



2239
2240
2241
# File 'lib/stripe/services/checkout/session_service.rb', line 2239

def application_fee_percent
  @application_fee_percent
end

#billing_cycle_anchorObject

A future timestamp to anchor the subscription’s billing cycle for new subscriptions.



2241
2242
2243
# File 'lib/stripe/services/checkout/session_service.rb', line 2241

def billing_cycle_anchor
  @billing_cycle_anchor
end

#billing_modeObject

Controls how prorations and invoices for subscriptions are calculated and orchestrated.



2243
2244
2245
# File 'lib/stripe/services/checkout/session_service.rb', line 2243

def billing_mode
  @billing_mode
end

#default_tax_ratesObject

The tax rates that will apply to any subscription item that does not have ‘tax_rates` set. Invoices created will have their `default_tax_rates` populated from the subscription.



2247
2248
2249
# File 'lib/stripe/services/checkout/session_service.rb', line 2247

def default_tax_rates
  @default_tax_rates
end

#descriptionObject

The subscription’s description, meant to be displayable to the customer. Use this field to optionally store an explanation of the subscription for rendering in the [customer portal](stripe.com/docs/customer-management).



2251
2252
2253
# File 'lib/stripe/services/checkout/session_service.rb', line 2251

def description
  @description
end

#invoice_settingsObject

All invoices will be billed using the specified settings.



2253
2254
2255
# File 'lib/stripe/services/checkout/session_service.rb', line 2253

def invoice_settings
  @invoice_settings
end

#metadataObject

Set of [key-value pairs](stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to ‘metadata`.



2255
2256
2257
# File 'lib/stripe/services/checkout/session_service.rb', line 2255

def 
  @metadata
end

#on_behalf_ofObject

The account on behalf of which to charge, for each of the subscription’s invoices.



2257
2258
2259
# File 'lib/stripe/services/checkout/session_service.rb', line 2257

def on_behalf_of
  @on_behalf_of
end

#proration_behaviorObject

Determines how to handle prorations resulting from the ‘billing_cycle_anchor`. If no value is passed, the default is `create_prorations`.



2259
2260
2261
# File 'lib/stripe/services/checkout/session_service.rb', line 2259

def proration_behavior
  @proration_behavior
end

#transfer_dataObject

If specified, the funds from the subscription’s invoices will be transferred to the destination and the ID of the resulting transfers will be found on the resulting charges.



2261
2262
2263
# File 'lib/stripe/services/checkout/session_service.rb', line 2261

def transfer_data
  @transfer_data
end

#trial_endObject

Unix timestamp representing the end of the trial period the customer will get before being charged for the first time. Has to be at least 48 hours in the future.



2263
2264
2265
# File 'lib/stripe/services/checkout/session_service.rb', line 2263

def trial_end
  @trial_end
end

#trial_period_daysObject

Integer representing the number of trial period days before the customer is charged for the first time. Has to be at least 1.



2265
2266
2267
# File 'lib/stripe/services/checkout/session_service.rb', line 2265

def trial_period_days
  @trial_period_days
end

#trial_settingsObject

Settings related to subscription trials.



2267
2268
2269
# File 'lib/stripe/services/checkout/session_service.rb', line 2267

def trial_settings
  @trial_settings
end