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.



1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
# File 'lib/stripe/services/checkout/session_service.rb', line 1997

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



1967
1968
1969
# File 'lib/stripe/services/checkout/session_service.rb', line 1967

def application_fee_percent
  @application_fee_percent
end

#billing_cycle_anchorObject

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



1969
1970
1971
# File 'lib/stripe/services/checkout/session_service.rb', line 1969

def billing_cycle_anchor
  @billing_cycle_anchor
end

#billing_modeObject

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



1971
1972
1973
# File 'lib/stripe/services/checkout/session_service.rb', line 1971

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.



1975
1976
1977
# File 'lib/stripe/services/checkout/session_service.rb', line 1975

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



1979
1980
1981
# File 'lib/stripe/services/checkout/session_service.rb', line 1979

def description
  @description
end

#invoice_settingsObject

All invoices will be billed using the specified settings.



1981
1982
1983
# File 'lib/stripe/services/checkout/session_service.rb', line 1981

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



1983
1984
1985
# File 'lib/stripe/services/checkout/session_service.rb', line 1983

def 
  @metadata
end

#on_behalf_ofObject

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



1985
1986
1987
# File 'lib/stripe/services/checkout/session_service.rb', line 1985

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



1987
1988
1989
# File 'lib/stripe/services/checkout/session_service.rb', line 1987

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.



1989
1990
1991
# File 'lib/stripe/services/checkout/session_service.rb', line 1989

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.



1991
1992
1993
# File 'lib/stripe/services/checkout/session_service.rb', line 1991

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.



1993
1994
1995
# File 'lib/stripe/services/checkout/session_service.rb', line 1993

def trial_period_days
  @trial_period_days
end

#trial_settingsObject

Settings related to subscription trials.



1995
1996
1997
# File 'lib/stripe/services/checkout/session_service.rb', line 1995

def trial_settings
  @trial_settings
end