The OutboundTransfer object 

Money Management
Outbound Transfers
The OutboundTransfer object

Attributes

  • idstring

    Unique identifier for the OutboundTransfer.

  • objectstring, value is "v2.money_management.outbound_transfer"

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

  • amountobject

    The “presentment amount” for the OutboundTransfer.

    • amount.currencystring

      A lowercase alpha3 currency code like “usd”.

    • amount.valueinteger

      In minor units like 123 for 1.23 USD.

  • cancelableboolean

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

  • createdtimestamp

    Time at which the OutboundTransfer was created. Represented as a RFC 3339 date & time UTC value in millisecond precision, for example: 2022-09-18T13:22:18.123Z.

  • delivery_optionsnullable object

    Delivery options to be used to send the OutboundTransfer.

    • delivery_options.bank_accountnullable enum

      Method for bank account.

      Possible enum values
      automatic

      Method automatically selected by Stripe.

      local

      The group of local bank-transfer networks in the bank account’s country.

      wire

      The group of wire transfer networks in the bank account’s country.

  • descriptionnullable string

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

  • expected_arrival_datenullable timestamp

    The date when funds are expected to arrive in the payout method. This field is not set if the payout method is in a failed, canceled, or returned state. Represented as a RFC 3339 date & time UTC value in millisecond precision, for example: 2022-09-18T13:22:18.123Z.

  • fromobject

    The FinancialAccount that funds were pulled from.

    • from.debitedobject

      The monetary amount debited from the sender, only set on responses.

      • from.debited.currencystring

        A lowercase alpha3 currency code like “usd”.

      • from.debited.valueinteger

        In minor units like 123 for 1.23 USD.

    • from.financial_accountstring

      The FinancialAccount that funds were pulled from.

  • livemodeboolean

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

  • metadatanullable map

    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.

  • receipt_urlnullable string

    A link to the Stripe-hosted receipt for this OutboundTransfer. The receipt link remains active for 60 days from the OutboundTransfer creation date. After this period, the link will expire and the receipt url value will be null.

  • statement_descriptorstring

    The description that appears on the receiving end for an OutboundTransfer (for example, bank statement for external bank transfer).

  • statusenum

    Current status of the OutboundTransfer: processing, failed, posted, returned, canceled. An OutboundTransfer is processing if it has been created and is processing. 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 payout method, its status will change to returned.

    Possible enum values
    canceled

    A user canceled the OutboundTransfer before posting. Stripe returns the funds to the user by voiding the pending Transaction.

    failed

    The OutboundTransfer failed to confirm. Stripe returns the funds to the user by voiding the pending Transaction.

    posted

    The OutboundTransfer posted and funds have left the account. The underlying Transaction posts.

    processing

    The OutboundTransfer starting state. Funds are “held” by a pending Transaction (but are still part of the current balance). The OutboundTransfer might be cancelable by the user, depending on the value of the cancelable field.

    returned

    The OutboundTransfer failed to successfully arrive at the destination. Funds return to the user with a second posted Transaction attached to the same flow.

  • status_detailsnullable object

    Status details for an OutboundTransfer in a failed or returned state.

    • status_details.failednullable object

      The failed status reason.

      • status_details.failed.reasonenum

        The failed status reason.

        Possible enum values
        payout_method_declined

        The outbound flow to this payout method was declined.

        payout_method_does_not_exist

        Payout method used for this outbound flow does not exist.

        payout_method_expired

        Payout method used for this outbound flow expired.

        payout_method_unsupported

        Payout method used for this outbound flow is unsupported.

        payout_method_usage_frequency_limit_exceeded

        The usage frequency limit for this payout method was exceeded.

        unknown_failure

        Unknown failure.

    • status_details.returnednullable object

      The returned status reason.

      • status_details.returned.reasonenum

        The returned status reason.

        Possible enum values
        payout_method_canceled_by_customer

        The outbound flow to this payout method was canceled by customer.

        payout_method_closed

        Payout method account used for this outbound flow is closed.

        payout_method_currency_unsupported

        Currency is not supported by the payout method account.

        payout_method_does_not_exist

        Payout method account used for this outbound flow does not exist.

        payout_method_holder_address_incorrect

        Address on the payout method account is incorrect.

        payout_method_holder_details_incorrect

        The payout method account holder’s details are incorrect.

        payout_method_holder_name_incorrect

        Name on the payout method account is incorrect.

        payout_method_invalid_account_number

        The outbound flow to this payout method has an invalid account number.

        payout_method_restricted

        Payout method account used for this outbound flow is restricted.

        recalled

        The outbound flow to this payout method was recalled.

        Show 1 more
  • status_transitionsnullable object

    Hash containing timestamps of when the object transitioned to a particular status.

    • status_transitions.canceled_atnullable timestamp

      Timestamp describing when an OutboundTransfer changed status to canceled. Represented as a RFC 3339 date & time UTC value in millisecond precision, for example: 2022-09-18T13:22:18.123Z.

    • status_transitions.failed_atnullable timestamp

      Timestamp describing when an OutboundTransfer changed status to failed. Represented as a RFC 3339 date & time UTC value in millisecond precision, for example: 2022-09-18T13:22:18.123Z.

    • status_transitions.posted_atnullable timestamp

      Timestamp describing when an OutboundTransfer changed status to posted. Represented as a RFC 3339 date & time UTC value in millisecond precision, for example: 2022-09-18T13:22:18.123Z.

    • status_transitions.returned_atnullable timestamp

      Timestamp describing when an OutboundTransfer changed status to returned. Represented as a RFC 3339 date & time UTC value in millisecond precision, for example: 2022-09-18T13:22:18.123Z.

  • toobject

    To which payout method the OutboundTransfer was sent.

    • to.creditedobject

      The monetary amount being credited to the destination.

      • to.credited.currencystring

        A lowercase alpha3 currency code like “usd”.

      • to.credited.valueinteger

        In minor units like 123 for 1.23 USD.

    • to.payout_methodstring

      The payout method which the OutboundTransfer uses to send payout.

  • trace_idobjectPreview feature

    A unique identifier that can be used to track this OutboundTransfer with recipient bank. Banks might call this a “reference number” or something similar.

    • trace_id.statusenum

      Possible values are pending, supported, and unsupported. Initially set to pending, it changes to supported when the recipient bank provides a trace ID, or unsupported if the recipient bank doesn’t support it. Note that this status may not align with the OutboundPayment or OutboundTransfer status and can remain pending even after the payment or transfer is posted.

      Possible enum values
      pending

      Pending to receive TraceId information from recipient bank.

      supported

      TraceId is supported by the recipient bank.

      unsupported

      TraceId is not supported by the recipient bank.

    • trace_id.valuenullable string

      The trace ID value if trace_id.status is supported, otherwise empty.

The OutboundTransfer object
{
"id": "obt_test_65OAfZuGepEX92sRECO16NybHIZ4SQ3LORe4rpuNGDIDb6",
"object": "v2.money_management.outbound_transfer",
"from": {
"financial_account": "fa_test_65NybHaQx7KJxDc22rZ16NybHIZ4SQ3LORe4rpuNGDIXEO",
"debited": {
"value": 50,
"currency": "usd"
}
},
"to": {
"payout_method": "usba_test_61NyccB7UY8KzlWh916NybHIZ4SQ3LORe4rpuNGDIRWC",
"credited": {
"value": 50,
"currency": "usd"
}
},
"delivery_options": {
"bank_account": "automatic"
},
"amount": {
"value": 50,
"currency": "usd"
},
"statement_descriptor": "Stripe payout",
"cancelable": true,
"description": "Paying out Stripe earnings",
"status": "pending",
"status_transitions": {
"canceled_at": null,
"failed_at": null,
"posted_at": null,
"returned_at": null
},
"status_details": null,
"created": "2023-04-26T23:19:35.123Z",
"expected_arrival_date": "2023-04-28T00:00:00Z",
"receipt_url": "https://payments.stripe.com/transaction_receipt/CCMaIwohd2tzcF90ZXN0XzZOeWJISVo0U1EzTE9SZTRycHVOR0RJKJLjpqIGMgb4C6zLsmw6SJS1ua8HSKbV2I5kVA6XOZ553eVPu8d3RUAxIsLylBkQcU9X1Ljx2U3j33Or9GNxKKizf9YGvg1aDEohr4VnhlRVBZpF6maT0w",
"trace_id": {
"status": "processing",
"value": ""
}
}