Class: Stripe::PaymentRecord

Inherits:
APIResource show all
Defined in:
lib/stripe/resources/payment_record.rb

Overview

A Payment Record is a resource that allows you to represent payments that occur on- or off-Stripe. For example, you can create a Payment Record to model a payment made on a different payment processor, in order to mark an Invoice as paid and a Subscription as active. Payment Records consist of one or more Payment Attempt Records, which represent individual attempts made on a payment network.

Defined Under Namespace

Classes: Amount, AmountAuthorized, AmountCanceled, AmountFailed, AmountGuaranteed, AmountRefunded, AmountRequested, CustomerDetails, PaymentMethodDetails, ProcessorDetails, ShippingDetails

Constant Summary collapse

OBJECT_NAME =
"payment_record"

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

Instance 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

#amountObject (readonly)

A representation of an amount of money, consisting of an amount and a currency.



2176
2177
2178
# File 'lib/stripe/resources/payment_record.rb', line 2176

def amount
  @amount
end

#amount_authorizedObject (readonly)

A representation of an amount of money, consisting of an amount and a currency.



2178
2179
2180
# File 'lib/stripe/resources/payment_record.rb', line 2178

def amount_authorized
  @amount_authorized
end

#amount_canceledObject (readonly)

A representation of an amount of money, consisting of an amount and a currency.



2180
2181
2182
# File 'lib/stripe/resources/payment_record.rb', line 2180

def amount_canceled
  @amount_canceled
end

#amount_failedObject (readonly)

A representation of an amount of money, consisting of an amount and a currency.



2182
2183
2184
# File 'lib/stripe/resources/payment_record.rb', line 2182

def amount_failed
  @amount_failed
end

#amount_guaranteedObject (readonly)

A representation of an amount of money, consisting of an amount and a currency.



2184
2185
2186
# File 'lib/stripe/resources/payment_record.rb', line 2184

def amount_guaranteed
  @amount_guaranteed
end

#amount_refundedObject (readonly)

A representation of an amount of money, consisting of an amount and a currency.



2186
2187
2188
# File 'lib/stripe/resources/payment_record.rb', line 2186

def amount_refunded
  @amount_refunded
end

#amount_requestedObject (readonly)

A representation of an amount of money, consisting of an amount and a currency.



2188
2189
2190
# File 'lib/stripe/resources/payment_record.rb', line 2188

def amount_requested
  @amount_requested
end

#applicationObject (readonly)

ID of the Connect application that created the PaymentRecord.



2190
2191
2192
# File 'lib/stripe/resources/payment_record.rb', line 2190

def application
  @application
end

#createdObject (readonly)

Time at which the object was created. Measured in seconds since the Unix epoch.



2192
2193
2194
# File 'lib/stripe/resources/payment_record.rb', line 2192

def created
  @created
end

#customer_detailsObject (readonly)

Customer information for this payment.



2194
2195
2196
# File 'lib/stripe/resources/payment_record.rb', line 2194

def customer_details
  @customer_details
end

#customer_presenceObject (readonly)

Indicates whether the customer was present in your checkout flow during this payment.



2196
2197
2198
# File 'lib/stripe/resources/payment_record.rb', line 2196

def customer_presence
  @customer_presence
end

#descriptionObject (readonly)

An arbitrary string attached to the object. Often useful for displaying to users.



2198
2199
2200
# File 'lib/stripe/resources/payment_record.rb', line 2198

def description
  @description
end

#idObject (readonly)

Unique identifier for the object.



2200
2201
2202
# File 'lib/stripe/resources/payment_record.rb', line 2200

def id
  @id
end

#latest_payment_attempt_recordObject (readonly)

ID of the latest Payment Attempt Record attached to this Payment Record.



2202
2203
2204
# File 'lib/stripe/resources/payment_record.rb', line 2202

def latest_payment_attempt_record
  @latest_payment_attempt_record
end

#livemodeObject (readonly)

If the object exists in live mode, the value is ‘true`. If the object exists in test mode, the value is `false`.



2204
2205
2206
# File 'lib/stripe/resources/payment_record.rb', line 2204

def livemode
  @livemode
end

#metadataObject (readonly)

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.



2206
2207
2208
# File 'lib/stripe/resources/payment_record.rb', line 2206

def 
  @metadata
end

#objectObject (readonly)

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



2208
2209
2210
# File 'lib/stripe/resources/payment_record.rb', line 2208

def object
  @object
end

#payment_method_detailsObject (readonly)

Information about the Payment Method debited for this payment.



2210
2211
2212
# File 'lib/stripe/resources/payment_record.rb', line 2210

def payment_method_details
  @payment_method_details
end

#processor_detailsObject (readonly)

Processor information associated with this payment.



2212
2213
2214
# File 'lib/stripe/resources/payment_record.rb', line 2212

def processor_details
  @processor_details
end

#reported_byObject (readonly)

Indicates who reported the payment.



2214
2215
2216
# File 'lib/stripe/resources/payment_record.rb', line 2214

def reported_by
  @reported_by
end

#shipping_detailsObject (readonly)

Shipping information for this payment.



2216
2217
2218
# File 'lib/stripe/resources/payment_record.rb', line 2216

def shipping_details
  @shipping_details
end

Class Method Details

.field_remappingsObject



2376
2377
2378
# File 'lib/stripe/resources/payment_record.rb', line 2376

def self.field_remappings
  @field_remappings = {}
end

.inner_class_typesObject



2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
# File 'lib/stripe/resources/payment_record.rb', line 2360

def self.inner_class_types
  @inner_class_types = {
    amount: Amount,
    amount_authorized: AmountAuthorized,
    amount_canceled: AmountCanceled,
    amount_failed: AmountFailed,
    amount_guaranteed: AmountGuaranteed,
    amount_refunded: AmountRefunded,
    amount_requested: AmountRequested,
    customer_details: CustomerDetails,
    payment_method_details: PaymentMethodDetails,
    processor_details: ProcessorDetails,
    shipping_details: ShippingDetails,
  }
end

.object_nameObject



11
12
13
# File 'lib/stripe/resources/payment_record.rb', line 11

def self.object_name
  "payment_record"
end

.report_payment(params = {}, opts = {}) ⇒ Object

Report a new Payment Record. You may report a Payment Record as it is

initialized and later report updates through the other report_* methods, or report Payment
Records in a terminal state directly, through this method.


2221
2222
2223
2224
2225
2226
2227
2228
# File 'lib/stripe/resources/payment_record.rb', line 2221

def self.report_payment(params = {}, opts = {})
  request_stripe_object(
    method: :post,
    path: "/v1/payment_records/report_payment",
    params: params,
    opts: opts
  )
end

.report_payment_attempt(id, params = {}, opts = {}) ⇒ Object

Report a new payment attempt on the specified Payment Record. A new payment

attempt can only be specified if all other payment attempts are canceled or failed.


2243
2244
2245
2246
2247
2248
2249
2250
# File 'lib/stripe/resources/payment_record.rb', line 2243

def self.report_payment_attempt(id, params = {}, opts = {})
  request_stripe_object(
    method: :post,
    path: format("/v1/payment_records/%<id>s/report_payment_attempt", { id: CGI.escape(id) }),
    params: params,
    opts: opts
  )
end

.report_payment_attempt_canceled(id, params = {}, opts = {}) ⇒ Object

Report that the most recent payment attempt on the specified Payment Record

was canceled.


2265
2266
2267
2268
2269
2270
2271
2272
# File 'lib/stripe/resources/payment_record.rb', line 2265

def self.report_payment_attempt_canceled(id, params = {}, opts = {})
  request_stripe_object(
    method: :post,
    path: format("/v1/payment_records/%<id>s/report_payment_attempt_canceled", { id: CGI.escape(id) }),
    params: params,
    opts: opts
  )
end

.report_payment_attempt_failed(id, params = {}, opts = {}) ⇒ Object

Report that the most recent payment attempt on the specified Payment Record

failed or errored.


2287
2288
2289
2290
2291
2292
2293
2294
# File 'lib/stripe/resources/payment_record.rb', line 2287

def self.report_payment_attempt_failed(id, params = {}, opts = {})
  request_stripe_object(
    method: :post,
    path: format("/v1/payment_records/%<id>s/report_payment_attempt_failed", { id: CGI.escape(id) }),
    params: params,
    opts: opts
  )
end

.report_payment_attempt_guaranteed(id, params = {}, opts = {}) ⇒ Object

Report that the most recent payment attempt on the specified Payment Record

was guaranteed.


2309
2310
2311
2312
2313
2314
2315
2316
# File 'lib/stripe/resources/payment_record.rb', line 2309

def self.report_payment_attempt_guaranteed(id, params = {}, opts = {})
  request_stripe_object(
    method: :post,
    path: format("/v1/payment_records/%<id>s/report_payment_attempt_guaranteed", { id: CGI.escape(id) }),
    params: params,
    opts: opts
  )
end

.report_payment_attempt_informational(id, params = {}, opts = {}) ⇒ Object

Report informational updates on the specified Payment Record.



2329
2330
2331
2332
2333
2334
2335
2336
# File 'lib/stripe/resources/payment_record.rb', line 2329

def self.report_payment_attempt_informational(id, params = {}, opts = {})
  request_stripe_object(
    method: :post,
    path: format("/v1/payment_records/%<id>s/report_payment_attempt_informational", { id: CGI.escape(id) }),
    params: params,
    opts: opts
  )
end

.report_refund(id, params = {}, opts = {}) ⇒ Object

Report that the most recent payment attempt on the specified Payment Record

was refunded.


2351
2352
2353
2354
2355
2356
2357
2358
# File 'lib/stripe/resources/payment_record.rb', line 2351

def self.report_refund(id, params = {}, opts = {})
  request_stripe_object(
    method: :post,
    path: format("/v1/payment_records/%<id>s/report_refund", { id: CGI.escape(id) }),
    params: params,
    opts: opts
  )
end

Instance Method Details

#report_payment_attempt(params = {}, opts = {}) ⇒ Object

Report a new payment attempt on the specified Payment Record. A new payment

attempt can only be specified if all other payment attempts are canceled or failed.


2232
2233
2234
2235
2236
2237
2238
2239
# File 'lib/stripe/resources/payment_record.rb', line 2232

def report_payment_attempt(params = {}, opts = {})
  request_stripe_object(
    method: :post,
    path: format("/v1/payment_records/%<id>s/report_payment_attempt", { id: CGI.escape(self["id"]) }),
    params: params,
    opts: opts
  )
end

#report_payment_attempt_canceled(params = {}, opts = {}) ⇒ Object

Report that the most recent payment attempt on the specified Payment Record

was canceled.


2254
2255
2256
2257
2258
2259
2260
2261
# File 'lib/stripe/resources/payment_record.rb', line 2254

def report_payment_attempt_canceled(params = {}, opts = {})
  request_stripe_object(
    method: :post,
    path: format("/v1/payment_records/%<id>s/report_payment_attempt_canceled", { id: CGI.escape(self["id"]) }),
    params: params,
    opts: opts
  )
end

#report_payment_attempt_failed(params = {}, opts = {}) ⇒ Object

Report that the most recent payment attempt on the specified Payment Record

failed or errored.


2276
2277
2278
2279
2280
2281
2282
2283
# File 'lib/stripe/resources/payment_record.rb', line 2276

def report_payment_attempt_failed(params = {}, opts = {})
  request_stripe_object(
    method: :post,
    path: format("/v1/payment_records/%<id>s/report_payment_attempt_failed", { id: CGI.escape(self["id"]) }),
    params: params,
    opts: opts
  )
end

#report_payment_attempt_guaranteed(params = {}, opts = {}) ⇒ Object

Report that the most recent payment attempt on the specified Payment Record

was guaranteed.


2298
2299
2300
2301
2302
2303
2304
2305
# File 'lib/stripe/resources/payment_record.rb', line 2298

def report_payment_attempt_guaranteed(params = {}, opts = {})
  request_stripe_object(
    method: :post,
    path: format("/v1/payment_records/%<id>s/report_payment_attempt_guaranteed", { id: CGI.escape(self["id"]) }),
    params: params,
    opts: opts
  )
end

#report_payment_attempt_informational(params = {}, opts = {}) ⇒ Object

Report informational updates on the specified Payment Record.



2319
2320
2321
2322
2323
2324
2325
2326
# File 'lib/stripe/resources/payment_record.rb', line 2319

def report_payment_attempt_informational(params = {}, opts = {})
  request_stripe_object(
    method: :post,
    path: format("/v1/payment_records/%<id>s/report_payment_attempt_informational", { id: CGI.escape(self["id"]) }),
    params: params,
    opts: opts
  )
end

#report_refund(params = {}, opts = {}) ⇒ Object

Report that the most recent payment attempt on the specified Payment Record

was refunded.


2340
2341
2342
2343
2344
2345
2346
2347
# File 'lib/stripe/resources/payment_record.rb', line 2340

def report_refund(params = {}, opts = {})
  request_stripe_object(
    method: :post,
    path: format("/v1/payment_records/%<id>s/report_refund", { id: CGI.escape(self["id"]) }),
    params: params,
    opts: opts
  )
end