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

# Failure Reason Reference

> Failure reason values returned when API operations return status FAILED.

This page provides a comprehensive reference of all failure reason values that may be returned in API responses when a status is `FAILED`. These failure reasons help you understand why a particular operation failed and what actions you may need to take.

<Note>
  **When are failure reasons returned?**

  * The `failure_reason` field is populated in API responses when the status is `FAILED`.
  * For successful or processing states, this field will be `null`.
</Note>

## Bank Verification

Bank verification failure reasons are returned when a bank account or UPI ID verification fails. These appear in the bank account creation and verification endpoints.

### Available Failure Reasons

| Failure Reason           | Description                                                                                      |
| ------------------------ | ------------------------------------------------------------------------------------------------ |
| `INVALID_IFSC`           | The provided IFSC (Indian Financial System Code) is invalid or does not match the bank details   |
| `INVALID_ACCOUNT_NUMBER` | The provided account number is invalid, incorrect, or does not exist                             |
| `ACCOUNT_TYPE_NRE`       | The account type is NRE (Non-Resident External), which is not supported for transactions         |
| `PENNY_DROP_FAILED`      | The penny drop verification (micro-transaction verification) failed to confirm account ownership |
| `NAME_MISMATCH`          | The account holder name does not match the name on the customer's KYC documents                  |
| `BANK_RISK_CHECK_FAILED` | The bank account failed internal risk checks and cannot be used for transactions                 |

## Customer Verification

Customer verification failure reasons are returned when customer KYC verification fails at different stages of the verification process. These appear in customer and KYC endpoint responses.

### Available Failure Reasons

| Failure Reason                 | Description                                                                                                                                                                               |
| ------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `DOCUMENT_VERIFICATION_FAILED` | The submitted KYC documents (ID proof, address proof) failed verification. This could be due to poor image quality, expired documents, or documents not matching the provided information |
| `TAX_VERIFICATION_FAILED`      | The tax information (PAN, tax number) provided failed verification or does not match the customer's details                                                                               |
| `SELFIE_VERIFICATION_FAILED`   | The selfie image submitted failed verification. This could be due to poor image quality, face not clearly visible, or the selfie not matching the photo on the submitted KYC documents    |
| `KYC_FAILED`                   | The additional information provided (such as occupation, source of funds, etc.) failed verification checks                                                                                |

## Payin

Payin failure reasons are returned when a payin transaction fails during processing. These appear in payin endpoint responses when the payin status is `FAILED`.

### Available Failure Reasons

| Failure Reason         | Description                                                                           |
| ---------------------- | ------------------------------------------------------------------------------------- |
| `INCORRECT_UTR`        | The UTR (Unique Transaction Reference) provided does not match the actual transaction |
| `INVALID_UTR`          | The UTR (Unique Transaction Reference) provided is in an invalid format or structure  |
| `PAYMENT_NOT_RECEIVED` | The payment was not received or could not be verified by the payment gateway or bank  |
