Class: Stripe::Invoice::CreatePreviewParams::ScheduleDetails::Phase
- Inherits:
-
RequestParams
- Object
- RequestParams
- Stripe::Invoice::CreatePreviewParams::ScheduleDetails::Phase
- Defined in:
- lib/stripe/resources/invoice.rb
Defined Under Namespace
Classes: AddInvoiceItem, AutomaticTax, BillingThresholds, Discount, InvoiceSettings, Item, PauseCollection, TransferData, TrialSettings
Instance Attribute Summary collapse
-
#add_invoice_items ⇒ Object
A list of prices and quantities that will generate invoice items appended to the next invoice for this phase.
-
#application_fee_percent ⇒ Object
A non-negative decimal between 0 and 100, with at most two decimal places.
-
#automatic_tax ⇒ Object
Automatic tax settings for this phase.
-
#billing_cycle_anchor ⇒ Object
Can be set to ‘phase_start` to set the anchor to the start of the phase or `automatic` to automatically change it if needed.
-
#billing_thresholds ⇒ Object
Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period.
-
#collection_method ⇒ Object
Either ‘charge_automatically`, or `send_invoice`.
-
#coupon ⇒ Object
The ID of the coupon to apply to this phase of the subscription schedule.
-
#currency ⇒ Object
Three-letter [ISO currency code](www.iso.org/iso-4217-currency-codes.html), in lowercase.
-
#default_payment_method ⇒ Object
ID of the default payment method for the subscription schedule.
-
#default_tax_rates ⇒ Object
A list of [Tax Rate](stripe.com/docs/api/tax_rates) ids.
-
#description ⇒ Object
Subscription description, meant to be displayable to the customer.
-
#discounts ⇒ Object
The coupons to redeem into discounts for the schedule phase.
-
#end_date ⇒ Object
The date at which this phase of the subscription schedule ends.
-
#invoice_settings ⇒ Object
All invoices will be billed using the specified settings.
-
#items ⇒ Object
List of configuration items, each with an attached price, to apply during this phase of the subscription schedule.
-
#iterations ⇒ Object
Integer representing the multiplier applied to the price interval.
-
#metadata ⇒ Object
Set of [key-value pairs](stripe.com/docs/api/metadata) that you can attach to a phase.
-
#on_behalf_of ⇒ Object
The account on behalf of which to charge, for each of the associated subscription’s invoices.
-
#pause_collection ⇒ Object
If specified, payment collection for this subscription will be paused.
-
#proration_behavior ⇒ Object
Whether the subscription schedule will create [prorations](stripe.com/docs/billing/subscriptions/prorations) when transitioning to this phase.
-
#start_date ⇒ Object
The date at which this phase of the subscription schedule starts or ‘now`.
-
#transfer_data ⇒ Object
The data with which to automatically create a Transfer for each of the associated subscription’s invoices.
-
#trial ⇒ Object
If set to true the entire phase is counted as a trial and the customer will not be charged for any fees.
-
#trial_continuation ⇒ Object
Specify trial behavior when crossing phase boundaries.
-
#trial_end ⇒ Object
Sets the phase to trialing from the start date to this date.
-
#trial_settings ⇒ Object
Settings related to subscription trials.
Instance Method Summary collapse
Methods inherited from RequestParams
Constructor Details
#initialize(add_invoice_items: nil, application_fee_percent: nil, automatic_tax: nil, billing_cycle_anchor: nil, billing_thresholds: nil, collection_method: nil, coupon: nil, currency: nil, default_payment_method: nil, default_tax_rates: nil, description: nil, discounts: nil, end_date: nil, invoice_settings: nil, items: nil, iterations: nil, metadata: nil, on_behalf_of: nil, pause_collection: nil, proration_behavior: nil, start_date: nil, transfer_data: nil, trial: nil, trial_continuation: nil, trial_end: nil, trial_settings: nil) ⇒ Phase
Returns a new instance of Phase.
8579 8580 8581 8582 8583 8584 8585 8586 8587 8588 8589 8590 8591 8592 8593 8594 8595 8596 8597 8598 8599 8600 8601 8602 8603 8604 8605 8606 8607 8608 8609 8610 8611 8612 8613 8614 8615 8616 8617 8618 8619 8620 8621 8622 8623 8624 8625 8626 8627 8628 8629 8630 8631 8632 8633 |
# File 'lib/stripe/resources/invoice.rb', line 8579 def initialize( add_invoice_items: nil, application_fee_percent: nil, automatic_tax: nil, billing_cycle_anchor: nil, billing_thresholds: nil, collection_method: nil, coupon: nil, currency: nil, default_payment_method: nil, default_tax_rates: nil, description: nil, discounts: nil, end_date: nil, invoice_settings: nil, items: nil, iterations: nil, metadata: nil, on_behalf_of: nil, pause_collection: nil, proration_behavior: nil, start_date: nil, transfer_data: nil, trial: nil, trial_continuation: nil, trial_end: nil, trial_settings: nil ) @add_invoice_items = add_invoice_items @application_fee_percent = application_fee_percent @automatic_tax = automatic_tax @billing_cycle_anchor = billing_cycle_anchor @billing_thresholds = billing_thresholds @collection_method = collection_method @coupon = coupon @currency = currency @default_payment_method = default_payment_method @default_tax_rates = default_tax_rates @description = description @discounts = discounts @end_date = end_date @invoice_settings = invoice_settings @items = items @iterations = iterations @metadata = @on_behalf_of = on_behalf_of @pause_collection = pause_collection @proration_behavior = proration_behavior @start_date = start_date @transfer_data = transfer_data @trial = trial @trial_continuation = trial_continuation @trial_end = trial_end @trial_settings = trial_settings end |
Instance Attribute Details
#add_invoice_items ⇒ Object
A list of prices and quantities that will generate invoice items appended to the next invoice for this phase. You may pass up to 20 items.
8502 8503 8504 |
# File 'lib/stripe/resources/invoice.rb', line 8502 def add_invoice_items @add_invoice_items end |
#application_fee_percent ⇒ Object
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. The request must be made by a platform account on a connected account in order to set an application fee percentage. For more information, see the application fees [documentation](stripe.com/docs/connect/subscriptions#collecting-fees-on-subscriptions).
8505 8506 8507 |
# File 'lib/stripe/resources/invoice.rb', line 8505 def application_fee_percent @application_fee_percent end |
#automatic_tax ⇒ Object
Automatic tax settings for this phase.
8508 8509 8510 |
# File 'lib/stripe/resources/invoice.rb', line 8508 def automatic_tax @automatic_tax end |
#billing_cycle_anchor ⇒ Object
Can be set to ‘phase_start` to set the anchor to the start of the phase or `automatic` to automatically change it if needed. Cannot be set to `phase_start` if this phase specifies a trial. For more information, see the billing cycle [documentation](stripe.com/docs/billing/subscriptions/billing-cycle).
8511 8512 8513 |
# File 'lib/stripe/resources/invoice.rb', line 8511 def billing_cycle_anchor @billing_cycle_anchor end |
#billing_thresholds ⇒ Object
Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period. Pass an empty string to remove previously-defined thresholds.
8514 8515 8516 |
# File 'lib/stripe/resources/invoice.rb', line 8514 def billing_thresholds @billing_thresholds end |
#collection_method ⇒ Object
Either ‘charge_automatically`, or `send_invoice`. When charging automatically, Stripe will attempt to pay the underlying subscription at the end of each billing cycle using the default source attached to the customer. When sending an invoice, Stripe will email your customer an invoice with payment instructions and mark the subscription as `active`. Defaults to `charge_automatically` on creation.
8517 8518 8519 |
# File 'lib/stripe/resources/invoice.rb', line 8517 def collection_method @collection_method end |
#coupon ⇒ Object
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.
8520 8521 8522 |
# File 'lib/stripe/resources/invoice.rb', line 8520 def coupon @coupon end |
#currency ⇒ Object
Three-letter [ISO currency code](www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](stripe.com/docs/currencies).
8523 8524 8525 |
# File 'lib/stripe/resources/invoice.rb', line 8523 def currency @currency end |
#default_payment_method ⇒ Object
ID of the default payment method for the subscription schedule. It must belong to the customer associated with the subscription schedule. If not set, invoices will use the default payment method in the customer’s invoice settings.
8526 8527 8528 |
# File 'lib/stripe/resources/invoice.rb', line 8526 def default_payment_method @default_payment_method end |
#default_tax_rates ⇒ Object
A list of [Tax Rate](stripe.com/docs/api/tax_rates) ids. These Tax Rates will set the Subscription’s [‘default_tax_rates`](stripe.com/docs/api/subscriptions/create#create_subscription-default_tax_rates), which means they will be the Invoice’s [‘default_tax_rates`](stripe.com/docs/api/invoices/create#create_invoice-default_tax_rates) for any Invoices issued by the Subscription during this Phase.
8529 8530 8531 |
# File 'lib/stripe/resources/invoice.rb', line 8529 def default_tax_rates @default_tax_rates end |
#description ⇒ Object
Subscription description, meant to be displayable to the customer. Use this field to optionally store an explanation of the subscription for rendering in Stripe surfaces and certain local payment methods UIs.
8532 8533 8534 |
# File 'lib/stripe/resources/invoice.rb', line 8532 def description @description end |
#discounts ⇒ Object
The coupons to redeem into discounts for the schedule phase. If not specified, inherits the discount from the subscription’s customer. Pass an empty string to avoid inheriting any discounts.
8535 8536 8537 |
# File 'lib/stripe/resources/invoice.rb', line 8535 def discounts @discounts end |
#end_date ⇒ Object
The date at which this phase of the subscription schedule ends. If set, ‘iterations` must not be set.
8538 8539 8540 |
# File 'lib/stripe/resources/invoice.rb', line 8538 def end_date @end_date end |
#invoice_settings ⇒ Object
All invoices will be billed using the specified settings.
8541 8542 8543 |
# File 'lib/stripe/resources/invoice.rb', line 8541 def invoice_settings @invoice_settings end |
#items ⇒ Object
List of configuration items, each with an attached price, to apply during this phase of the subscription schedule.
8544 8545 8546 |
# File 'lib/stripe/resources/invoice.rb', line 8544 def items @items end |
#iterations ⇒ Object
Integer representing the multiplier applied to the price interval. For example, ‘iterations=2` applied to a price with `interval=month` and `interval_count=3` results in a phase of duration `2 * 3 months = 6 months`. If set, `end_date` must not be set.
8547 8548 8549 |
# File 'lib/stripe/resources/invoice.rb', line 8547 def iterations @iterations end |
#metadata ⇒ Object
Set of [key-value pairs](stripe.com/docs/api/metadata) that you can attach to a phase. Metadata on a schedule’s phase will update the underlying subscription’s ‘metadata` when the phase is entered, adding new keys and replacing existing keys in the subscription’s ‘metadata`. Individual keys in the subscription’s ‘metadata` can be unset by posting an empty value to them in the phase’s ‘metadata`. To unset all keys in the subscription’s ‘metadata`, update the subscription directly or unset every key individually from the phase’s ‘metadata`.
8550 8551 8552 |
# File 'lib/stripe/resources/invoice.rb', line 8550 def @metadata end |
#on_behalf_of ⇒ Object
The account on behalf of which to charge, for each of the associated subscription’s invoices.
8553 8554 8555 |
# File 'lib/stripe/resources/invoice.rb', line 8553 def on_behalf_of @on_behalf_of end |
#pause_collection ⇒ Object
If specified, payment collection for this subscription will be paused. Note that the subscription status will be unchanged and will not be updated to ‘paused`. Learn more about [pausing collection](stripe.com/docs/billing/subscriptions/pause-payment).
8556 8557 8558 |
# File 'lib/stripe/resources/invoice.rb', line 8556 def pause_collection @pause_collection end |
#proration_behavior ⇒ Object
Whether the subscription schedule will create [prorations](stripe.com/docs/billing/subscriptions/prorations) when transitioning to this phase. The default value is ‘create_prorations`. This setting controls prorations when a phase is started asynchronously and it is persisted as a field on the phase. It’s different from the request-level [proration_behavior](stripe.com/docs/api/subscription_schedules/update#update_subscription_schedule-proration_behavior) parameter which controls what happens if the update request affects the billing configuration of the current phase.
8559 8560 8561 |
# File 'lib/stripe/resources/invoice.rb', line 8559 def proration_behavior @proration_behavior end |
#start_date ⇒ Object
The date at which this phase of the subscription schedule starts or ‘now`. Must be set on the first phase.
8562 8563 8564 |
# File 'lib/stripe/resources/invoice.rb', line 8562 def start_date @start_date end |
#transfer_data ⇒ Object
The data with which to automatically create a Transfer for each of the associated subscription’s invoices.
8565 8566 8567 |
# File 'lib/stripe/resources/invoice.rb', line 8565 def transfer_data @transfer_data end |
#trial ⇒ Object
If set to true the entire phase is counted as a trial and the customer will not be charged for any fees.
8568 8569 8570 |
# File 'lib/stripe/resources/invoice.rb', line 8568 def trial @trial end |
#trial_continuation ⇒ Object
Specify trial behavior when crossing phase boundaries
8571 8572 8573 |
# File 'lib/stripe/resources/invoice.rb', line 8571 def trial_continuation @trial_continuation end |
#trial_end ⇒ Object
Sets the phase to trialing from the start date to this date. Must be before the phase end date, can not be combined with ‘trial`
8574 8575 8576 |
# File 'lib/stripe/resources/invoice.rb', line 8574 def trial_end @trial_end end |
#trial_settings ⇒ Object
Settings related to subscription trials.
8577 8578 8579 |
# File 'lib/stripe/resources/invoice.rb', line 8577 def trial_settings @trial_settings end |