Class: Stripe::Quote::CreateParams::SubscriptionData

Inherits:
RequestParams
  • Object
show all
Defined in:
lib/stripe/resources/quote.rb

Defined Under Namespace

Classes: BillOnAcceptance, BillingMode, Prebilling

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from RequestParams

#to_h

Constructor Details

#initialize(bill_on_acceptance: nil, billing_behavior: nil, billing_cycle_anchor: nil, billing_mode: nil, description: nil, effective_date: nil, end_behavior: nil, from_subscription: nil, metadata: nil, prebilling: nil, proration_behavior: nil, trial_period_days: nil) ⇒ SubscriptionData

Returns a new instance of SubscriptionData.



1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
# File 'lib/stripe/resources/quote.rb', line 1733

def initialize(
  bill_on_acceptance: nil,
  billing_behavior: nil,
  billing_cycle_anchor: nil,
  billing_mode: nil,
  description: nil,
  effective_date: nil,
  end_behavior: nil,
  from_subscription: nil,
  metadata: nil,
  prebilling: nil,
  proration_behavior: nil,
  trial_period_days: nil
)
  @bill_on_acceptance = bill_on_acceptance
  @billing_behavior = billing_behavior
  @billing_cycle_anchor = billing_cycle_anchor
  @billing_mode = billing_mode
  @description = description
  @effective_date = effective_date
  @end_behavior = end_behavior
  @from_subscription = from_subscription
  @metadata = 
  @prebilling = prebilling
  @proration_behavior = proration_behavior
  @trial_period_days = trial_period_days
end

Instance Attribute Details

#bill_on_acceptanceObject

Describes the period to bill for upon accepting the quote.



1703
1704
1705
# File 'lib/stripe/resources/quote.rb', line 1703

def bill_on_acceptance
  @bill_on_acceptance
end

#billing_behaviorObject

Configures when the subscription schedule generates prorations for phase transitions. Possible values are ‘prorate_on_next_phase` or `prorate_up_front` with the default being `prorate_on_next_phase`. `prorate_on_next_phase` will apply phase changes and generate prorations at transition time. `prorate_up_front` will bill for all phases within the current billing cycle up front.



1705
1706
1707
# File 'lib/stripe/resources/quote.rb', line 1705

def billing_behavior
  @billing_behavior
end

#billing_cycle_anchorObject

When specified as ‘reset`, the subscription will always start a new billing period when the quote is accepted.



1707
1708
1709
# File 'lib/stripe/resources/quote.rb', line 1707

def billing_cycle_anchor
  @billing_cycle_anchor
end

#billing_modeObject

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



1709
1710
1711
# File 'lib/stripe/resources/quote.rb', line 1709

def billing_mode
  @billing_mode
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 Stripe surfaces and certain local payment methods UIs.



1711
1712
1713
# File 'lib/stripe/resources/quote.rb', line 1711

def description
  @description
end

#effective_dateObject

When creating a new subscription, the date of which the subscription schedule will start after the quote is accepted. When updating a subscription, the date of which the subscription will be updated using a subscription schedule. The special value ‘current_period_end` can be provided to update a subscription at the end of its current period. The `effective_date` is ignored if it is in the past when the quote is accepted.



1713
1714
1715
# File 'lib/stripe/resources/quote.rb', line 1713

def effective_date
  @effective_date
end

#end_behaviorObject

Behavior of the subscription schedule and underlying subscription when it ends.



1715
1716
1717
# File 'lib/stripe/resources/quote.rb', line 1715

def end_behavior
  @end_behavior
end

#from_subscriptionObject

The id of a subscription that the quote will update. By default, the quote will contain the state of the subscription (such as line items, collection method and billing thresholds) unless overridden.



1717
1718
1719
# File 'lib/stripe/resources/quote.rb', line 1717

def from_subscription
  @from_subscription
end

#metadataObject

Set of [key-value pairs](stripe.com/docs/api/metadata) that will set metadata on the subscription or subscription schedule when the quote is accepted. If a recurring price is included in ‘line_items`, this field will be passed to the resulting subscription’s ‘metadata` field. If `subscription_data.effective_date` is used, this field will be passed to the resulting subscription schedule’s ‘phases.metadata` field. Unlike object-level metadata, this field is declarative. Updates will clear prior values.



1719
1720
1721
# File 'lib/stripe/resources/quote.rb', line 1719

def 
  @metadata
end

#prebillingObject

If specified, the invoicing for the given billing cycle iterations will be processed when the quote is accepted. Cannot be used with ‘effective_date`.



1721
1722
1723
# File 'lib/stripe/resources/quote.rb', line 1721

def prebilling
  @prebilling
end

#proration_behaviorObject

Determines how to handle [prorations](stripe.com/docs/subscriptions/billing-cycle#prorations). When creating a subscription, valid values are ‘create_prorations` or `none`.

When updating a subscription, valid values are ‘create_prorations`, `none`, or `always_invoice`.

Passing ‘create_prorations` will cause proration invoice items to be created when applicable. These proration items will only be invoiced immediately under [certain conditions](stripe.com/docs/subscriptions/upgrading-downgrading#immediate-payment). In order to always invoice immediately for prorations, pass `always_invoice`.

Prorations can be disabled by passing ‘none`.



1729
1730
1731
# File 'lib/stripe/resources/quote.rb', line 1729

def proration_behavior
  @proration_behavior
end

#trial_period_daysObject

Integer representing the number of trial period days before the customer is charged for the first time.



1731
1732
1733
# File 'lib/stripe/resources/quote.rb', line 1731

def trial_period_days
  @trial_period_days
end