# The Outbound Payment object

### The Outbound Payment object

```json
{
  "id": "obp_1MtaD72eZvKYlo2Cu5d5S1kX",
  "object": "treasury.outbound_payment",
  "amount": 10000,
  "cancelable": false,
  "created": 1680716009,
  "currency": "usd",
  "customer": "cus_4QFOF3xrvBT2nU",
  "description": "OutboundPayment to a 3rd party",
  "destination_payment_method": "pm_1MtaD82eZvKYlo2CtGr4OxTt",
  "destination_payment_method_details": {
    "type": "us_bank_account",
    "destination": "ba_1MtaD62eZvKYlo2C8vwjm7bc"
  },
  "end_user_details": {
    "ip_address": null,
    "present": false
  },
  "expected_arrival_date": 1680716009,
  "financial_account": "fa_1MtaD72eZvKYlo2CYKM3DnUI",
  "hosted_regulatory_receipt_url": "https://payments.stripe.com/regulatory-receipt/CBQaFwoVYWNjdF8xMDMyRDgyZVp2S1lsbzJDKOrhtqEGMgYgdA-GrKk6NZNsf-FXPEqqbHm44fwJ57pNybbkweviYUDJGYFOw4f9cAqpfvPKQZ6y0S2C5DYyRwmDs_36",
  "livemode": false,
  "metadata": {},
  "returned_details": null,
  "statement_descriptor": "payment",
  "status": "processing",
  "status_transitions": {
    "canceled_at": null,
    "failed_at": null,
    "posted_at": null,
    "returned_at": null
  },
  "transaction": "trxn_1MtaD72eZvKYlo2CmUu4Vs5c"
}
```

## Attributes

- `id` (string)
  Unique identifier for the object.

- `object` (string)
  String representing the object’s type. Objects of the same type share the same value.

- `amount` (integer)
  Amount (in cents) transferred.

- `cancelable` (boolean)
  Returns `true` if the object can be canceled, and `false` otherwise.

- `created` (timestamp)
  Time at which the object was created. Measured in seconds since the Unix epoch.

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

- `customer` (string, nullable)
  ID of the [customer](https://docs.stripe.com/docs/api/customers.md) to whom an OutboundPayment is sent.

- `description` (string, nullable)
  An arbitrary string attached to the object. Often useful for displaying to users.

- `destination_payment_method` (string, nullable)
  The PaymentMethod via which an OutboundPayment is sent. This field can be empty if the OutboundPayment was created using `destination_payment_method_data`.

- [`destination_payment_method_details`](https://docs.stripe.com/api/treasury/outbound_payments/object.md?query=destination_payment_method_details) (object, nullable)
  Details about the PaymentMethod for an OutboundPayment.

- [`end_user_details`](https://docs.stripe.com/api/treasury/outbound_payments/object.md?query=end_user_details) (object, nullable)
  Details about the end user.

- `expected_arrival_date` (timestamp)
  The date when funds are expected to arrive in the destination account.

- `financial_account` (string)
  The FinancialAccount that funds were pulled from.

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

- `livemode` (boolean)
  If the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`.

- `metadata` (map)
  Set of [key-value pairs](https://docs.stripe.com/docs/api/metadata.md) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.

- `purpose` (enum, nullable)
  The purpose of the OutboundPayment, if applicable.
Possible enum values:
  - `payroll`
    The purpose of the OutboundPayment is payroll.

- [`returned_details`](https://docs.stripe.com/api/treasury/outbound_payments/object.md?query=returned_details) (object, nullable)
  Details about a returned OutboundPayment. Only set when the status is `returned`.

- `statement_descriptor` (string)
  The description that appears on the receiving end for an OutboundPayment (for example, bank statement for external bank transfer).

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

- [`status_transitions`](https://docs.stripe.com/api/treasury/outbound_payments/object.md?query=status_transitions) (object)
  Hash containing timestamps of when the object transitioned to a particular `status`.

- [`tracking_details`](https://docs.stripe.com/api/treasury/outbound_payments/object.md?query=tracking_details) (object, nullable)
  Details about network-specific tracking information if available.

- `transaction` (string, expandable (can be expanded into an object with the `expand` request parameter))
  The Transaction associated with this object.
