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](docs.stripe.com/docs/treasury/moving-money/financial-accounts/out-of/outbound-transfers) to transfer funds from a [FinancialAccount](api.stripe.com#financial_accounts) to a PaymentMethod belonging to the same entity. To send funds to a different party, use [OutboundPayments](api.stripe.com#outbound_payments) 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](docs.stripe.com/docs/treasury/moving-money/financial-accounts/out-of/outbound-transfers)

Defined Under Namespace

Classes: DestinationPaymentMethodDetails, 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?, #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.



203
204
205
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 203

def amount
  @amount
end

#cancelableObject (readonly)

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



205
206
207
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 205

def cancelable
  @cancelable
end

#createdObject (readonly)

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



207
208
209
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 207

def created
  @created
end

#currencyObject (readonly)

Three-letter [ISO currency code](www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](stripe.com/docs/currencies).



209
210
211
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 209

def currency
  @currency
end

#descriptionObject (readonly)

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



211
212
213
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 211

def description
  @description
end

#destination_payment_methodObject (readonly)

The PaymentMethod used as the payment instrument for an OutboundTransfer.



213
214
215
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 213

def destination_payment_method
  @destination_payment_method
end

#destination_payment_method_detailsObject (readonly)

Attribute for field destination_payment_method_details



215
216
217
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 215

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.



217
218
219
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 217

def expected_arrival_date
  @expected_arrival_date
end

#financial_accountObject (readonly)

The FinancialAccount that funds were pulled from.



219
220
221
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 219

def 
  
end

#hosted_regulatory_receipt_urlObject (readonly)

A [hosted transaction receipt](docs.stripe.com/treasury/moving-money/regulatory-receipts) URL that is provided when money movement is considered regulated under Stripe’s money transmission licenses.



221
222
223
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 221

def hosted_regulatory_receipt_url
  @hosted_regulatory_receipt_url
end

#idObject (readonly)

Unique identifier for the object.



223
224
225
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 223

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.



225
226
227
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 225

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.



227
228
229
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 227

def 
  
end

#objectObject (readonly)

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



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

def object
  @object
end

#returned_detailsObject (readonly)

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



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

def returned_details
  @returned_details
end

#statement_descriptorObject (readonly)

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



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

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.



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

def status
  @status
end

#status_transitionsObject (readonly)

Attribute for field status_transitions



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

def status_transitions
  @status_transitions
end

#tracking_detailsObject (readonly)

Details about network-specific tracking information if available.



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

def tracking_details
  @tracking_details
end

#transactionObject (readonly)

The Transaction associated with this object.



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

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.



254
255
256
257
258
259
260
261
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 254

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.



264
265
266
267
268
269
270
271
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 264

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

.field_remappingsObject



383
384
385
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 383

def self.field_remappings
  @field_remappings = {}
end

.inner_class_typesObject



374
375
376
377
378
379
380
381
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 374

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

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

Returns a list of OutboundTransfers sent from the specified FinancialAccount.



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

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.



244
245
246
247
248
249
250
251
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 244

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



283
284
285
# File 'lib/stripe/resources/treasury/outbound_transfer.rb', line 283

def test_helpers
  TestHelpers.new(self)
end