Class: Stripe::V2::Billing::Intent

Inherits:
APIResource show all
Defined in:
lib/stripe/resources/v2/billing/intent.rb

Overview

A Billing Intent represents a proposed change to a customer’s billing configuration, such as subscribing to a new service, modifying an existing subscription, or canceling service. Intents follow a draft-reserve-commit workflow where they can be previewed before committing, allowing you to see the billing impact before changes take effect.

Defined Under Namespace

Classes: AmountDetails, CadenceData, StatusTransitions

Constant Summary collapse

OBJECT_NAME =
"v2.billing.intent"

Constants inherited from StripeObject

StripeObject::RESERVED_FIELD_NAMES

Instance Attribute Summary collapse

Attributes inherited from APIResource

#save_with_parent

Attributes inherited from StripeObject

#last_response

Class Method Summary collapse

Methods inherited from APIResource

class_name, custom_method, #refresh, #request_stripe_object, resource_url, #resource_url, retrieve, save_nested_resource

Methods included from APIOperations::Request

included

Methods inherited from 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

#amount_detailsObject (readonly)

Breakdown of the amount for this Billing Intent.



320
321
322
# File 'lib/stripe/resources/v2/billing/intent.rb', line 320

def amount_details
  @amount_details
end

#cadenceObject (readonly)

ID of an existing Cadence to use.



322
323
324
# File 'lib/stripe/resources/v2/billing/intent.rb', line 322

def cadence
  @cadence
end

#cadence_dataObject (readonly)

Data for creating a new Cadence.



324
325
326
# File 'lib/stripe/resources/v2/billing/intent.rb', line 324

def cadence_data
  @cadence_data
end

#createdObject (readonly)

Time at which the object was created.



326
327
328
# File 'lib/stripe/resources/v2/billing/intent.rb', line 326

def created
  @created
end

#currencyObject (readonly)

Three-letter ISO currency code, in lowercase. Must be a supported currency.



328
329
330
# File 'lib/stripe/resources/v2/billing/intent.rb', line 328

def currency
  @currency
end

#idObject (readonly)

Unique identifier for the object.



330
331
332
# File 'lib/stripe/resources/v2/billing/intent.rb', line 330

def id
  @id
end

#livemodeObject (readonly)

Has the value ‘true` if the object exists in live mode or the value `false` if the object exists in test mode.



332
333
334
# File 'lib/stripe/resources/v2/billing/intent.rb', line 332

def livemode
  @livemode
end

#objectObject (readonly)

String representing the object’s type. Objects of the same type share the same value of the object field.



334
335
336
# File 'lib/stripe/resources/v2/billing/intent.rb', line 334

def object
  @object
end

#statusObject (readonly)

Current status of the Billing Intent.



336
337
338
# File 'lib/stripe/resources/v2/billing/intent.rb', line 336

def status
  @status
end

#status_transitionsObject (readonly)

Timestamps for status transitions of the Billing Intent.



338
339
340
# File 'lib/stripe/resources/v2/billing/intent.rb', line 338

def status_transitions
  @status_transitions
end

Class Method Details

.field_remappingsObject



348
349
350
# File 'lib/stripe/resources/v2/billing/intent.rb', line 348

def self.field_remappings
  @field_remappings = {}
end

.inner_class_typesObject



340
341
342
343
344
345
346
# File 'lib/stripe/resources/v2/billing/intent.rb', line 340

def self.inner_class_types
  @inner_class_types = {
    amount_details: AmountDetails,
    cadence_data: CadenceData,
    status_transitions: StatusTransitions,
  }
end

.object_nameObject



12
13
14
# File 'lib/stripe/resources/v2/billing/intent.rb', line 12

def self.object_name
  "v2.billing.intent"
end