Class: Stripe::Treasury::OutboundTransfer

Inherits:
APIResource show all
Extended by:
APIOperations::Create, APIOperations::List
Defined in:
lib/stripe/resources/treasury/outbound_transfer.rb

Overview

Use OutboundTransfers to transfer funds from a FinancialAccount to a PaymentMethod belonging to the same entity. To send funds to a different party, use OutboundPayments instead. You can send funds over ACH rails or through a domestic wire transfer to a user's own external bank account.

Simulate OutboundTransfer state changes with the /v1/test_helpers/treasury/outbound_transfers endpoints. These methods can only be called on test mode objects.

Related guide: Moving money with Treasury using OutboundTransfer objects

Defined Under Namespace

Classes: DestinationPaymentMethodDetails, NetworkDetails, ReturnedDetails, StatusTransitions, TestHelpers, TrackingDetails

Constant Summary collapse

OBJECT_NAME =
"treasury.outbound_transfer"

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 included from APIOperations::Create

create

Methods included from APIOperations::List

list

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)

Amount (in cents) transferred.



230
231
232
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 230

def amount
  @amount
end

#cancelableObject (readonly)

Returns true if the object can be canceled, and false otherwise.



232
233
234
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 232

def cancelable
  @cancelable
end

#createdObject (readonly)

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



234
235
236
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 234

def created
  @created
end

#currencyObject (readonly)

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



236
237
238
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 236

def currency
  @currency
end

#descriptionObject (readonly)

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



238
239
240
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 238

def description
  @description
end

#destination_payment_methodObject (readonly)

The PaymentMethod used as the payment instrument for an OutboundTransfer.



240
241
242
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 240

def destination_payment_method
  @destination_payment_method
end

#destination_payment_method_detailsObject (readonly)

Attribute for field destination_payment_method_details



242
243
244
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 242

def destination_payment_method_details
  @destination_payment_method_details
end

#expected_arrival_dateObject (readonly)

The date when funds are expected to arrive in the destination account.



244
245
246
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 244

def expected_arrival_date
  @expected_arrival_date
end

#financial_accountObject (readonly)

The FinancialAccount that funds were pulled from.



246
247
248
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 246

def 
  @financial_account
end

#hosted_regulatory_receipt_urlObject (readonly)

A hosted transaction receipt URL that is provided when money movement is considered regulated under Stripe's money transmission licenses.



248
249
250
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 248

def hosted_regulatory_receipt_url
  @hosted_regulatory_receipt_url
end

#idObject (readonly)

Unique identifier for the object.



250
251
252
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 250

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



252
253
254
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 252

def livemode
  @livemode
end

#metadataObject (readonly)

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.



254
255
256
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 254

def 
  @metadata
end

#network_detailsObject (readonly)

Details about the network used for the OutboundTransfer.



256
257
258
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 256

def network_details
  @network_details
end

#objectObject (readonly)

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



258
259
260
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 258

def object
  @object
end

#returned_detailsObject (readonly)

Details about a returned OutboundTransfer. Only set when the status is returned.



260
261
262
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 260

def returned_details
  @returned_details
end

#statement_descriptorObject (readonly)

Information about the OutboundTransfer to be sent to the recipient account.



262
263
264
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 262

def statement_descriptor
  @statement_descriptor
end

#statusObject (readonly)

Current status of the OutboundTransfer: processing, failed, canceled, posted, returned. An OutboundTransfer is processing if it has been created and is pending. The status changes to posted once the OutboundTransfer has been "confirmed" and funds have left the account, or to failed or canceled. If an OutboundTransfer fails to arrive at its destination, its status will change to returned.



264
265
266
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 264

def status
  @status
end

#status_transitionsObject (readonly)

Attribute for field status_transitions



266
267
268
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 266

def status_transitions
  @status_transitions
end

#tracking_detailsObject (readonly)

Details about network-specific tracking information if available.



268
269
270
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 268

def tracking_details
  @tracking_details
end

#transactionObject (readonly)

The Transaction associated with this object.



270
271
272
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 270

def transaction
  @transaction
end

Class Method Details

.cancel(outbound_transfer, params = {}, opts = {}) ⇒ Object

An OutboundTransfer can be canceled if the funds have not yet been paid out.



283
284
285
286
287
288
289
290
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 283

def self.cancel(outbound_transfer, params = {}, opts = {})
  request_stripe_object(
    method: :post,
    path: format("/v1/treasury/outbound_transfers/%<outbound_transfer>s/cancel", { outbound_transfer: CGI.escape(outbound_transfer) }),
    params: params,
    opts: opts
  )
end

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

Creates an OutboundTransfer.



293
294
295
296
297
298
299
300
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 293

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

.field_remappingsObject



413
414
415
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 413

def self.field_remappings
  @field_remappings = {}
end

.inner_class_typesObject



403
404
405
406
407
408
409
410
411
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 403

def self.inner_class_types
  @inner_class_types = {
    destination_payment_method_details: DestinationPaymentMethodDetails,
    network_details: NetworkDetails,
    returned_details: ReturnedDetails,
    status_transitions: StatusTransitions,
    tracking_details: TrackingDetails,
  }
end

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

Returns a list of OutboundTransfers sent from the specified FinancialAccount.



303
304
305
306
307
308
309
310
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 303

def self.list(params = {}, opts = {})
  request_stripe_object(
    method: :get,
    path: "/v1/treasury/outbound_transfers",
    params: params,
    opts: opts
  )
end

.object_nameObject



16
17
18
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 16

def self.object_name
  "treasury.outbound_transfer"
end

Instance Method Details

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

An OutboundTransfer can be canceled if the funds have not yet been paid out.



273
274
275
276
277
278
279
280
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 273

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

#test_helpersObject



312
313
314
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 312

def test_helpers
  TestHelpers.new(self)
end