Class: Stripe::InvoiceService::UpcomingParams

Inherits:
RequestParams show all
Defined in:
lib/stripe/services/invoice_service.rb

Defined Under Namespace

Classes: AutomaticTax, CustomerDetails, Discount, InvoiceItem, Issuer, ScheduleDetails, SubscriptionDetails, SubscriptionItem, SubscriptionPrebilling

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from RequestParams

#to_h

Constructor Details

#initialize(automatic_tax: nil, coupon: nil, currency: nil, customer: nil, customer_details: nil, discounts: nil, expand: nil, invoice_items: nil, issuer: nil, on_behalf_of: nil, preview_mode: nil, schedule: nil, schedule_details: nil, subscription: nil, subscription_billing_cycle_anchor: nil, subscription_cancel_at: nil, subscription_cancel_at_period_end: nil, subscription_cancel_now: nil, subscription_default_tax_rates: nil, subscription_details: nil, subscription_items: nil, subscription_prebilling: nil, subscription_proration_behavior: nil, subscription_proration_date: nil, subscription_resume_at: nil, subscription_start_date: nil, subscription_trial_end: nil, subscription_trial_from_plan: nil) ⇒ UpcomingParams

Returns a new instance of UpcomingParams.



3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
# File 'lib/stripe/services/invoice_service.rb', line 3190

def initialize(
  automatic_tax: nil,
  coupon: nil,
  currency: nil,
  customer: nil,
  customer_details: nil,
  discounts: nil,
  expand: nil,
  invoice_items: nil,
  issuer: nil,
  on_behalf_of: nil,
  preview_mode: nil,
  schedule: nil,
  schedule_details: nil,
  subscription: nil,
  subscription_billing_cycle_anchor: nil,
  subscription_cancel_at: nil,
  subscription_cancel_at_period_end: nil,
  subscription_cancel_now: nil,
  subscription_default_tax_rates: nil,
  subscription_details: nil,
  subscription_items: nil,
  subscription_prebilling: nil,
  subscription_proration_behavior: nil,
  subscription_proration_date: nil,
  subscription_resume_at: nil,
  subscription_start_date: nil,
  subscription_trial_end: nil,
  subscription_trial_from_plan: nil
)
  @automatic_tax = automatic_tax
  @coupon = coupon
  @currency = currency
  @customer = customer
  @customer_details = customer_details
  @discounts = discounts
  @expand = expand
  @invoice_items = invoice_items
  @issuer = issuer
  @on_behalf_of = on_behalf_of
  @preview_mode = preview_mode
  @schedule = schedule
  @schedule_details = schedule_details
  @subscription = subscription
  @subscription_billing_cycle_anchor = subscription_billing_cycle_anchor
  @subscription_cancel_at = subscription_cancel_at
  @subscription_cancel_at_period_end = subscription_cancel_at_period_end
  @subscription_cancel_now = subscription_cancel_now
  @subscription_default_tax_rates = subscription_default_tax_rates
  @subscription_details = subscription_details
  @subscription_items = subscription_items
  @subscription_prebilling = subscription_prebilling
  @subscription_proration_behavior = subscription_proration_behavior
  @subscription_proration_date = subscription_proration_date
  @subscription_resume_at = subscription_resume_at
  @subscription_start_date = subscription_start_date
  @subscription_trial_end = subscription_trial_end
  @subscription_trial_from_plan = subscription_trial_from_plan
end

Instance Attribute Details

#automatic_taxObject

Settings for automatic tax lookup for this invoice preview.



3134
3135
3136
# File 'lib/stripe/services/invoice_service.rb', line 3134

def automatic_tax
  @automatic_tax
end

#couponObject

The ID of the coupon to apply to this phase of the subscription schedule. This field has been deprecated and will be removed in a future API version. Use ‘discounts` instead.



3136
3137
3138
# File 'lib/stripe/services/invoice_service.rb', line 3136

def coupon
  @coupon
end

#currencyObject

The currency to preview this invoice in. Defaults to that of ‘customer` if not specified.



3138
3139
3140
# File 'lib/stripe/services/invoice_service.rb', line 3138

def currency
  @currency
end

#customerObject

The identifier of the customer whose upcoming invoice you’d like to retrieve. If ‘automatic_tax` is enabled then one of `customer`, `customer_details`, `subscription`, or `schedule` must be set.



3140
3141
3142
# File 'lib/stripe/services/invoice_service.rb', line 3140

def customer
  @customer
end

#customer_detailsObject

Details about the customer you want to invoice or overrides for an existing customer. If ‘automatic_tax` is enabled then one of `customer`, `customer_details`, `subscription`, or `schedule` must be set.



3142
3143
3144
# File 'lib/stripe/services/invoice_service.rb', line 3142

def customer_details
  @customer_details
end

#discountsObject

The coupons to redeem into discounts for the invoice preview. If not specified, inherits the discount from the subscription or customer. This works for both coupons directly applied to an invoice and coupons applied to a subscription. Pass an empty string to avoid inheriting any discounts.



3144
3145
3146
# File 'lib/stripe/services/invoice_service.rb', line 3144

def discounts
  @discounts
end

#expandObject

Specifies which fields in the response should be expanded.



3146
3147
3148
# File 'lib/stripe/services/invoice_service.rb', line 3146

def expand
  @expand
end

#invoice_itemsObject

List of invoice items to add or update in the upcoming invoice preview (up to 250).



3148
3149
3150
# File 'lib/stripe/services/invoice_service.rb', line 3148

def invoice_items
  @invoice_items
end

#issuerObject

The connected account that issues the invoice. The invoice is presented with the branding and support information of the specified account.



3150
3151
3152
# File 'lib/stripe/services/invoice_service.rb', line 3150

def issuer
  @issuer
end

#on_behalf_ofObject

The account (if any) for which the funds of the invoice payment are intended. If set, the invoice will be presented with the branding and support information of the specified account. See the [Invoices with Connect](stripe.com/docs/billing/invoices/connect) documentation for details.



3152
3153
3154
# File 'lib/stripe/services/invoice_service.rb', line 3152

def on_behalf_of
  @on_behalf_of
end

#preview_modeObject

Customizes the types of values to include when calculating the invoice. Defaults to ‘next` if unspecified.



3154
3155
3156
# File 'lib/stripe/services/invoice_service.rb', line 3154

def preview_mode
  @preview_mode
end

#scheduleObject

The identifier of the schedule whose upcoming invoice you’d like to retrieve. Cannot be used with subscription or subscription fields.



3156
3157
3158
# File 'lib/stripe/services/invoice_service.rb', line 3156

def schedule
  @schedule
end

#schedule_detailsObject

The schedule creation or modification params to apply as a preview. Cannot be used with ‘subscription` or `subscription_` prefixed fields.



3158
3159
3160
# File 'lib/stripe/services/invoice_service.rb', line 3158

def schedule_details
  @schedule_details
end

#subscriptionObject

The identifier of the subscription for which you’d like to retrieve the upcoming invoice. If not provided, but a ‘subscription_details.items` is provided, you will preview creating a subscription with those items. If neither `subscription` nor `subscription_details.items` is provided, you will retrieve the next upcoming invoice from among the customer’s subscriptions.



3160
3161
3162
# File 'lib/stripe/services/invoice_service.rb', line 3160

def subscription
  @subscription
end

#subscription_billing_cycle_anchorObject

For new subscriptions, a future timestamp to anchor the subscription’s [billing cycle](stripe.com/docs/subscriptions/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`. This field has been deprecated and will be removed in a future API version. Use `subscription_details.billing_cycle_anchor` instead.



3162
3163
3164
# File 'lib/stripe/services/invoice_service.rb', line 3162

def subscription_billing_cycle_anchor
  @subscription_billing_cycle_anchor
end

#subscription_cancel_atObject

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. This field has been deprecated and will be removed in a future API version. Use `subscription_details.cancel_at` instead.



3164
3165
3166
# File 'lib/stripe/services/invoice_service.rb', line 3164

def subscription_cancel_at
  @subscription_cancel_at
end

#subscription_cancel_at_period_endObject

Indicate whether this subscription should cancel at the end of the current period (‘current_period_end`). Defaults to `false`. This field has been deprecated and will be removed in a future API version. Use `subscription_details.cancel_at_period_end` instead.



3166
3167
3168
# File 'lib/stripe/services/invoice_service.rb', line 3166

def subscription_cancel_at_period_end
  @subscription_cancel_at_period_end
end

#subscription_cancel_nowObject

This simulates the subscription being canceled or expired immediately. This field has been deprecated and will be removed in a future API version. Use ‘subscription_details.cancel_now` instead.



3168
3169
3170
# File 'lib/stripe/services/invoice_service.rb', line 3168

def subscription_cancel_now
  @subscription_cancel_now
end

#subscription_default_tax_ratesObject

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. This field has been deprecated and will be removed in a future API version. Use `subscription_details.default_tax_rates` instead.



3170
3171
3172
# File 'lib/stripe/services/invoice_service.rb', line 3170

def subscription_default_tax_rates
  @subscription_default_tax_rates
end

#subscription_detailsObject

The subscription creation or modification params to apply as a preview. Cannot be used with ‘schedule` or `schedule_details` fields.



3172
3173
3174
# File 'lib/stripe/services/invoice_service.rb', line 3172

def subscription_details
  @subscription_details
end

#subscription_itemsObject

A list of up to 20 subscription items, each with an attached price. This field has been deprecated and will be removed in a future API version. Use ‘subscription_details.items` instead.



3174
3175
3176
# File 'lib/stripe/services/invoice_service.rb', line 3174

def subscription_items
  @subscription_items
end

#subscription_prebillingObject

The pre-billing to apply to the subscription as a preview. This field has been deprecated and will be removed in a future API version. Use ‘subscription_details.prebilling` instead.



3176
3177
3178
# File 'lib/stripe/services/invoice_service.rb', line 3176

def subscription_prebilling
  @subscription_prebilling
end

#subscription_proration_behaviorObject

Determines how to handle [prorations](stripe.com/docs/billing/subscriptions/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`. This field has been deprecated and will be removed in a future API version. Use `subscription_details.proration_behavior` instead.



3178
3179
3180
# File 'lib/stripe/services/invoice_service.rb', line 3178

def subscription_proration_behavior
  @subscription_proration_behavior
end

#subscription_proration_dateObject

If previewing an update to a subscription, and doing proration, ‘subscription_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_items`, or `subscription_trial_end` are required. Also, `subscription_proration_behavior` cannot be set to ’none’. This field has been deprecated and will be removed in a future API version. Use ‘subscription_details.proration_date` instead.



3180
3181
3182
# File 'lib/stripe/services/invoice_service.rb', line 3180

def subscription_proration_date
  @subscription_proration_date
end

#subscription_resume_atObject

For paused subscriptions, setting ‘subscription_resume_at` to `now` will preview the invoice that will be generated if the subscription is resumed. This field has been deprecated and will be removed in a future API version. Use `subscription_details.resume_at` instead.



3182
3183
3184
# File 'lib/stripe/services/invoice_service.rb', line 3182

def subscription_resume_at
  @subscription_resume_at
end

#subscription_start_dateObject

Date a subscription is intended to start (can be future or past). This field has been deprecated and will be removed in a future API version. Use ‘subscription_details.start_date` instead.



3184
3185
3186
# File 'lib/stripe/services/invoice_service.rb', line 3184

def subscription_start_date
  @subscription_start_date
end

#subscription_trial_endObject

If provided, the invoice returned will preview updating or creating a subscription with that trial end. If set, one of ‘subscription_items` or `subscription` is required. This field has been deprecated and will be removed in a future API version. Use `subscription_details.trial_end` instead.



3186
3187
3188
# File 'lib/stripe/services/invoice_service.rb', line 3186

def subscription_trial_end
  @subscription_trial_end
end

#subscription_trial_from_planObject

Indicates if a plan’s ‘trial_period_days` should be applied to the subscription. Setting `subscription_trial_end` per subscription is preferred, and this defaults to `false`. Setting this flag to `true` together with `subscription_trial_end` is not allowed. See [Using trial periods on subscriptions](stripe.com/docs/billing/subscriptions/trials) to learn more.



3188
3189
3190
# File 'lib/stripe/services/invoice_service.rb', line 3188

def subscription_trial_from_plan
  @subscription_trial_from_plan
end