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, new, #to_h

Constructor Details

#initialize(amount: nil, description: nil, discountable: nil, discounts: nil, id: nil, margins: 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.



241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 241

def initialize(
  amount: nil,
  description: nil,
  discountable: nil,
  discounts: nil,
  id: nil,
  margins: 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
  @margins = margins
  @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

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



213
214
215
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 213

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.



215
216
217
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 215

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.



217
218
219
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 217

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.



219
220
221
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 219

def discounts
  @discounts
end

#idObject

ID of an existing line item on the invoice.



221
222
223
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 221

def id
  @id
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.



223
224
225
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 223

def margins
  @margins
end

#metadataObject

Set of [key-value pairs](docs.stripe.com/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`. For [type=subscription](docs.stripe.com/api/invoices/line_item#invoice_line_item_object-type) line items, the incoming metadata specified on the request is directly used to set this value, in contrast to [type=invoiceitem](api/invoices/line_item#invoice_line_item_object-type) line items, where any existing metadata on the invoice line is merged with the incoming data.



225
226
227
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 225

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](docs.stripe.com/revenue-recognition) enabled, the period will be used to recognize and defer revenue. See the [Revenue Recognition documentation](docs.stripe.com/revenue-recognition/methodology/subscriptions-and-invoicing) for details.



227
228
229
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 227

def period
  @period
end

#price_dataObject

Data used to generate a new [Price](docs.stripe.com/api/prices) object inline.



229
230
231
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 229

def price_data
  @price_data
end

#pricingObject

The pricing information for the invoice item.



231
232
233
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 231

def pricing
  @pricing
end

#quantityObject

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.



233
234
235
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 233

def quantity
  @quantity
end

#quantity_decimalObject

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



235
236
237
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 235

def quantity_decimal
  @quantity_decimal
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](docs.stripe.com/api/invoices/line_item#invoice_line_item_object-tax_rates) or if the invoice has [default_tax_rates](docs.stripe.com/api/invoices/object#invoice_object-default_tax_rates) or uses [automatic tax](docs.stripe.com/tax/invoicing). Pass an empty string to remove previously defined tax amounts.



237
238
239
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 237

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.



239
240
241
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 239

def tax_rates
  @tax_rates
end

Class Method Details

.field_encodingsObject



273
274
275
276
277
278
# File 'lib/stripe/params/invoice_update_lines_params.rb', line 273

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