Class: Stripe::InvoiceService::AddLinesParams::Line

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

Defined Under Namespace

Classes: Discount, Period, PriceData, TaxAmount

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from RequestParams

#to_h

Constructor Details

#initialize(amount: nil, description: nil, discountable: nil, discounts: nil, invoice_item: nil, margins: nil, metadata: nil, period: nil, price: nil, price_data: nil, quantity: nil, tax_amounts: nil, tax_rates: nil) ⇒ Line

Returns a new instance of Line.



3946
3947
3948
3949
3950
3951
3952
3953
3954
3955
3956
3957
3958
3959
3960
3961
3962
3963
3964
3965
3966
3967
3968
3969
3970
3971
3972
3973
3974
# File 'lib/stripe/services/invoice_service.rb', line 3946

def initialize(
  amount: nil,
  description: nil,
  discountable: nil,
  discounts: nil,
  invoice_item: nil,
  margins: nil,
  metadata: nil,
  period: nil,
  price: nil,
  price_data: nil,
  quantity: nil,
  tax_amounts: nil,
  tax_rates: nil
)
  @amount = amount
  @description = description
  @discountable = discountable
  @discounts = discounts
  @invoice_item = invoice_item
  @margins = margins
  @metadata = 
  @period = period
  @price = price
  @price_data = price_data
  @quantity = quantity
  @tax_amounts = tax_amounts
  @tax_rates = tax_rates
end

Instance Attribute Details

#amountObject

The integer amount in cents (or local equivalent) of the charge to be applied to the upcoming invoice. If you want to apply a credit to the customer’s account, pass a negative amount.



3908
3909
3910
# File 'lib/stripe/services/invoice_service.rb', line 3908

def amount
  @amount
end

#descriptionObject

An arbitrary string which you can attach to the invoice item. The description is displayed in the invoice for easy tracking.



3911
3912
3913
# File 'lib/stripe/services/invoice_service.rb', line 3911

def description
  @description
end

#discountableObject

Controls whether discounts apply to this line item. Defaults to false for prorations or negative line items, and true for all other line items. Cannot be set to true for prorations.



3914
3915
3916
# File 'lib/stripe/services/invoice_service.rb', line 3914

def discountable
  @discountable
end

#discountsObject

The coupons, promotion codes & existing discounts which apply to the line item. Item discounts are applied before invoice discounts. Pass an empty string to remove previously-defined discounts.



3917
3918
3919
# File 'lib/stripe/services/invoice_service.rb', line 3917

def discounts
  @discounts
end

#invoice_itemObject

ID of an unassigned invoice item to assign to this invoice. If not provided, a new item will be created.



3920
3921
3922
# File 'lib/stripe/services/invoice_service.rb', line 3920

def invoice_item
  @invoice_item
end

#marginsObject

The IDs of the margins to apply to the line item. When set, the ‘default_margins` on the invoice do not apply to this line item.



3923
3924
3925
# File 'lib/stripe/services/invoice_service.rb', line 3923

def margins
  @margins
end

#metadataObject

Set of [key-value pairs](stripe.com/docs/api/metadata) 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`.



3926
3927
3928
# File 'lib/stripe/services/invoice_service.rb', line 3926

def 
  @metadata
end

#periodObject

The period associated with this invoice item. When set to different values, the period will be rendered on the invoice. If you have [Stripe Revenue Recognition](stripe.com/docs/revenue-recognition) enabled, the period will be used to recognize and defer revenue. See the [Revenue Recognition documentation](stripe.com/docs/revenue-recognition/methodology/subscriptions-and-invoicing) for details.



3929
3930
3931
# File 'lib/stripe/services/invoice_service.rb', line 3929

def period
  @period
end

#priceObject

The ID of the price object. One of ‘price` or `price_data` is required.



3932
3933
3934
# File 'lib/stripe/services/invoice_service.rb', line 3932

def price
  @price
end

#price_dataObject

Data used to generate a new [Price](stripe.com/docs/api/prices) object inline. One of ‘price` or `price_data` is required.



3935
3936
3937
# File 'lib/stripe/services/invoice_service.rb', line 3935

def price_data
  @price_data
end

#quantityObject

Non-negative integer. The quantity of units for the line item.



3938
3939
3940
# File 'lib/stripe/services/invoice_service.rb', line 3938

def quantity
  @quantity
end

#tax_amountsObject

A list of up to 10 tax amounts for this line item. This can be useful if you calculate taxes on your own or use a third-party to calculate them. You cannot set tax amounts if any line item has [tax_rates](stripe.com/docs/api/invoices/line_item#invoice_line_item_object-tax_rates) or if the invoice has [default_tax_rates](stripe.com/docs/api/invoices/object#invoice_object-default_tax_rates) or uses [automatic tax](stripe.com/docs/tax/invoicing). Pass an empty string to remove previously defined tax amounts.



3941
3942
3943
# File 'lib/stripe/services/invoice_service.rb', line 3941

def tax_amounts
  @tax_amounts
end

#tax_ratesObject

The tax rates which apply to the line item. When set, the ‘default_tax_rates` on the invoice do not apply to this line item. Pass an empty string to remove previously-defined tax rates.



3944
3945
3946
# File 'lib/stripe/services/invoice_service.rb', line 3944

def tax_rates
  @tax_rates
end