> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lyseis-pay.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Verify a Bank Account Name via POST /banks/resolve

> Look up a bank account holder's name by account number and bank code before sending a transfer or issuing a refund to confirm you have the right recipient.

Before sending funds to an account, use this endpoint to verify the account exists and retrieve the registered account holder's name. This lets you confirm the recipient's identity with your customer before committing to a transfer or refund, reducing the risk of sending funds to the wrong account.

```http theme={null}
POST https://sandbox.lyseis-pay.com/banks/resolve
```

**Headers**

| Header         | Value                         |
| -------------- | ----------------------------- |
| `X-Key-Id`     | Your merchant key ID          |
| `X-Timestamp`  | Unix timestamp of the request |
| `X-Signature`  | HMAC request signature        |
| `Content-Type` | `application/json`            |

## Request body

<ParamField body="bank" type="string" required>
  The bank code for the account you want to look up. Use `GET /banks` to retrieve a list of supported codes. See [List Banks](/api-reference/banks/list).
</ParamField>

<ParamField body="account" type="string" required>
  The bank account number to resolve.
</ParamField>

<ParamField body="currency" type="string" required>
  ISO 4217 currency code associated with the account (e.g. `NGN`).
</ParamField>

## Example request

```json theme={null}
{
  "bank": "058",
  "account": "0123456789",
  "currency": "NGN"
}
```

## Example response

```json theme={null}
{
  "status": "success",
  "data": {
    "bank_name": "Example Bank",
    "bank_code": "058",
    "account_number": "0123456789",
    "account_name": "Ada Lovelace"
  }
}
```

## Response fields

<ResponseField name="bank_name" type="string">
  Full display name of the bank.
</ResponseField>

<ResponseField name="bank_code" type="string">
  The bank code that was supplied in the request.
</ResponseField>

<ResponseField name="account_number" type="string">
  The account number that was supplied in the request.
</ResponseField>

<ResponseField name="account_name" type="string">
  The registered name of the account holder as returned by the bank. Display this to your customer for confirmation before proceeding with a transfer or refund.
</ResponseField>

## Recommended workflow

Use account resolution as the first step in any outbound payment flow:

<Steps>
  <Step title="Collect recipient details">
    Ask the customer for their bank code and account number.
  </Step>

  <Step title="Resolve the account">
    Call `POST /banks/resolve` and display the returned `account_name` to the customer for confirmation.
  </Step>

  <Step title="Get customer confirmation">
    Only proceed if the customer confirms the `account_name` matches the intended recipient.
  </Step>

  <Step title="Initialize the transfer or refund">
    Use the verified details to call `POST /disbursements/initialize` or `POST /refunds/initialize`.
  </Step>
</Steps>
