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

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

Defined Under Namespace

Classes: 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.



2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
# File 'lib/stripe/services/checkout/session_service.rb', line 2044

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).



2011
2012
2013
# File 'lib/stripe/services/checkout/session_service.rb', line 2011

def application_fee_percent
  @application_fee_percent
end

#billing_cycle_anchorObject

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



2013
2014
2015
# File 'lib/stripe/services/checkout/session_service.rb', line 2013

def billing_cycle_anchor
  @billing_cycle_anchor
end

#billing_modeObject

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



2015
2016
2017
# File 'lib/stripe/services/checkout/session_service.rb', line 2015

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.



2019
2020
2021
# File 'lib/stripe/services/checkout/session_service.rb', line 2019

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).



2023
2024
2025
# File 'lib/stripe/services/checkout/session_service.rb', line 2023

def description
  @description
end

#invoice_settingsObject

All invoices will be billed using the specified settings.



2025
2026
2027
# File 'lib/stripe/services/checkout/session_service.rb', line 2025

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`.



2027
2028
2029
# File 'lib/stripe/services/checkout/session_service.rb', line 2027

def 
  @metadata
end

#on_behalf_ofObject

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



2029
2030
2031
# File 'lib/stripe/services/checkout/session_service.rb', line 2029

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`.



2031
2032
2033
# File 'lib/stripe/services/checkout/session_service.rb', line 2031

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.



2033
2034
2035
# File 'lib/stripe/services/checkout/session_service.rb', line 2033

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.



2037
2038
2039
# File 'lib/stripe/services/checkout/session_service.rb', line 2037

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.



2040
2041
2042
# File 'lib/stripe/services/checkout/session_service.rb', line 2040

def trial_period_days
  @trial_period_days
end

#trial_settingsObject

Settings related to subscription trials.



2042
2043
2044
# File 'lib/stripe/services/checkout/session_service.rb', line 2042

def trial_settings
  @trial_settings
end