Class: Stripe::InvoiceCreatePreviewParams::SubscriptionDetails
- Inherits:
-
RequestParams
- Object
- RequestParams
- Stripe::InvoiceCreatePreviewParams::SubscriptionDetails
- Defined in:
- lib/stripe/params/invoice_create_preview_params.rb
Defined Under Namespace
Classes: BillingMode, BillingSchedule, Item
Instance Attribute Summary collapse
-
#billing_cycle_anchor ⇒ Object
For new subscriptions, a future timestamp to anchor the subscription's billing cycle.
-
#billing_mode ⇒ Object
Controls how prorations and invoices for subscriptions are calculated and orchestrated.
-
#billing_schedules ⇒ Object
Sets the billing schedules for the subscription.
-
#cancel_at ⇒ Object
A timestamp at which the subscription should cancel.
-
#cancel_at_period_end ⇒ Object
Indicate whether this subscription should cancel at the end of the current period (
current_period_end). -
#cancel_now ⇒ Object
This simulates the subscription being canceled or expired immediately.
-
#default_tax_rates ⇒ Object
If provided, the invoice returned will preview updating or creating a subscription with these default tax rates.
-
#items ⇒ Object
A list of up to 20 subscription items, each with an attached price.
-
#metadata ⇒ Object
Set of key-value pairs that you can attach to an object.
-
#proration_behavior ⇒ Object
Determines how to handle prorations when the billing cycle changes (e.g., when switching plans, resetting
billing_cycle_anchor=now, or starting a trial), or if an item'squantitychanges. -
#proration_date ⇒ Object
If previewing an update to a subscription, and doing proration,
subscription_details.proration_dateforces the proration to be calculated as though the update was done at the specified time. -
#resume_at ⇒ Object
For paused subscriptions, setting
subscription_details.resume_attonowwill preview the invoice that will be generated if the subscription is resumed. -
#start_date ⇒ Object
Date a subscription is intended to start (can be future or past).
-
#trial_end ⇒ Object
If provided, the invoice returned will preview updating or creating a subscription with that trial end.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(billing_cycle_anchor: nil, billing_mode: nil, billing_schedules: nil, cancel_at: nil, cancel_at_period_end: nil, cancel_now: nil, default_tax_rates: nil, items: nil, metadata: nil, proration_behavior: nil, proration_date: nil, resume_at: nil, start_date: nil, trial_end: nil) ⇒ SubscriptionDetails
constructor
A new instance of SubscriptionDetails.
Methods inherited from RequestParams
attr_accessor, coerce_params, coerce_value, new, #to_h
Constructor Details
#initialize(billing_cycle_anchor: nil, billing_mode: nil, billing_schedules: nil, cancel_at: nil, cancel_at_period_end: nil, cancel_now: nil, default_tax_rates: nil, items: nil, metadata: nil, proration_behavior: nil, proration_date: nil, resume_at: nil, start_date: nil, trial_end: nil) ⇒ SubscriptionDetails
Returns a new instance of SubscriptionDetails.
1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 |
# File 'lib/stripe/params/invoice_create_preview_params.rb', line 1064 def initialize( billing_cycle_anchor: nil, billing_mode: nil, billing_schedules: nil, cancel_at: nil, cancel_at_period_end: nil, cancel_now: nil, default_tax_rates: nil, items: nil, metadata: nil, proration_behavior: nil, proration_date: nil, resume_at: nil, start_date: nil, trial_end: nil ) @billing_cycle_anchor = billing_cycle_anchor @billing_mode = billing_mode @billing_schedules = billing_schedules @cancel_at = cancel_at @cancel_at_period_end = cancel_at_period_end @cancel_now = cancel_now @default_tax_rates = default_tax_rates @items = items @metadata = @proration_behavior = proration_behavior @proration_date = proration_date @resume_at = resume_at @start_date = start_date @trial_end = trial_end end |
Instance Attribute Details
#billing_cycle_anchor ⇒ Object
For new subscriptions, a future timestamp to anchor the subscription's billing cycle. This is used to determine the date of the first full invoice, and, for plans with month or year intervals, the day of the month for subsequent invoices. For existing subscriptions, the value can only be set to now or unchanged.
1036 1037 1038 |
# File 'lib/stripe/params/invoice_create_preview_params.rb', line 1036 def billing_cycle_anchor @billing_cycle_anchor end |
#billing_mode ⇒ Object
Controls how prorations and invoices for subscriptions are calculated and orchestrated.
1038 1039 1040 |
# File 'lib/stripe/params/invoice_create_preview_params.rb', line 1038 def billing_mode @billing_mode end |
#billing_schedules ⇒ Object
Sets the billing schedules for the subscription.
1040 1041 1042 |
# File 'lib/stripe/params/invoice_create_preview_params.rb', line 1040 def billing_schedules @billing_schedules end |
#cancel_at ⇒ Object
A timestamp at which the subscription should cancel. If set to a date before the current period ends, this will cause a proration if prorations have been enabled using proration_behavior. If set during a future period, this will always cause a proration for that period.
1042 1043 1044 |
# File 'lib/stripe/params/invoice_create_preview_params.rb', line 1042 def cancel_at @cancel_at end |
#cancel_at_period_end ⇒ Object
Indicate whether this subscription should cancel at the end of the current period (current_period_end). Defaults to false.
1044 1045 1046 |
# File 'lib/stripe/params/invoice_create_preview_params.rb', line 1044 def cancel_at_period_end @cancel_at_period_end end |
#cancel_now ⇒ Object
This simulates the subscription being canceled or expired immediately.
1046 1047 1048 |
# File 'lib/stripe/params/invoice_create_preview_params.rb', line 1046 def cancel_now @cancel_now end |
#default_tax_rates ⇒ Object
If provided, the invoice returned will preview updating or creating a subscription with these default tax rates. The default tax rates will apply to any line item that does not have tax_rates set.
1048 1049 1050 |
# File 'lib/stripe/params/invoice_create_preview_params.rb', line 1048 def default_tax_rates @default_tax_rates end |
#items ⇒ Object
A list of up to 20 subscription items, each with an attached price.
1050 1051 1052 |
# File 'lib/stripe/params/invoice_create_preview_params.rb', line 1050 def items @items end |
#metadata ⇒ Object
Set of key-value pairs 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.
1052 1053 1054 |
# File 'lib/stripe/params/invoice_create_preview_params.rb', line 1052 def @metadata end |
#proration_behavior ⇒ Object
Determines how to handle prorations when the billing cycle changes (e.g., when switching plans, resetting billing_cycle_anchor=now, or starting a trial), or if an item's quantity changes. The default value is create_prorations.
1054 1055 1056 |
# File 'lib/stripe/params/invoice_create_preview_params.rb', line 1054 def proration_behavior @proration_behavior end |
#proration_date ⇒ Object
If previewing an update to a subscription, and doing proration, subscription_details.proration_date forces the proration to be calculated as though the update was done at the specified time. The time given must be within the current subscription period and within the current phase of the schedule backing this subscription, if the schedule exists. If set, subscription, and one of subscription_details.items, or subscription_details.trial_end are required. Also, subscription_details.proration_behavior cannot be set to 'none'.
1056 1057 1058 |
# File 'lib/stripe/params/invoice_create_preview_params.rb', line 1056 def proration_date @proration_date end |
#resume_at ⇒ Object
For paused subscriptions, setting subscription_details.resume_at to now will preview the invoice that will be generated if the subscription is resumed.
1058 1059 1060 |
# File 'lib/stripe/params/invoice_create_preview_params.rb', line 1058 def resume_at @resume_at end |
#start_date ⇒ Object
Date a subscription is intended to start (can be future or past).
1060 1061 1062 |
# File 'lib/stripe/params/invoice_create_preview_params.rb', line 1060 def start_date @start_date end |
#trial_end ⇒ Object
If provided, the invoice returned will preview updating or creating a subscription with that trial end. If set, one of subscription_details.items or subscription is required.
1062 1063 1064 |
# File 'lib/stripe/params/invoice_create_preview_params.rb', line 1062 def trial_end @trial_end end |
Class Method Details
.field_encodings ⇒ Object
1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 |
# File 'lib/stripe/params/invoice_create_preview_params.rb', line 1096 def self.field_encodings @field_encodings = { items: { kind: :array, element: { kind: :object, fields: { price_data: { kind: :object, fields: { unit_amount_decimal: :decimal_string } } }, }, }, } end |