Send microdeposits for verification v2

Core Resources
US Bank Accounts
Send microdeposits for verification

Send microdeposits in order to verify your US Bank Account so it is eligible to transfer funds. This will start the verification process and you must Confirm Microdeposits to successfully verify your US Bank Account.

Learn more about calling API v2 endpoints.

Parameters

  • idstringRequired

    The ID of the USBankAccount object.

Returns

Response attributes

  • idstring

    The ID of the USBankAccount object.

  • objectstring, value is "v2.core.vault.us_bank_account"

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

  • archivedboolean

    Whether this USBankAccount object was archived.

  • bank_account_typeenum

    The type of bank account (checking or savings).

    Possible enum values
    checking

    Checkings account.

    savings

    Savings account.

  • bank_namestring

    The name of the bank this bank account belongs to. This field is populated automatically by Stripe based on the routing number.

  • createdtimestamp

    Creation time of the object.

  • fedwire_routing_numbernullable string

    The fedwire routing number of the bank account.

  • financial_connections_accountnullable string

    The ID of the Financial Connections Account used to create the bank account.

  • last4string

    The last 4 digits of the account number.

  • livemodeboolean

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

  • routing_numbernullable string

    The ACH routing number of the bank account.

  • verificationobject

    The bank account verification details.

    • verification.microdeposit_verification_detailsnullable object

      The microdeposit verification details if the status is awaiting verification.

      • verification.microdeposit_verification_details.expirestimestamp

        Time when microdeposits will expire and have to be re-sent.

      • verification.microdeposit_verification_details.microdeposit_typeenum

        Microdeposit type can be amounts or descriptor_type.

      • verification.microdeposit_verification_details.senttimestamp

        Time when microdeposits were sent.

    • verification.statusenum

      The bank account verification status.

      Possible enum values
      awaiting_verification

      Verification of the bank account has been initiated and requires further action to be completed.

      unverified

      The bank account is unverified.

      verification_failed

      Verification of the bank account has failed.

      verified

      The bank account is verified.

Error Codes
400us_bank_account_microdeposits_failed_to_send

Returned when an attempt is made to confirm microdeposits before the microdeposits have been sent.

400us_bank_account_verification_failed

Returned when verification of a US bank account has failed, reaching a terminal failure state.

404not_found

The resource wasn’t found.

409idempotency_error

An idempotent retry occurred with different request parameters.

POST /v2/core/vault/us_bank_accounts/:id/send_microdeposits
curl -X POST https://api.stripe.com/v2/core/vault/us_bank_accounts/usba_test_61TTrNIGW0Kfu6Loe16TTnp50xSQQ5fFlwPErT7SSCmG/send_microdeposits \
-H "Authorization: Bearer sk_test_BQokikJ...2HlWgH4olfQ2sk_test_BQokikJOvBiI2HlWgH4olfQ2" \
-H "Stripe-Version: 2025-12-15.preview"
Response
{
"id": "usba_test_61TTrNIGW0Kfu6Loe16TTnp50xSQQ5fFlwPErT7SSCmG",
"object": "v2.core.vault.us_bank_account",
"archived": false,
"bank_account_type": "checking",
"bank_name": "Test Bank",
"created": "2025-10-21T00:27:12.940Z",
"fedwire_routing_number": null,
"last4": "6789",
"routing_number": "110000000",
"verification": {
"microdeposit_verification_details": {
"expires": "2025-11-02T15:34:05.000Z",
"microdeposit_type": "amounts",
"sent": "2025-10-23T15:34:05.708345413Z"
},
"status": "awaiting_verification"
},
"livemode": true
}