# External Bank Account Token

## uuid
required

## verification_method
string
enum
required
The verification method to set for the external bank account

- MICRO_DEPOSIT
- PRENOTE
- EXTERNALLY_VERIFIED

Allowed:
- `MICRO_DEPOSIT`
- `PRENOTE`
- `EXTERNALLY_VERIFIED`

## financial_account_token
uuid
The financial account token of the operating account to fund the micro deposits. Required when verification_method is MICRO_DEPOSIT or PRENOTE.

### 200 OK

object  
- **token**  
  - uuid  
  - required  
  A globally unique identifier for this record of an external bank account association. If a program links an external bank account to more than one end-user or to both the program and the end-user, then Lithic will return each record of the association

- **owner**  
  - string  
  - required  
  Legal Name of the business or individual who owns the external account. This will appear in statements

- **routing_number**  
  - string  
  - required  
  Routing Number

- **last_four**  
  - string  
  - required  
  The last 4 digits of the bank account. Derived by Lithic from the account number passed

- **name**  
  - string | null  
  The nickname for this External Bank Account

- **currency**  
  - string  
  - required  
  Currency of the external account (3-character alphabetic ISO 4217 code)

- **country**  
  - string  
  - required  
  The country that the bank account is located in using ISO 3166-1. We will only accept USA bank accounts e.g., USA

- **account_token**  
  - uuid | null  
  Indicates which Lithic account the external account is associated with. For external accounts that are associated with the program, the account_token field returned will be null

- **created**  
  - date-time  
  - required  
  An ISO 8601 string representing when this funding source was added to the Lithic account.

- **company_id**  
  - string | null  
  Optional field that helps identify bank accounts in receipts

- **dob**  
  - date | null  
  Date of Birth of the Individual that owns the external bank account

- **doing_business_as**  
  - string | null  
  Doing Business As

- **user_defined_id**  
  - string | null  
  User Defined ID

- **verification_failed_reason**  
  - string | null  
  Optional free text description of the reason for the failed verification. For ACH micro-deposits returned, this field will display the reason return code sent by the ACH network

- **verification_attempts**  
  - integer  
  - required  
  The number of attempts at verification

- **financial_account_token**  
  - uuid | null  
  The financial account token of the operating account to fund the micro deposits

- **type**  
  - string  
  - enum  
  - required  
  Account Type

- **owner_type**  
  - string  
  - enum  
  - required  
  Owner Type

- **state**  
  - string  
  - enum  
  - required  
  Account State

- **verification_state**  
  - string  
  - enum  
  - required  
  Verification State

- **address**  
  - null  
  External Bank Account Address

### 400 Bad Request
A parameter in the query given in the request does not match the valid queries for the endpoint.

### 401 Unauthorized  
| Reason for Error  | Description  |
| ---  | ---  |
| User has not been authenticated  | Invalid or missing API key  |
| API key is not active  | The API key used is no longer active  |
| Could not find API key  | The API key provided is not associated with any user  |
| Please provide API key in Authorization header  | The Authorization header is not in the request  |
| Please provide API key in the form Authorization: [api-key]  | The Authorization header is not formatted properly  |
| Insufficient privileges. Issuing API key required  | Write access requires an Issuing API key. Reach out  |
| Insufficient privileges to create virtual cards.  | Creating virtual cards requires an additional privilege  |

### 404 Not Found  
The specified resource was not found.

### 429 Too Many Requests  
Client has exceeded the number of allowed requests in a given time period. 
| Reason for Rate Limiting  | Description  |
| --- | --- |
| Rate limited, too many requests per second  | User has exceeded their per second rate limit  |
| Rate limited, reached daily limit  | User has exceeded their daily rate limit  |
| Rate limited, too many keys tried  | One IP has queried too many different API keys |

# Example Request
```bash
curl --request POST \
 --url https://sandbox.lithic.com/v1/external_bank_accounts/external_bank_account_token/set_verification_method \
 --header 'accept: application/json' \
 --header 'content-type: application/json' \
 --data '{
  "verification_method": "MICRO_DEPOSIT",
  "financial_account_token": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}'
```

# Example Response
```json
{
  "token": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "owner": "string",
  "routing_number": "string",
  "last_four": "string",
  "name": "string",
  "currency": "string",
  "country": "string",
  "account_token": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "created": "2026-07-18T00:25:30.684Z",
  "company_id": "string",
  "dob": "2026-07-18",
  "doing_business_as": "string",
  "user_defined_id": "string",
  "verification_failed_reason": "string",
  "verification_attempts": 0,
  "financial_account_token": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "type": "CHECKING",
  "verification_method": "MANUAL",
  "owner_type": "INDIVIDUAL",
  "state": "ENABLED",
  "verification_state": "PENDING",
  "address": {
    "address1": "string",
    "address2": "string",
    "city": "string",
    "state": "string",
    "postal_code": "string",
    "country": "string"
  }
}
```
