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.



2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
# File 'lib/stripe/services/checkout/session_service.rb', line 2112

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



2082
2083
2084
# File 'lib/stripe/services/checkout/session_service.rb', line 2082

def application_fee_percent
  @application_fee_percent
end

#billing_cycle_anchorObject

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



2084
2085
2086
# File 'lib/stripe/services/checkout/session_service.rb', line 2084

def billing_cycle_anchor
  @billing_cycle_anchor
end

#billing_modeObject

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



2086
2087
2088
# File 'lib/stripe/services/checkout/session_service.rb', line 2086

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.



2090
2091
2092
# File 'lib/stripe/services/checkout/session_service.rb', line 2090

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



2094
2095
2096
# File 'lib/stripe/services/checkout/session_service.rb', line 2094

def description
  @description
end

#invoice_settingsObject

All invoices will be billed using the specified settings.



2096
2097
2098
# File 'lib/stripe/services/checkout/session_service.rb', line 2096

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



2098
2099
2100
# File 'lib/stripe/services/checkout/session_service.rb', line 2098

def 
  @metadata
end

#on_behalf_ofObject

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



2100
2101
2102
# File 'lib/stripe/services/checkout/session_service.rb', line 2100

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



2102
2103
2104
# File 'lib/stripe/services/checkout/session_service.rb', line 2102

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.



2104
2105
2106
# File 'lib/stripe/services/checkout/session_service.rb', line 2104

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.



2106
2107
2108
# File 'lib/stripe/services/checkout/session_service.rb', line 2106

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.



2108
2109
2110
# File 'lib/stripe/services/checkout/session_service.rb', line 2108

def trial_period_days
  @trial_period_days
end

#trial_settingsObject

Settings related to subscription trials.



2110
2111
2112
# File 'lib/stripe/services/checkout/session_service.rb', line 2110

def trial_settings
  @trial_settings
end