Class: Stripe::SubscriptionSchedule::Phase

Inherits:
Stripe::StripeObject show all
Defined in:
lib/stripe/resources/subscription_schedule.rb

Defined Under Namespace

Classes: AddInvoiceItem, AutomaticTax, BillingThresholds, Discount, InvoiceSettings, Item, PauseCollection, TransferData, TrialSettings

Constant Summary

Constants inherited from Stripe::StripeObject

Stripe::StripeObject::RESERVED_FIELD_NAMES

Instance Attribute Summary collapse

Attributes inherited from Stripe::StripeObject

#last_response

Class Method Summary collapse

Methods inherited from Stripe::StripeObject

#==, #[], #[]=, #_get_inner_class_type, additive_object_param, additive_object_param?, #as_json, construct_from, #deleted?, #dirty!, #each, #eql?, field_encodings, #hash, #initialize, #inspect, #keys, #marshal_dump, #marshal_load, protected_fields, #serialize_params, #to_hash, #to_json, #to_s, #update_attributes, #values

Constructor Details

This class inherits a constructor from Stripe::StripeObject

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class Stripe::StripeObject

Instance Attribute Details

#add_invoice_itemsObject (readonly)

A list of prices and quantities that will generate invoice items appended to the next invoice for this phase.



763
764
765
# File 'lib/stripe/resources/subscription_schedule.rb', line 763

def add_invoice_items
  @add_invoice_items
end

#application_fee_percentObject (readonly)

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 during this phase of the schedule.



765
766
767
# File 'lib/stripe/resources/subscription_schedule.rb', line 765

def application_fee_percent
  @application_fee_percent
end

#automatic_taxObject (readonly)

Attribute for field automatic_tax



767
768
769
# File 'lib/stripe/resources/subscription_schedule.rb', line 767

def automatic_tax
  @automatic_tax
end

#billing_cycle_anchorObject (readonly)

Possible values are ‘phase_start` or `automatic`. If `phase_start` then billing cycle anchor of the subscription is set to the start of the phase when entering the phase. If `automatic` then the billing cycle anchor is automatically modified as needed when entering the phase. For more information, see the billing cycle [documentation](docs.stripe.com/billing/subscriptions/billing-cycle).



769
770
771
# File 'lib/stripe/resources/subscription_schedule.rb', line 769

def billing_cycle_anchor
  @billing_cycle_anchor
end

#billing_thresholdsObject (readonly)

Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period



771
772
773
# File 'lib/stripe/resources/subscription_schedule.rb', line 771

def billing_thresholds
  @billing_thresholds
end

#collection_methodObject (readonly)

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



773
774
775
# File 'lib/stripe/resources/subscription_schedule.rb', line 773

def collection_method
  @collection_method
end

#currencyObject (readonly)

Three-letter [ISO currency code](www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](stripe.com/docs/currencies).



775
776
777
# File 'lib/stripe/resources/subscription_schedule.rb', line 775

def currency
  @currency
end

#default_payment_methodObject (readonly)

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.



777
778
779
# File 'lib/stripe/resources/subscription_schedule.rb', line 777

def default_payment_method
  @default_payment_method
end

#default_tax_ratesObject (readonly)

The default tax rates to apply to the subscription during this phase of the subscription schedule.



779
780
781
# File 'lib/stripe/resources/subscription_schedule.rb', line 779

def default_tax_rates
  @default_tax_rates
end

#descriptionObject (readonly)

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.



781
782
783
# File 'lib/stripe/resources/subscription_schedule.rb', line 781

def description
  @description
end

#discountsObject (readonly)

The stackable discounts that will be applied to the subscription on this phase. Subscription item discounts are applied before subscription discounts.



783
784
785
# File 'lib/stripe/resources/subscription_schedule.rb', line 783

def discounts
  @discounts
end

#effective_atObject (readonly)

Configures how the subscription schedule handles billing for phase transitions. Possible values are ‘phase_start` (default) or `billing_period_start`. `phase_start` bills based on the current state of the subscription, ignoring changes scheduled in future phases. `billing_period_start` bills predictively for upcoming phase transitions within the current billing cycle, including pricing changes and service period adjustments that will occur before the next invoice.



785
786
787
# File 'lib/stripe/resources/subscription_schedule.rb', line 785

def effective_at
  @effective_at
end

#end_dateObject (readonly)

The end of this phase of the subscription schedule.



787
788
789
# File 'lib/stripe/resources/subscription_schedule.rb', line 787

def end_date
  @end_date
end

#invoice_settingsObject (readonly)

The invoice settings applicable during this phase.



789
790
791
# File 'lib/stripe/resources/subscription_schedule.rb', line 789

def invoice_settings
  @invoice_settings
end

#itemsObject (readonly)

Subscription items to configure the subscription to during this phase of the subscription schedule.



791
792
793
# File 'lib/stripe/resources/subscription_schedule.rb', line 791

def items
  @items
end

#metadataObject (readonly)

Set of [key-value pairs](docs.stripe.com/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. Updating the underlying subscription’s ‘metadata` directly will not affect the current phase’s ‘metadata`.



793
794
795
# File 'lib/stripe/resources/subscription_schedule.rb', line 793

def 
  @metadata
end

#on_behalf_ofObject (readonly)

The account (if any) the charge was made on behalf of for charges associated with the schedule’s subscription. See the Connect documentation for details.



795
796
797
# File 'lib/stripe/resources/subscription_schedule.rb', line 795

def on_behalf_of
  @on_behalf_of
end

#pause_collectionObject (readonly)

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](docs.stripe.com/billing/subscriptions/pause-payment).



797
798
799
# File 'lib/stripe/resources/subscription_schedule.rb', line 797

def pause_collection
  @pause_collection
end

#proration_behaviorObject (readonly)

When transitioning phases, controls how prorations are handled (if any). Possible values are ‘create_prorations`, `none`, and `always_invoice`.



799
800
801
# File 'lib/stripe/resources/subscription_schedule.rb', line 799

def proration_behavior
  @proration_behavior
end

#start_dateObject (readonly)

The start of this phase of the subscription schedule.



801
802
803
# File 'lib/stripe/resources/subscription_schedule.rb', line 801

def start_date
  @start_date
end

#transfer_dataObject (readonly)

The account (if any) the associated subscription’s payments will be attributed to for tax reporting, and where funds from each payment will be transferred to for each of the subscription’s invoices.



803
804
805
# File 'lib/stripe/resources/subscription_schedule.rb', line 803

def transfer_data
  @transfer_data
end

#trial_continuationObject (readonly)

Specify behavior of the trial when crossing schedule phase boundaries



805
806
807
# File 'lib/stripe/resources/subscription_schedule.rb', line 805

def trial_continuation
  @trial_continuation
end

#trial_endObject (readonly)

When the trial ends within the phase.



807
808
809
# File 'lib/stripe/resources/subscription_schedule.rb', line 807

def trial_end
  @trial_end
end

#trial_settingsObject (readonly)

Settings related to any trials on the subscription during this phase.



809
810
811
# File 'lib/stripe/resources/subscription_schedule.rb', line 809

def trial_settings
  @trial_settings
end

Class Method Details

.field_remappingsObject



825
826
827
# File 'lib/stripe/resources/subscription_schedule.rb', line 825

def self.field_remappings
  @field_remappings = {}
end

.inner_class_typesObject



811
812
813
814
815
816
817
818
819
820
821
822
823
# File 'lib/stripe/resources/subscription_schedule.rb', line 811

def self.inner_class_types
  @inner_class_types = {
    add_invoice_items: AddInvoiceItem,
    automatic_tax: AutomaticTax,
    billing_thresholds: BillingThresholds,
    discounts: Discount,
    invoice_settings: InvoiceSettings,
    items: Item,
    pause_collection: PauseCollection,
    transfer_data: TransferData,
    trial_settings: TrialSettings,
  }
end