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

# Verify CLABEs

> Verify an account holder's information before sending them a full payout

Account verification allows you to verify bank accounts by sending micro-deposits (0.01 MXN) from your Fintoc account balance to the target account number. Fintoc will respond with the holder information resulting from the transaction receipt.

# Create an account verification

Account Verification creates a 0.01 MXN Transfer from your root `Account` to retrieve the target account holder's information. Since money will be moved from your account, a [JWS Signature](/v2023-11-15/docs/transfers/setting-up-jws-keys) will be required to complete the action.

```curl theme={null}
curl --request POST \
     --url https://api.fintoc.com/v2/account_verifications \
     --header 'Authorization: sk_test_9c8d8CeyBTx1VcJzuDgpm4H' \
     --header 'Fintoc-JWS-Signature: CNMaYaDGU3ZhFV1ve6p3sAdYXhEklej8DVIAMqIWCkpNmT6Jp7iigcndXwH5q3WQFHiswgIQU5-_-4rV3jKGptCROmEyWPW8_elhYH1apzAyjOjyZ55ygv37xKHzIFhixzAwmXlAv4pfD4lVelYWVNOSN7REA0QJeCy2vKdqZ5cjqCXQ1lkQUlzOE7dpuNoAkhAhAJJ8HaamFKy7Gl7uwmqbIr-dVYv21d_9O7mO26n0gy3zWXD2nJDxU5Mzl2pZd8-sFvUr9Kmp_YkeRMh4bSe0fr1Uc_YgkjpmYUyu7kaxRWTbAdJ3GwqWFMUDiyfhHdzvZPZyU4VkWreimoydMA' \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --data '
{
  "account_number": "012969100000000110"
}
'
```

When you request an Account Verification, you will get a response confirming the verification process has started by outputting an `account_verification` object in `pending` status. Note that the requested information is blank in the initial response. The response should look like this:

```json theme={null}
{
  "id": "accv_fdsjklsdjkls",
  "object": "account_verification",
  "status": "pending",
  "reason": null,
  "transfer_id": "tr_fdskjldasjkl",
  "counterparty": {
    "account_number": "012969100000000110",
    "holder_id": null, 
    "holder_name": null,
    "account_type": "clabe",
    "institution": {
      "id": "mx_banco_bbva",
      "name": "BBVA Mexico",
      "country": "mx" 
    }
  },
  "mode": "test",
  "receipt_url": null,
  "transaction_date": null
}
```

## Using our SDKs

Here's an example of how to verify accounts using our Python and Node SDK:

```python theme={null}
verification = client.v2.account_verifications.create(
	account_number = "12345678912345789"
)
```

```node Node theme={null}
const verification = await fintoc.v2.accountVerifications.create({
  account_number: '012969100000000026',
});
```

# Monitor verification status

When transfer and account holder information are successfully retrieved, you will receive an `account_verification.succeeded` webhook. This event will include the account holder's information in a succeeded `account_verification` object. This is how the event should look like:

```json theme={null}
{
  "id": "evt_a4xK32BanKWYn",
  "type": "account_verification.succeeded",
  "object": "event",
  "mode": "test",
  "created_at": "2020-04-17T00:00:00.000Z",
  "data": {
    "account_verification_id": "accv_fdsjklsdjkls",
    "object": "account_verification",
    "status": "succeeded",
    "reason": null,
    "transfer_id": "tr_fdskjldasjkl",
    "counterparty": {
      "account_number": "123456789123455789",
      "holder_id": "FLA1234567890", 
      "holder_name": "Carmen Marcela",
      "account_type": "clabe",
      "institution": {
        "id": "mx_banco_bbva",
        "name": "BBVA Mexico",
        "country": "mx" 
      }
    },
    "mode": "test",
    "receipt_url": "https://www.banxico.org.mx/cep/",
    "transaction_date": "2020-04-17T00:00:00.000Z"
  }
}
```

If the information cannot be obtained, you will receive an `account_verification.failed` webhook with a `reason` field explaining why the verification failed.

For more information on receiving webhooks with Fintoc, check out the [webhooks guide](/v2023-11-15/docs/resources/webhooks-walkthrough).
