---
title: "Test mode: Create a ReceivedDebit"
method: POST
path: "/v1/test_helpers/treasury/received_debits"
---

# Test mode: Create a ReceivedDebit

`POST /v1/test_helpers/treasury/received_debits`

Use this endpoint to simulate a test mode ReceivedDebit initiated by a third party. In live mode, you can’t directly create ReceivedDebits initiated by third parties.

## Response `200`

Successful response.

- TreasuryReceivedDebit — ReceivedDebits represent funds pulled from a [FinancialAccount](https://api.stripe.com#financial_accounts). These are not initiated from the FinancialAccount.
  - `amount` integer, required — Amount (in cents) transferred.
  - `created` integer, required — Time at which the object was created. Measured in seconds since the Unix epoch.
  - `currency` string, currency, required — Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
  - `description` string, required — An arbitrary string attached to the object. Often useful for displaying to users.
  - `failure_code` 'account_closed' | 'account_frozen' | 'insufficient_funds' | 'international_transaction' | 'other', nullable — Reason for the failure. A ReceivedDebit might fail because the FinancialAccount doesn't have sufficient funds, is closed, or is frozen.
  - `financial_account` string, nullable — The FinancialAccount that funds were pulled from.
  - `hosted_regulatory_receipt_url` string, nullable — A [hosted transaction receipt](https://docs.stripe.com/treasury/moving-money/regulatory-receipts) URL that is provided when money movement is considered regulated under Stripe's money transmission licenses.
  - `id` string, required — Unique identifier for the object.
  - `initiating_payment_method_details` TreasurySharedResourceInitiatingPaymentMethodDetailsInitiatingPaymentMethodDetails
    - `balance` 'payments' — Set when `type` is `balance`.
    - `billing_details` TreasurySharedResourceBillingDetails, required
      - `address` Address, required
        - `city` string, nullable — City, district, suburb, town, or village.
        - `country` string, nullable — Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
        - `line1` string, nullable — Address line 1, such as the street, PO Box, or company name.
        - `line2` string, nullable — Address line 2, such as the apartment, suite, unit, or building.
        - `postal_code` string, nullable — ZIP or postal code.
        - `state` string, nullable — State, county, province, or region ([ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2)).
      - `email` string, nullable — Email address.
      - `name` string, nullable — Full name.
    - `financial_account` ReceivedPaymentMethodDetailsFinancialAccount
      - `id` string, required — The FinancialAccount ID.
      - `network` 'stripe', required — The rails the ReceivedCredit was sent over. A FinancialAccount can only send funds over `stripe`.
    - `issuing_card` string — Set when `type` is `issuing_card`. This is an [Issuing Card](https://api.stripe.com#issuing_cards) ID.
    - `type` 'balance' | 'financial_account' | 'issuing_card' | 'stripe' | 'us_bank_account', required — Polymorphic type matching the originating money movement's source. This can be an external account, a Stripe balance, or a FinancialAccount.
    - `us_bank_account` TreasurySharedResourceInitiatingPaymentMethodDetailsUsBankAccount
      - `bank_name` string, nullable — Bank name.
      - `last4` string, nullable — The last four digits of the bank account number.
      - `routing_number` string, nullable — The routing number for the bank account.
  - `linked_flows` TreasuryReceivedDebitsResourceLinkedFlows, required
    - `debit_reversal` string, nullable — The DebitReversal created as a result of this ReceivedDebit being reversed.
    - `inbound_transfer` string, nullable — Set if the ReceivedDebit is associated with an InboundTransfer's return of funds.
    - `issuing_authorization` string, nullable — Set if the ReceivedDebit was created due to an [Issuing Authorization](https://api.stripe.com#issuing_authorizations) object.
    - `issuing_transaction` string, nullable — Set if the ReceivedDebit is also viewable as an [Issuing Dispute](https://api.stripe.com#issuing_disputes) object.
    - `payout` string, nullable — Set if the ReceivedDebit was created due to a [Payout](https://api.stripe.com#payouts) object.
    - `topup` string, nullable — Set if the ReceivedDebit was created due to a [Topup](https://api.stripe.com#topups) object.
  - `livemode` boolean, required — If the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`.
  - `network` 'ach' | 'card' | 'stripe', required — The network used for the ReceivedDebit.
  - `object` 'treasury.received_debit', required — String representing the object's type. Objects of the same type share the same value.
  - `reversal_details` TreasuryReceivedDebitsResourceReversalDetails
    - `deadline` integer, nullable — Time before which a ReceivedDebit can be reversed.
    - `restricted_reason` 'already_reversed' | 'deadline_passed' | 'network_restricted' | 'other' | 'source_flow_restricted', nullable — Set if a ReceivedDebit can't be reversed.
  - `status` 'failed' | 'succeeded', required — Status of the ReceivedDebit. ReceivedDebits are created with a status of either `succeeded` (approved) or `failed` (declined). The failure reason can be found under the `failure_code`.
  - `transaction` union — The Transaction associated with this object.
    - string
    - TreasuryTransaction — Transactions represent changes to a [FinancialAccount's](https://api.stripe.com#financial_accounts) balance.
      - `amount` integer, required — Amount (in cents) transferred.
      - `balance_impact` TreasuryTransactionsResourceBalanceImpact, required — Change to a FinancialAccount's balance
        - `cash` integer, required — The change made to funds the user can spend right now.
        - `inbound_pending` integer, required — The change made to funds that are not spendable yet, but will become available at a later time.
        - `outbound_pending` integer, required — The change made to funds in the account, but not spendable because they are being held for pending outbound flows.
      - `created` integer, required — Time at which the object was created. Measured in seconds since the Unix epoch.
      - `currency` string, currency, required — Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
      - `description` string, required — An arbitrary string attached to the object. Often useful for displaying to users.
      - `entries` object, nullable — A list of TransactionEntries that are part of this Transaction. This cannot be expanded in any list endpoints.
        - `data` TreasuryTransactionEntry[], required — Details about each object.
          - `balance_impact` TreasuryTransactionsResourceBalanceImpact, required — Change to a FinancialAccount's balance
            - `cash` integer, required — The change made to funds the user can spend right now.
            - `inbound_pending` integer, required — The change made to funds that are not spendable yet, but will become available at a later time.
            - `outbound_pending` integer, required — The change made to funds in the account, but not spendable because they are being held for pending outbound flows.
          - `created` integer, required — Time at which the object was created. Measured in seconds since the Unix epoch.
          - `currency` string, currency, required — Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
          - `effective_at` integer, required — When the TransactionEntry will impact the FinancialAccount's balance.
          - `financial_account` string, required — The FinancialAccount associated with this object.
          - `flow` string, nullable — Token of the flow associated with the TransactionEntry.
          - `flow_details` TreasuryTransactionsResourceFlowDetails
            - `credit_reversal` TreasuryCreditReversal — You can reverse some [ReceivedCredits](https://api.stripe.com#received_credits) depending on their network and source flow. Reversing a ReceivedCredit leads to the creation of a new object known as a CreditReversal.
              - …
            - `debit_reversal` TreasuryDebitReversal — You can reverse some [ReceivedDebits](https://api.stripe.com#received_debits) depending on their network and source flow. Reversing a ReceivedDebit leads to the creation of a new object known as a DebitReversal.
              - …
            - `inbound_transfer` TreasuryInboundTransfer — Use [InboundTransfers](https://docs.stripe.com/docs/treasury/moving-money/financial-accounts/into/inbound-transfers) to add funds to your [FinancialAccount](https://api.stripe.com#financial_accounts) via a PaymentMethod that is owned by you. The funds will be transferred via an ACH debit. Related guide: [Moving money with Treasury using InboundTransfer objects](https://docs.stripe.com/docs/treasury/moving-money/financial-accounts/into/inbound-transfers)
              - …
            - `issuing_authorization` IssuingAuthorization — When an [issued card](https://docs.stripe.com/issuing) is used to make a purchase, an Issuing `Authorization` object is created. [Authorizations](https://docs.stripe.com/issuing/purchases/authorizations) must be approved for the purchase to be completed successfully. Related guide: [Issued card authorizations](https://docs.stripe.com/issuing/purchases/authorizations)
              - …
            - `outbound_payment` TreasuryOutboundPayment — Use [OutboundPayments](https://docs.stripe.com/docs/treasury/moving-money/financial-accounts/out-of/outbound-payments) to send funds to another party's external bank account or [FinancialAccount](https://api.stripe.com#financial_accounts). To send money to an account belonging to the same user, use an [OutboundTransfer](https://api.stripe.com#outbound_transfers). Simulate OutboundPayment state changes with the `/v1/test_helpers/treasury/outbound_payments` endpoints. These methods can only be called on test mode objects. Related guide: [Moving money with Treasury using OutboundPayment objects](https://docs.stripe.com/docs/treasury/moving-money/financial-accounts/out-of/outbound-payments)
              - …
            - `outbound_transfer` TreasuryOutboundTransfer — Use [OutboundTransfers](https://docs.stripe.com/docs/treasury/moving-money/financial-accounts/out-of/outbound-transfers) to transfer funds from a [FinancialAccount](https://api.stripe.com#financial_accounts) to a PaymentMethod belonging to the same entity. To send funds to a different party, use [OutboundPayments](https://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](https://docs.stripe.com/docs/treasury/moving-money/financial-accounts/out-of/outbound-transfers)
              - …
            - `received_credit` TreasuryReceivedCredit — ReceivedCredits represent funds sent to a [FinancialAccount](https://api.stripe.com#financial_accounts) (for example, via ACH or wire). These money movements are not initiated from the FinancialAccount.
              - …
            - `received_debit` TreasuryReceivedDebit — recursive
            - `type` 'credit_reversal' | 'debit_reversal' | 'inbound_transfer' | 'issuing_authorization' | 'other' | 'outbound_payment' | 'outbound_transfer' | 'received_credit' | 'received_debit', required — Type of the flow that created the Transaction. Set to the same value as `flow_type`.
          - `flow_type` 'credit_reversal' | 'debit_reversal' | 'inbound_transfer' | 'issuing_authorization' | 'other' | 'outbound_payment' | 'outbound_transfer' | 'received_credit' | 'received_debit', required — Type of the flow associated with the TransactionEntry.
          - `id` string, required — Unique identifier for the object.
          - `livemode` boolean, required — If the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`.
          - `object` 'treasury.transaction_entry', required — String representing the object's type. Objects of the same type share the same value.
          - `transaction` union, required — The Transaction associated with this object.
            - string
            - TreasuryTransaction — recursive
          - `type` 'credit_reversal' | 'credit_reversal_posting' | 'debit_reversal' | 'inbound_transfer' | 'inbound_transfer_return' | 'issuing_authorization_hold' | 'issuing_authorization_release' | 'other' | 'outbound_payment' | 'outbound_payment_cancellation' | 'outbound_payment_failure' | 'outbound_payment_posting' | 'outbound_payment_return' | 'outbound_transfer' | 'outbound_transfer_cancellation' | 'outbound_transfer_failure' | 'outbound_transfer_posting' | 'outbound_transfer_return' | 'received_credit' | 'received_debit', required — The specific money movement that generated the TransactionEntry.
        - `has_more` boolean, required — True if this list has another page of items after this one that can be fetched.
        - `object` 'list', required — String representing the object's type. Objects of the same type share the same value. Always has the value `list`.
        - `url` string, required — The URL where this list can be accessed.
      - `financial_account` string, required — The FinancialAccount associated with this object.
      - `flow` string, nullable — ID of the flow that created the Transaction.
      - `flow_details` TreasuryTransactionsResourceFlowDetails
        - `credit_reversal` TreasuryCreditReversal — You can reverse some [ReceivedCredits](https://api.stripe.com#received_credits) depending on their network and source flow. Reversing a ReceivedCredit leads to the creation of a new object known as a CreditReversal.
          - `amount` integer, required — Amount (in cents) transferred.
          - `created` integer, required — Time at which the object was created. Measured in seconds since the Unix epoch.
          - `currency` string, currency, required — Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
          - `financial_account` string, required — The FinancialAccount to reverse funds from.
          - `hosted_regulatory_receipt_url` string, nullable — A [hosted transaction receipt](https://docs.stripe.com/treasury/moving-money/regulatory-receipts) URL that is provided when money movement is considered regulated under Stripe's money transmission licenses.
          - `id` string, required — Unique identifier for the object.
          - `livemode` boolean, required — If the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`.
          - `metadata` object, required — Set of [key-value pairs](https://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.
          - `network` 'ach' | 'stripe', required — The rails used to reverse the funds.
          - `object` 'treasury.credit_reversal', required — String representing the object's type. Objects of the same type share the same value.
          - `received_credit` string, required — The ReceivedCredit being reversed.
          - `status` 'canceled' | 'posted' | 'processing', required — Status of the CreditReversal
          - `status_transitions` TreasuryReceivedCreditsResourceStatusTransitions, required
            - `posted_at` integer, nullable — Timestamp describing when the CreditReversal changed status to `posted`
          - `transaction` union — The Transaction associated with this object.
            - string
            - TreasuryTransaction — recursive
        - `debit_reversal` TreasuryDebitReversal — You can reverse some [ReceivedDebits](https://api.stripe.com#received_debits) depending on their network and source flow. Reversing a ReceivedDebit leads to the creation of a new object known as a DebitReversal.
          - `amount` integer, required — Amount (in cents) transferred.
          - `created` integer, required — Time at which the object was created. Measured in seconds since the Unix epoch.
          - `currency` string, currency, required — Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
          - `financial_account` string, nullable — The FinancialAccount to reverse funds from.
          - `hosted_regulatory_receipt_url` string, nullable — A [hosted transaction receipt](https://docs.stripe.com/treasury/moving-money/regulatory-receipts) URL that is provided when money movement is considered regulated under Stripe's money transmission licenses.
          - `id` string, required — Unique identifier for the object.
          - `linked_flows` TreasuryReceivedDebitsResourceDebitReversalLinkedFlows
            - `issuing_dispute` string, nullable — Set if there is an Issuing dispute associated with the DebitReversal.
          - `livemode` boolean, required — If the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`.
          - `metadata` object, required — Set of [key-value pairs](https://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.
          - `network` 'ach' | 'card', required — The rails used to reverse the funds.
          - `object` 'treasury.debit_reversal', required — String representing the object's type. Objects of the same type share the same value.
          - `received_debit` string, required — The ReceivedDebit being reversed.
          - `status` 'failed' | 'processing' | 'succeeded', required — Status of the DebitReversal
          - `status_transitions` TreasuryReceivedDebitsResourceStatusTransitions, required
            - `completed_at` integer, nullable — Timestamp describing when the DebitReversal changed status to `completed`.
          - `transaction` union — The Transaction associated with this object.
            - string
            - TreasuryTransaction — recursive
        - `inbound_transfer` TreasuryInboundTransfer — Use [InboundTransfers](https://docs.stripe.com/docs/treasury/moving-money/financial-accounts/into/inbound-transfers) to add funds to your [FinancialAccount](https://api.stripe.com#financial_accounts) via a PaymentMethod that is owned by you. The funds will be transferred via an ACH debit. Related guide: [Moving money with Treasury using InboundTransfer objects](https://docs.stripe.com/docs/treasury/moving-money/financial-accounts/into/inbound-transfers)
          - `amount` integer, required — Amount (in cents) transferred.
          - `cancelable` boolean, required — Returns `true` if the InboundTransfer is able to be canceled.
          - `created` integer, required — Time at which the object was created. Measured in seconds since the Unix epoch.
          - `currency` string, currency, required — Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
          - `description` string, nullable — An arbitrary string attached to the object. Often useful for displaying to users.
          - `failure_details` TreasuryInboundTransfersResourceFailureDetails
            - `code` 'account_closed' | 'account_frozen' | 'bank_account_restricted' | 'bank_ownership_changed' | 'debit_not_authorized' | 'incorrect_account_holder_address' | 'incorrect_account_holder_name' | 'incorrect_account_holder_tax_id' | 'insufficient_funds' | 'invalid_account_number' | 'invalid_currency' | 'no_account' | 'other', required — Reason for the failure.
          - `financial_account` string, required — The FinancialAccount that received the funds.
          - `hosted_regulatory_receipt_url` string, nullable — A [hosted transaction receipt](https://docs.stripe.com/treasury/moving-money/regulatory-receipts) URL that is provided when money movement is considered regulated under Stripe's money transmission licenses.
          - `id` string, required — Unique identifier for the object.
          - `linked_flows` TreasuryInboundTransfersResourceInboundTransferResourceLinkedFlows, required
            - `received_debit` string, nullable — If funds for this flow were returned after the flow went to the `succeeded` state, this field contains a reference to the ReceivedDebit return.
          - `livemode` boolean, required — If the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`.
          - `metadata` object, required — Set of [key-value pairs](https://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.
          - `object` 'treasury.inbound_transfer', required — String representing the object's type. Objects of the same type share the same value.
          - `origin_payment_method` string, nullable — The origin payment method to be debited for an InboundTransfer.
          - `origin_payment_method_details` InboundTransfers
            - `billing_details` TreasurySharedResourceBillingDetails, required
              - …
            - `type` 'us_bank_account', required — The type of the payment method used in the InboundTransfer.
            - `us_bank_account` InboundTransfersPaymentMethodDetailsUsBankAccount
              - …
          - `returned` boolean, nullable — Returns `true` if the funds for an InboundTransfer were returned after the InboundTransfer went to the `succeeded` state.
          - `statement_descriptor` string, required — Statement descriptor shown when funds are debited from the source. Not all payment networks support `statement_descriptor`.
          - `status` 'canceled' | 'failed' | 'processing' | 'succeeded', required — Status of the InboundTransfer: `processing`, `succeeded`, `failed`, and `canceled`. An InboundTransfer is `processing` if it is created and pending. The status changes to `succeeded` once the funds have been "confirmed" and a `transaction` is created and posted. The status changes to `failed` if the transfer fails.
          - `status_transitions` TreasuryInboundTransfersResourceInboundTransferResourceStatusTransitions, required
            - `canceled_at` integer, nullable — Timestamp describing when an InboundTransfer changed status to `canceled`.
            - `failed_at` integer, nullable — Timestamp describing when an InboundTransfer changed status to `failed`.
            - `succeeded_at` integer, nullable — Timestamp describing when an InboundTransfer changed status to `succeeded`.
          - `transaction` union — The Transaction associated with this object.
            - string
            - TreasuryTransaction — recursive
        - `issuing_authorization` IssuingAuthorization — When an [issued card](https://docs.stripe.com/issuing) is used to make a purchase, an Issuing `Authorization` object is created. [Authorizations](https://docs.stripe.com/issuing/purchases/authorizations) must be approved for the purchase to be completed successfully. Related guide: [Issued card authorizations](https://docs.stripe.com/issuing/purchases/authorizations)
          - `amount` integer, required — The total amount that was authorized or rejected. This amount is in `currency` and in the [smallest currency unit](https://stripe.com/docs/currencies#zero-decimal). `amount` should be the same as `merchant_amount`, unless `currency` and `merchant_currency` are different.
          - `amount_details` IssuingAuthorizationAmountDetails
            - `atm_fee` integer, nullable — The fee charged by the ATM for the cash withdrawal.
            - `cashback_amount` integer, nullable — The amount of cash requested by the cardholder.
          - `approved` boolean, required — Whether the authorization has been approved.
          - `authorization_method` 'chip' | 'contactless' | 'keyed_in' | 'online' | 'swipe', required — How the card details were provided.
          - `balance_transactions` BalanceTransaction[], required — List of balance transactions associated with this authorization.
            - `amount` integer, required — Gross amount of this transaction (in cents (or local equivalent)). A positive value represents funds charged to another party, and a negative value represents funds sent to another party.
            - `available_on` integer, required — The date that the transaction's net funds become available in the Stripe balance.
            - `balance_type` 'issuing' | 'payments' | 'refund_and_dispute_prefunding' | 'risk_reserved', required — The balance that this transaction impacts.
            - `created` integer, required — Time at which the object was created. Measured in seconds since the Unix epoch.
            - `currency` string, currency, required — Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
            - `description` string, nullable — An arbitrary string attached to the object. Often useful for displaying to users.
            - `exchange_rate` number, nullable — If applicable, this transaction uses an exchange rate. If money converts from currency A to currency B, then the `amount` in currency A, multiplied by the `exchange_rate`, equals the `amount` in currency B. For example, if you charge a customer 10.00 EUR, the PaymentIntent's `amount` is `1000` and `currency` is `eur`. If this converts to 12.34 USD in your Stripe account, the BalanceTransaction's `amount` is `1234`, its `currency` is `usd`, and the `exchange_rate` is `1.234`.
            - `fee` integer, required — Fees (in cents (or local equivalent)) paid for this transaction. Represented as a positive integer when assessed.
            - `fee_details` Fee[], required — Detailed breakdown of fees (in cents (or local equivalent)) paid for this transaction.
              - …
            - `id` string, required — Unique identifier for the object.
            - `net` integer, required — Net impact to a Stripe balance (in cents (or local equivalent)). A positive value represents incrementing a Stripe balance, and a negative value decrementing a Stripe balance. You can calculate the net impact of a transaction on a balance by `amount` - `fee`
            - `object` 'balance_transaction', required — String representing the object's type. Objects of the same type share the same value.
            - `reporting_category` string, required — Learn more about how [reporting categories](https://stripe.com/docs/reports/reporting-categories) can help you understand balance transactions from an accounting perspective.
            - `source` union — This transaction relates to the Stripe object.
              - …
            - `status` string, required — The transaction's net funds status in the Stripe balance, which are either `available` or `pending`.
            - `type` 'adjustment' | 'advance' | 'advance_funding' | 'anticipation_repayment' | 'application_fee' | 'application_fee_refund' | 'charge' | 'climate_order_purchase' | 'climate_order_refund' | 'connect_collection_transfer' | 'contribution' | 'fee_credit_funding' | 'inbound_transfer' | 'inbound_transfer_reversal' | 'issuing_authorization_hold' | 'issuing_authorization_release' | 'issuing_dispute' | 'issuing_transaction' | 'obligation_outbound' | 'obligation_reversal_inbound' | 'payment' | 'payment_failure_refund' | 'payment_network_reserve_hold' | 'payment_network_reserve_release' | 'payment_refund' | 'payment_reversal' | 'payment_unreconciled' | 'payout' | 'payout_cancel' | 'payout_failure' | 'payout_minimum_balance_hold' | 'payout_minimum_balance_release' | 'refund' | 'refund_failure' | 'reserve_hold' | 'reserve_release' | 'reserve_transaction' | 'reserved_funds' | 'stripe_balance_payment_debit' | 'stripe_balance_payment_debit_reversal' | 'stripe_fee' | 'stripe_fx_fee' | 'tax_fee' | 'tax_fund' | 'topup' | 'topup_reversal' | 'transfer' | 'transfer_cancel' | 'transfer_failure' | 'transfer_refund', required — Transaction type: `tax_fund`, `adjustment`, `advance`, `advance_funding`, `anticipation_repayment`, `application_fee`, `application_fee_refund`, `charge`, `climate_order_purchase`, `climate_order_refund`, `connect_collection_transfer`, `contribution`, `inbound_transfer`, `inbound_transfer_reversal`, `issuing_authorization_hold`, `issuing_authorization_release`, `issuing_dispute`, `issuing_transaction`, `obligation_outbound`, `obligation_reversal_inbound`, `payment`, `payment_failure_refund`, `payment_network_reserve_hold`, `payment_network_reserve_release`, `payment_refund`, `payment_reversal`, `payment_unreconciled`, `payout`, `payout_cancel`, `payout_failure`, `payout_minimum_balance_hold`, `payout_minimum_balance_release`, `refund`, `refund_failure`, `reserve_transaction`, `reserved_funds`, `reserve_hold`, `reserve_release`, `stripe_fee`, `stripe_fx_fee`, `stripe_balance_payment_debit`, `stripe_balance_payment_debit_reversal`, `tax_fee`, `topup`, `topup_reversal`, `transfer`, `transfer_cancel`, `transfer_failure`, `transfer_refund`, or `fee_credit_funding`. Learn more about [balance transaction types and what they represent](https://stripe.com/docs/reports/balance-transaction-types). To classify transactions for accounting purposes, consider `reporting_category` instead.
          - `card` IssuingCard, required — You can [create physical or virtual cards](https://docs.stripe.com/issuing) that are issued to cardholders.
            - `brand` string, required — The brand of the card.
            - `cancellation_reason` 'design_rejected' | 'fulfillment_error' | 'lost' | 'stolen', nullable — The reason why the card was canceled.
            - `cardholder` IssuingCardholder, required — An Issuing `Cardholder` object represents an individual or business entity who is [issued](https://docs.stripe.com/issuing) cards. Related guide: [How to create a cardholder](https://docs.stripe.com/issuing/cards/virtual/issue-cards#create-cardholder)
              - …
            - `created` integer, required — Time at which the object was created. Measured in seconds since the Unix epoch.
            - `currency` string, currency, required — Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Supported currencies are `usd` in the US, `eur` in the EU, and `gbp` in the UK.
            - `cvc` string — The card's CVC. For security reasons, this is only available for virtual cards, and will be omitted unless you explicitly request it with [the `expand` parameter](https://docs.stripe.com/api/expanding_objects). Additionally, it's only available via the ["Retrieve a card" endpoint](https://docs.stripe.com/api/issuing/cards/retrieve), not via "List all cards" or any other endpoint.
            - `exp_month` integer, required — The expiration month of the card.
            - `exp_year` integer, required — The expiration year of the card.
            - `financial_account` string, nullable — The financial account this card is attached to.
            - `id` string, required — Unique identifier for the object.
            - `last4` string, required — The last 4 digits of the card number.
            - `latest_fraud_warning` IssuingCardFraudWarning
              - …
            - `lifecycle_controls` IssuingCardLifecycleControls
              - …
            - `livemode` boolean, required — If the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`.
            - `metadata` object, required — Set of [key-value pairs](https://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.
            - `number` string — The full unredacted card number. For security reasons, this is only available for virtual cards, and will be omitted unless you explicitly request it with [the `expand` parameter](https://docs.stripe.com/api/expanding_objects). Additionally, it's only available via the ["Retrieve a card" endpoint](https://docs.stripe.com/api/issuing/cards/retrieve), not via "List all cards" or any other endpoint.
            - `object` 'issuing.card', required — String representing the object's type. Objects of the same type share the same value.
            - `personalization_design` union — The personalization design object belonging to this card.
              - …
            - `replaced_by` union — The latest card that replaces this card, if any.
              - …
            - `replacement_for` union — The card this card replaces, if any.
              - …
            - `replacement_reason` 'damaged' | 'expired' | 'fulfillment_error' | 'lost' | 'stolen', nullable — The reason why the previous card needed to be replaced.
            - `second_line` string, nullable — Text separate from cardholder name, printed on the card.
            - `shipping` IssuingCardShipping
              - …
            - `spending_controls` IssuingCardAuthorizationControls, required
              - …
            - `status` 'active' | 'canceled' | 'inactive', required — Whether authorizations can be approved on this card. May be blocked from activating cards depending on past-due Cardholder requirements. Defaults to `inactive`.
            - `type` 'physical' | 'virtual', required — The type of the card.
            - `wallets` IssuingCardWallets
              - …
          - `card_presence` 'not_present' | 'present', nullable — Whether the card was present at the point of sale for the authorization.
          - `cardholder` union — The cardholder to whom this authorization belongs.
            - string
            - IssuingCardholder — An Issuing `Cardholder` object represents an individual or business entity who is [issued](https://docs.stripe.com/issuing) cards. Related guide: [How to create a cardholder](https://docs.stripe.com/issuing/cards/virtual/issue-cards#create-cardholder)
              - …
          - `created` integer, required — Time at which the object was created. Measured in seconds since the Unix epoch.
          - `currency` string, currency, required — The currency of the cardholder. This currency can be different from the currency presented at authorization and the `merchant_currency` field on this authorization. Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
          - `fleet` IssuingAuthorizationFleetData
            - `cardholder_prompt_data` IssuingAuthorizationFleetCardholderPromptData
              - …
            - `purchase_type` 'fuel_and_non_fuel_purchase' | 'fuel_purchase' | 'non_fuel_purchase', nullable — The type of purchase.
            - `reported_breakdown` IssuingAuthorizationFleetReportedBreakdown
              - …
            - `service_type` 'full_service' | 'non_fuel_transaction' | 'self_service', nullable — The type of fuel service.
          - `fraud_challenges` IssuingAuthorizationFraudChallenge[], nullable — Fraud challenges sent to the cardholder, if this authorization was declined for fraud risk reasons.
            - `channel` 'sms', required — The method by which the fraud challenge was delivered to the cardholder.
            - `status` 'expired' | 'pending' | 'rejected' | 'undeliverable' | 'verified', required — The status of the fraud challenge.
            - `undeliverable_reason` 'no_phone_number' | 'unsupported_phone_number', nullable — If the challenge is not deliverable, the reason why.
          - `fuel` IssuingAuthorizationFuelData
            - `industry_product_code` string, nullable — [Conexxus Payment System Product Code](https://www.conexxus.org/conexxus-payment-system-product-codes) identifying the primary fuel product purchased.
            - `quantity_decimal` string, decimal, nullable — The quantity of `unit`s of fuel that was dispensed, represented as a decimal string with at most 12 decimal places.
            - `type` 'diesel' | 'other' | 'unleaded_plus' | 'unleaded_regular' | 'unleaded_super', nullable — The type of fuel that was purchased.
            - `unit` 'charging_minute' | 'imperial_gallon' | 'kilogram' | 'kilowatt_hour' | 'liter' | 'other' | 'pound' | 'us_gallon', nullable — The units for `quantity_decimal`.
            - `unit_cost_decimal` string, decimal, nullable — The cost in cents per each unit of fuel, represented as a decimal string with at most 12 decimal places.
          - `id` string, required — Unique identifier for the object.
          - `livemode` boolean, required — If the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`.
          - `merchant_amount` integer, required — The total amount that was authorized or rejected. This amount is in the `merchant_currency` and in the [smallest currency unit](https://stripe.com/docs/currencies#zero-decimal). `merchant_amount` should be the same as `amount`, unless `merchant_currency` and `currency` are different.
          - `merchant_currency` string, currency, required — The local currency that was presented to the cardholder for the authorization. This currency can be different from the cardholder currency and the `currency` field on this authorization. Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
          - `merchant_data` IssuingAuthorizationMerchantData, required
            - `category` string, required — A categorization of the seller's type of business. See our [merchant categories guide](https://docs.stripe.com/issuing/merchant-categories) for a list of possible values.
            - `category_code` string, required — The merchant category code for the seller’s business
            - `city` string, nullable — City where the seller is located
            - `country` string, nullable — Country where the seller is located
            - `name` string, nullable — Name of the seller
            - `network_id` string, required — Identifier assigned to the seller by the card network. Different card networks may assign different network_id fields to the same merchant.
            - `postal_code` string, nullable — Postal code where the seller is located
            - `state` string, nullable — State where the seller is located
            - `tax_id` string, nullable — The seller's tax identification number. Currently populated for French merchants only.
            - `terminal_id` string, nullable — An ID assigned by the seller to the location of the sale.
            - `url` string, nullable — URL provided by the merchant on a 3DS request
          - `metadata` object, required — Set of [key-value pairs](https://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.
          - `network_data` IssuingAuthorizationNetworkData
            - `acquiring_institution_id` string, nullable — Identifier assigned to the acquirer by the card network. Sometimes this value is not provided by the network; in this case, the value will be `null`.
            - `system_trace_audit_number` string, nullable — The System Trace Audit Number (STAN) is a 6-digit identifier assigned by the acquirer. Prefer `network_data.transaction_id` if present, unless you have special requirements.
            - `transaction_id` string, nullable — Unique identifier for the authorization assigned by the card network used to match subsequent messages, disputes, and transactions.
          - `object` 'issuing.authorization', required — String representing the object's type. Objects of the same type share the same value.
          - `pending_request` IssuingAuthorizationPendingRequest
            - `amount` integer, required — The additional amount Stripe will hold if the authorization is approved, in the card's [currency](https://docs.stripe.com/api#issuing_authorization_object-pending-request-currency) and in the [smallest currency unit](https://docs.stripe.com/currencies#zero-decimal).
            - `amount_details` IssuingAuthorizationAmountDetails
              - …
            - `currency` string, currency, required — Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
            - `is_amount_controllable` boolean, required — If set `true`, you may provide [amount](https://docs.stripe.com/api/issuing/authorizations/approve#approve_issuing_authorization-amount) to control how much to hold for the authorization.
            - `merchant_amount` integer, required — The amount the merchant is requesting to be authorized in the `merchant_currency`. The amount is in the [smallest currency unit](https://docs.stripe.com/currencies#zero-decimal).
            - `merchant_currency` string, currency, required — The local currency the merchant is requesting to authorize.
            - `network_risk_score` integer, nullable — The card network's estimate of the likelihood that an authorization is fraudulent. Takes on values between 1 and 99.
          - `request_history` IssuingAuthorizationRequest[], required — History of every time a `pending_request` authorization was approved/declined, either by you directly or by Stripe (e.g. based on your spending_controls). If the merchant changes the authorization by performing an incremental authorization, you can look at this field to see the previous requests for the authorization. This field can be helpful in determining why a given authorization was approved/declined.
            - `amount` integer, required — The `pending_request.amount` at the time of the request, presented in your card's currency and in the [smallest currency unit](https://docs.stripe.com/currencies#zero-decimal). Stripe held this amount from your account to fund the authorization if the request was approved.
            - `amount_details` IssuingAuthorizationAmountDetails
              - …
            - `approved` boolean, required — Whether this request was approved.
            - `authorization_code` string, nullable — A code created by Stripe which is shared with the merchant to validate the authorization. This field will be populated if the authorization message was approved. The code typically starts with the letter "S", followed by a six-digit number. For example, "S498162". Please note that the code is not guaranteed to be unique across authorizations.
            - `created` integer, required — Time at which the object was created. Measured in seconds since the Unix epoch.
            - `currency` string, required — Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
            - `merchant_amount` integer, required — The `pending_request.merchant_amount` at the time of the request, presented in the `merchant_currency` and in the [smallest currency unit](https://docs.stripe.com/currencies#zero-decimal).
            - `merchant_currency` string, required — The currency that was collected by the merchant and presented to the cardholder for the authorization. Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
            - `network_risk_score` integer, nullable — The card network's estimate of the likelihood that an authorization is fraudulent. Takes on values between 1 and 99.
            - `reason` 'account_disabled' | 'card_active' | 'card_canceled' | 'card_expired' | 'card_inactive' | 'cardholder_blocked' | 'cardholder_inactive' | 'cardholder_verification_required' | 'insecure_authorization_method' | 'insufficient_funds' | 'network_fallback' | 'not_allowed' | 'pin_blocked' | 'spending_controls' | 'stripe_internal_error' | 'suspected_fraud' | 'verification_failed' | 'webhook_approved' | 'webhook_declined' | 'webhook_error' | 'webhook_timeout', required — When an authorization is approved or declined by you or by Stripe, this field provides additional detail on the reason for the outcome.
            - `reason_message` string, nullable — If the `request_history.reason` is `webhook_error` because the direct webhook response is invalid (for example, parsing errors or missing parameters), we surface a more detailed error message via this field.
            - `requested_at` integer, nullable — Time when the card network received an authorization request from the acquirer in UTC. Referred to by networks as transmission time.
          - `status` 'closed' | 'expired' | 'pending' | 'reversed', required — The current status of the authorization in its lifecycle.
          - `token` union — [Token](https://docs.stripe.com/api/issuing/tokens/object) object used for this authorization. If a network token was not used for this authorization, this field will be null.
            - string
            - IssuingToken — An issuing token object is created when an issued card is added to a digital wallet. As a [card issuer](https://docs.stripe.com/issuing), you can [view and manage these tokens](https://docs.stripe.com/issuing/controls/token-management) through Stripe.
              - …
          - `transactions` IssuingTransaction[], required — List of [transactions](https://docs.stripe.com/api/issuing/transactions) associated with this authorization.
            - `amount` integer, required — The transaction amount, which will be reflected in your balance. This amount is in your currency and in the [smallest currency unit](https://docs.stripe.com/currencies#zero-decimal).
            - `amount_details` IssuingTransactionAmountDetails
              - …
            - `authorization` union — The `Authorization` object that led to this transaction.
              - …
            - `balance_transaction` union — ID of the [balance transaction](https://docs.stripe.com/api/balance_transactions) associated with this transaction.
              - …
            - `card` union, required — The card used to make this transaction.
              - …
            - `cardholder` union — The cardholder to whom this transaction belongs.
              - …
            - `created` integer, required — Time at which the object was created. Measured in seconds since the Unix epoch.
            - `currency` string, currency, required — Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
            - `dispute` union — If you've disputed the transaction, the ID of the dispute.
              - …
            - `id` string, required — Unique identifier for the object.
            - `livemode` boolean, required — If the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`.
            - `merchant_amount` integer, required — The amount that the merchant will receive, denominated in `merchant_currency` and in the [smallest currency unit](https://docs.stripe.com/currencies#zero-decimal). It will be different from `amount` if the merchant is taking payment in a different currency.
            - `merchant_currency` string, currency, required — The currency with which the merchant is taking payment.
            - `merchant_data` IssuingAuthorizationMerchantData, required
              - …
            - `metadata` object, required — Set of [key-value pairs](https://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.
            - `network_data` IssuingTransactionNetworkData
              - …
            - `object` 'issuing.transaction', required — String representing the object's type. Objects of the same type share the same value.
            - `purchase_details` IssuingTransactionPurchaseDetails
              - …
            - `token` union — [Token](https://docs.stripe.com/api/issuing/tokens/object) object used for this transaction. If a network token was not used for this transaction, this field will be null.
              - …
            - `treasury` IssuingTransactionTreasury
              - …
            - `type` 'capture' | 'refund', required — The nature of the transaction.
            - `wallet` 'apple_pay' | 'google_pay' | 'samsung_pay', nullable — The digital wallet used for this transaction. One of `apple_pay`, `google_pay`, or `samsung_pay`.
          - `treasury` IssuingAuthorizationTreasury
            - `received_credits` string[], required — The array of [ReceivedCredits](https://docs.stripe.com/api/treasury/received_credits) associated with this authorization
            - `received_debits` string[], required — The array of [ReceivedDebits](https://docs.stripe.com/api/treasury/received_debits) associated with this authorization
            - `transaction` string, nullable — The Treasury [Transaction](https://docs.stripe.com/api/treasury/transactions) associated with this authorization
          - `verification_data` IssuingAuthorizationVerificationData, required
            - `address_line1_check` 'match' | 'mismatch' | 'not_provided', required — Whether the cardholder provided an address first line and if it matched the cardholder’s `billing.address.line1`.
            - `address_postal_code_check` 'match' | 'mismatch' | 'not_provided', required — Whether the cardholder provided a postal code and if it matched the cardholder’s `billing.address.postal_code`.
            - `authentication_exemption` IssuingAuthorizationAuthenticationExemption
              - …
            - `cvc_check` 'match' | 'mismatch' | 'not_provided', required — Whether the cardholder provided a CVC and if it matched Stripe’s record.
            - `expiry_check` 'match' | 'mismatch' | 'not_provided', required — Whether the cardholder provided an expiry date and if it matched Stripe’s record.
            - `postal_code` string, nullable — The postal code submitted as part of the authorization used for postal code verification.
            - `three_d_secure` IssuingAuthorizationThreeDSecure
              - …
          - `verified_by_fraud_challenge` boolean, nullable — Whether the authorization bypassed fraud risk checks because the cardholder has previously completed a fraud challenge on a similar high-risk authorization from the same merchant.
          - `wallet` string, nullable — The digital wallet used for this transaction. One of `apple_pay`, `google_pay`, or `samsung_pay`. Will populate as `null` when no digital wallet was utilized.
        - `outbound_payment` TreasuryOutboundPayment — Use [OutboundPayments](https://docs.stripe.com/docs/treasury/moving-money/financial-accounts/out-of/outbound-payments) to send funds to another party's external bank account or [FinancialAccount](https://api.stripe.com#financial_accounts). To send money to an account belonging to the same user, use an [OutboundTransfer](https://api.stripe.com#outbound_transfers). Simulate OutboundPayment state changes with the `/v1/test_helpers/treasury/outbound_payments` endpoints. These methods can only be called on test mode objects. Related guide: [Moving money with Treasury using OutboundPayment objects](https://docs.stripe.com/docs/treasury/moving-money/financial-accounts/out-of/outbound-payments)
          - `amount` integer, required — Amount (in cents) transferred.
          - `cancelable` boolean, required — Returns `true` if the object can be canceled, and `false` otherwise.
          - `created` integer, required — Time at which the object was created. Measured in seconds since the Unix epoch.
          - `currency` string, currency, required — Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
          - `customer` string, nullable — ID of the [customer](https://docs.stripe.com/api/customers) 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` OutboundPaymentsPaymentMethodDetails
            - `billing_details` TreasurySharedResourceBillingDetails, required
              - …
            - `financial_account` OutboundPaymentsPaymentMethodDetailsFinancialAccount
              - …
            - `type` 'financial_account' | 'us_bank_account', required — The type of the payment method used in the OutboundPayment.
            - `us_bank_account` OutboundPaymentsPaymentMethodDetailsUsBankAccount
              - …
          - `end_user_details` TreasuryOutboundPaymentsResourceOutboundPaymentResourceEndUserDetails
            - `ip_address` string, nullable — IP address of the user initiating the OutboundPayment. Set if `present` is set to `true`. IP address collection is required for risk and compliance reasons. This will be used to help determine if the OutboundPayment is authorized or should be blocked.
            - `present` boolean, required — `true` if the OutboundPayment creation request is being made on behalf of an end user by a platform. Otherwise, `false`.
          - `expected_arrival_date` integer, required — The date when funds are expected to arrive in the destination account.
          - `financial_account` string, required — The FinancialAccount that funds were pulled from.
          - `hosted_regulatory_receipt_url` string, nullable — A [hosted transaction receipt](https://docs.stripe.com/treasury/moving-money/regulatory-receipts) URL that is provided when money movement is considered regulated under Stripe's money transmission licenses.
          - `id` string, required — Unique identifier for the object.
          - `livemode` boolean, required — If the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`.
          - `metadata` object, required — Set of [key-value pairs](https://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.
          - `object` 'treasury.outbound_payment', required — String representing the object's type. Objects of the same type share the same value.
          - `returned_details` TreasuryOutboundPaymentsResourceReturnedStatus
            - `code` 'account_closed' | 'account_frozen' | 'bank_account_restricted' | 'bank_ownership_changed' | 'declined' | 'incorrect_account_holder_name' | 'invalid_account_number' | 'invalid_currency' | 'no_account' | 'other', required — Reason for the return.
            - `transaction` union, required — The Transaction associated with this object.
              - …
          - `statement_descriptor` string, required — The description that appears on the receiving end for an OutboundPayment (for example, bank statement for external bank transfer).
          - `status` 'canceled' | 'failed' | 'posted' | 'processing' | 'returned', required — 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` TreasuryOutboundPaymentsResourceOutboundPaymentResourceStatusTransitions, required
            - `canceled_at` integer, nullable — Timestamp describing when an OutboundPayment changed status to `canceled`.
            - `failed_at` integer, nullable — Timestamp describing when an OutboundPayment changed status to `failed`.
            - `posted_at` integer, nullable — Timestamp describing when an OutboundPayment changed status to `posted`.
            - `returned_at` integer, nullable — Timestamp describing when an OutboundPayment changed status to `returned`.
          - `tracking_details` TreasuryOutboundPaymentsResourceOutboundPaymentResourceTrackingDetails
            - `ach` TreasuryOutboundPaymentsResourceAchTrackingDetails
              - …
            - `type` 'ach' | 'us_domestic_wire', required — The US bank account network used to send funds.
            - `us_domestic_wire` TreasuryOutboundPaymentsResourceUsDomesticWireTrackingDetails
              - …
          - `transaction` union, required — The Transaction associated with this object.
            - string
            - TreasuryTransaction — recursive
        - `outbound_transfer` TreasuryOutboundTransfer — Use [OutboundTransfers](https://docs.stripe.com/docs/treasury/moving-money/financial-accounts/out-of/outbound-transfers) to transfer funds from a [FinancialAccount](https://api.stripe.com#financial_accounts) to a PaymentMethod belonging to the same entity. To send funds to a different party, use [OutboundPayments](https://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](https://docs.stripe.com/docs/treasury/moving-money/financial-accounts/out-of/outbound-transfers)
          - `amount` integer, required — Amount (in cents) transferred.
          - `cancelable` boolean, required — Returns `true` if the object can be canceled, and `false` otherwise.
          - `created` integer, required — Time at which the object was created. Measured in seconds since the Unix epoch.
          - `currency` string, currency, required — Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
          - `description` string, nullable — An arbitrary string attached to the object. Often useful for displaying to users.
          - `destination_payment_method` string, nullable — The PaymentMethod used as the payment instrument for an OutboundTransfer.
          - `destination_payment_method_details` OutboundTransfersPaymentMethodDetails, required
            - `billing_details` TreasurySharedResourceBillingDetails, required
              - …
            - `financial_account` OutboundTransfersPaymentMethodDetailsFinancialAccount
              - …
            - `type` 'financial_account' | 'us_bank_account', required — The type of the payment method used in the OutboundTransfer.
            - `us_bank_account` OutboundTransfersPaymentMethodDetailsUsBankAccount
              - …
          - `expected_arrival_date` integer, required — The date when funds are expected to arrive in the destination account.
          - `financial_account` string, required — The FinancialAccount that funds were pulled from.
          - `hosted_regulatory_receipt_url` string, nullable — A [hosted transaction receipt](https://docs.stripe.com/treasury/moving-money/regulatory-receipts) URL that is provided when money movement is considered regulated under Stripe's money transmission licenses.
          - `id` string, required — Unique identifier for the object.
          - `livemode` boolean, required — If the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`.
          - `metadata` object, required — Set of [key-value pairs](https://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.
          - `object` 'treasury.outbound_transfer', required — String representing the object's type. Objects of the same type share the same value.
          - `returned_details` TreasuryOutboundTransfersResourceReturnedDetails
            - `code` 'account_closed' | 'account_frozen' | 'bank_account_restricted' | 'bank_ownership_changed' | 'declined' | 'incorrect_account_holder_name' | 'invalid_account_number' | 'invalid_currency' | 'no_account' | 'other', required — Reason for the return.
            - `transaction` union, required — The Transaction associated with this object.
              - …
          - `statement_descriptor` string, required — Information about the OutboundTransfer to be sent to the recipient account.
          - `status` 'canceled' | 'failed' | 'posted' | 'processing' | 'returned', required — 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`.
          - `status_transitions` TreasuryOutboundTransfersResourceStatusTransitions, required
            - `canceled_at` integer, nullable — Timestamp describing when an OutboundTransfer changed status to `canceled`
            - `failed_at` integer, nullable — Timestamp describing when an OutboundTransfer changed status to `failed`
            - `posted_at` integer, nullable — Timestamp describing when an OutboundTransfer changed status to `posted`
            - `returned_at` integer, nullable — Timestamp describing when an OutboundTransfer changed status to `returned`
          - `tracking_details` TreasuryOutboundTransfersResourceOutboundTransferResourceTrackingDetails
            - `ach` TreasuryOutboundTransfersResourceAchTrackingDetails
              - …
            - `type` 'ach' | 'us_domestic_wire', required — The US bank account network used to send funds.
            - `us_domestic_wire` TreasuryOutboundTransfersResourceUsDomesticWireTrackingDetails
              - …
          - `transaction` union, required — The Transaction associated with this object.
            - string
            - TreasuryTransaction — recursive
        - `received_credit` TreasuryReceivedCredit — ReceivedCredits represent funds sent to a [FinancialAccount](https://api.stripe.com#financial_accounts) (for example, via ACH or wire). These money movements are not initiated from the FinancialAccount.
          - `amount` integer, required — Amount (in cents) transferred.
          - `created` integer, required — Time at which the object was created. Measured in seconds since the Unix epoch.
          - `currency` string, currency, required — Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
          - `description` string, required — An arbitrary string attached to the object. Often useful for displaying to users.
          - `failure_code` 'account_closed' | 'account_frozen' | 'international_transaction' | 'other', nullable — Reason for the failure. A ReceivedCredit might fail because the receiving FinancialAccount is closed or frozen.
          - `financial_account` string, nullable — The FinancialAccount that received the funds.
          - `hosted_regulatory_receipt_url` string, nullable — A [hosted transaction receipt](https://docs.stripe.com/treasury/moving-money/regulatory-receipts) URL that is provided when money movement is considered regulated under Stripe's money transmission licenses.
          - `id` string, required — Unique identifier for the object.
          - `initiating_payment_method_details` TreasurySharedResourceInitiatingPaymentMethodDetailsInitiatingPaymentMethodDetails, required
            - `balance` 'payments' — Set when `type` is `balance`.
            - `billing_details` TreasurySharedResourceBillingDetails, required
              - …
            - `financial_account` ReceivedPaymentMethodDetailsFinancialAccount
              - …
            - `issuing_card` string — Set when `type` is `issuing_card`. This is an [Issuing Card](https://api.stripe.com#issuing_cards) ID.
            - `type` 'balance' | 'financial_account' | 'issuing_card' | 'stripe' | 'us_bank_account', required — Polymorphic type matching the originating money movement's source. This can be an external account, a Stripe balance, or a FinancialAccount.
            - `us_bank_account` TreasurySharedResourceInitiatingPaymentMethodDetailsUsBankAccount
              - …
          - `linked_flows` TreasuryReceivedCreditsResourceLinkedFlows, required
            - `credit_reversal` string, nullable — The CreditReversal created as a result of this ReceivedCredit being reversed.
            - `issuing_authorization` string, nullable — Set if the ReceivedCredit was created due to an [Issuing Authorization](https://api.stripe.com#issuing_authorizations) object.
            - `issuing_transaction` string, nullable — Set if the ReceivedCredit is also viewable as an [Issuing transaction](https://api.stripe.com#issuing_transactions) object.
            - `source_flow` string, nullable — ID of the source flow. Set if `network` is `stripe` and the source flow is visible to the user. Examples of source flows include OutboundPayments, payouts, or CreditReversals.
            - `source_flow_details` TreasuryReceivedCreditsResourceSourceFlowsDetails
              - …
            - `source_flow_type` string, nullable — The type of flow that originated the ReceivedCredit (for example, `outbound_payment`).
          - `livemode` boolean, required — If the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`.
          - `network` 'ach' | 'card' | 'stripe' | 'us_domestic_wire', required — The rails used to send the funds.
          - `object` 'treasury.received_credit', required — String representing the object's type. Objects of the same type share the same value.
          - `reversal_details` TreasuryReceivedCreditsResourceReversalDetails
            - `deadline` integer, nullable — Time before which a ReceivedCredit can be reversed.
            - `restricted_reason` 'already_reversed' | 'deadline_passed' | 'network_restricted' | 'other' | 'source_flow_restricted', nullable — Set if a ReceivedCredit cannot be reversed.
          - `status` 'failed' | 'succeeded', required — Status of the ReceivedCredit. ReceivedCredits are created either `succeeded` (approved) or `failed` (declined). If a ReceivedCredit is declined, the failure reason can be found in the `failure_code` field.
          - `transaction` union — The Transaction associated with this object.
            - string
            - TreasuryTransaction — recursive
        - `received_debit` TreasuryReceivedDebit — recursive
        - `type` 'credit_reversal' | 'debit_reversal' | 'inbound_transfer' | 'issuing_authorization' | 'other' | 'outbound_payment' | 'outbound_transfer' | 'received_credit' | 'received_debit', required — Type of the flow that created the Transaction. Set to the same value as `flow_type`.
      - `flow_type` 'credit_reversal' | 'debit_reversal' | 'inbound_transfer' | 'issuing_authorization' | 'other' | 'outbound_payment' | 'outbound_transfer' | 'received_credit' | 'received_debit', required — Type of the flow that created the Transaction.
      - `id` string, required — Unique identifier for the object.
      - `livemode` boolean, required — If the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`.
      - `object` 'treasury.transaction', required — String representing the object's type. Objects of the same type share the same value.
      - `status` 'open' | 'posted' | 'void', required — Status of the Transaction.
      - `status_transitions` TreasuryTransactionsResourceAbstractTransactionResourceStatusTransitions, required
        - `posted_at` integer, nullable — Timestamp describing when the Transaction changed status to `posted`.
        - `void_at` integer, nullable — Timestamp describing when the Transaction changed status to `void`.

## Other responses

- `default` — Error response.

---

[API](https://skmtc.net/stripe/apis/stripe-api.md) · [All operations](https://skmtc.net/stripe/apis/stripe-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/stripe/stripe-api/versions/707de00b0616/schema)
