Class: Stripe::InvoiceUpdateLinesParams::Line

Inherits:
RequestParams show all
Defined in:
lib/stripe/params/invoice_update_lines_params.rb

Defined Under Namespace

Classes: Discount, Period, PriceData, Pricing, TaxAmount

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from RequestParams

attr_accessor, coerce_params, coerce_value, discriminator, discriminator_fields, new, #to_h

Constructor Details

#initialize(amount: nil, description: nil, discountable: nil, discounts: nil, id: nil, metadata: nil, period: nil, price_data: nil, pricing: nil, quantity: nil, quantity_decimal: nil, tax_amounts: nil, tax_rates: nil) ⇒ Line

Returns a new instance of Line.



211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 211

def initialize(
  amount: nil,
  description: nil,
  discountable: nil,
  discounts: nil,
  id: nil,
  metadata: nil,
  period: nil,
  price_data: nil,
  pricing: nil,
  quantity: nil,
  quantity_decimal: nil,
  tax_amounts: nil,
  tax_rates: nil
)
  @amount = amount
  @description = description
  @discountable = discountable
  @discounts = discounts
  @id = id
  @metadata = 
  @period = period
  @price_data = price_data
  @pricing = pricing
  @quantity = quantity
  @quantity_decimal = quantity_decimal
  @tax_amounts = tax_amounts
  @tax_rates = tax_rates
end

Instance Attribute Details

#amount ⇒ Object

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.



185
186
187
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 185

def amount
  @amount
end

#description ⇒ Object

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



187
188
189
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 187

def description
  @description
end

#discountable ⇒ Object

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.



189
190
191
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 189

def discountable
  @discountable
end

#discounts ⇒ Object

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.



191
192
193
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 191

def discounts
  @discounts
end

#id ⇒ Object

ID of an existing line item on the invoice.



193
194
195
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 193

def id
  @id
end

#metadata ⇒ Object

Set of key-value pairs 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. For type=subscription line items, the incoming metadata specified on the request is directly used to set this value, in contrast to type=invoiceitem line items, where any existing metadata on the invoice line is merged with the incoming data.



195
196
197
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 195

def 
  @metadata
end

#period ⇒ Object

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 enabled, the period will be used to recognize and defer revenue. See the Revenue Recognition documentation for details.



197
198
199
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 197

def period
  @period
end

#price_data ⇒ Object

Data used to generate a new Price object inline.



199
200
201
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 199

def price_data
  @price_data
end

#pricing ⇒ Object

The pricing information for the invoice item.



201
202
203
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 201

def pricing
  @pricing
end

#quantity ⇒ Object

Non-negative integer. The quantity of units for the line item. Use quantity_decimal instead to provide decimal precision. This field will be deprecated in favor of quantity_decimal in a future version.



203
204
205
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 203

def quantity
  @quantity
end

#quantity_decimal ⇒ Object

Non-negative decimal with at most 12 decimal places. The quantity of units for the line item.



205
206
207
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 205

def quantity_decimal
  @quantity_decimal
end

#tax_amounts ⇒ Object

A list of up to 20 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 or if the invoice has default_tax_rates or uses automatic tax. Pass an empty string to remove previously defined tax amounts.



207
208
209
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 207

def tax_amounts
  @tax_amounts
end

#tax_rates ⇒ Object

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.



209
210
211
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 209

def tax_rates
  @tax_rates
end

Class Method Details

.field_encodings ⇒ Object



241
242
243
244
245
246
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 241

def self.field_encodings
  @field_encodings = {
    price_data: { kind: :object, fields: { unit_amount_decimal: :decimal_string } },
    quantity_decimal: :decimal_string,
  }
end