Penny Drop Verification
Objective
The Penny Drop Verification module validates a bank account number and the Indian Financial System Code(IFSC) associated with it by making a transaction of 1 rupee (a penny drop).
| Input | Output |
|---|---|
| The account number and its IFSC | The response indicating the status of the transaction and additional details such as the account holder's name |
Inputs
The following table provides the details of the input parameters required for the module.
| Parameter | Mandatory or Optional | Description | Valid Values |
|---|---|---|---|
| ifsc | Mandatory | The IFSC of the account's branch. | Not Applicable |
| accountNumber | Mandatory | The account number associated with the bank account. | Not Applicable |
Success Response Sample
The following are samples of success responses from the module.
- Successful Penny-Drop
- Non-Resident External Account
{
"status": "success",
"statusCode": "200",
"result": {
"bankResponse": "Transaction Successful",
"ifsc": "<Enter_the_IFSC>",
"accountNumber": "<Enter_the_Account_Number>",
"accountName": "<Enter_the_Name_of_the_Account_Holder>",
"bankTxnStatus": true
}
}
{
"status": "success",
"statusCode": "200",
"result": {
"bankResponse": "NRE Account",
"ifsc": "<Enter_the_IFSC>",
"accountNumber": "<Enter_the_Account_Number>",
"accountName": "<Enter_the_Name_of_the_Account_Holder>",
"bankTxnStatus": true
}
}
Success Response Details
The following table provides the details of the fields in a success response.
| Parameter | Description |
|---|---|
| bankResponse | Indicates the result of the transaction, signaling whether it was a success or a failure. |
| ifsc | The IFSC Code of the bank account for reference. |
| accountNumber | The account number associated with the bank transaction. |
| accountName | The name of the account holder associated with the bank account. |
| bankTxnStatus | Indicates the status of the transaction, with a value of "true" if the transaction was successful and "false" if it was not. |
Failure Response Sample
The following is a failure response sample for a blocked account.
{
"status": "success",
"statusCode": "200",
"result": {
"bankResponse": "Account is blocked",
"ifsc": "<Enter_the_IFSC>",
"accountNumber": "<Enter_the_Account_Number>",
"accountName": "<Enter_the_Name_of_the_Account_Holder>",
"bankTxnStatus": false
}
}
Error Response Sample
The following are the sample error responses from the module.
- Invalid Account Number or IFSC
- Invalid Account Number
- Invalid IFSC
- Invalid IFSC Pattern
- Invalid IFSC Length
- Account Number Length is too Short
- Account Number Length is too Long
- Internal Server Error
{
"status": "failure",
"statusCode": "422",
"error": "Invalid value passed for an input: Account number or IFSC"
}
{
"status": "failure",
"statusCode": "422",
"error": "Invalid value passed for an input: Account number"
}
{
"status": "failure",
"statusCode": "422",
"error": "Invalid value passed for an input: IFSC"
}
{
"status": "failure",
"statusCode": "422",
"error": "Invalid value passed for an input: IFSC pattern"
}
{
"status": "failure",
"statusCode": "400",
"error": "ifsc length must be 11 characters long"
}
{
"status": "failure",
"statusCode": "400",
"error": "accountNumber length must be at least 6 characters long"
}
{
"status": "failure",
"statusCode": "400",
"error": "accountNumber length must be less than or equal to 25 characters long"
}
{
"status": "failure",
"statusCode": "500",
"error": "Internal Server Error"
}
- Bank Error: IMPS Mode Fail
- Bank Error: Beneficiary Bank Offline
- Bank Error: Source Bank Declined
- Bank Error: Failed at Bank
- Bank Error: Transaction Failed
{
"status": "failure",
"statusCode": "500",
"error": "Bank Error: IMPS Mode Fail"
}
{
"status": "failure",
"statusCode": "500",
"error": "Bank Error: Beneficiary Bank Offline"
}
{
"status": "failure",
"statusCode": "500",
"error": "Bank Error: Source Bank Declined"
}
{
"status": "failure",
"statusCode": "500",
"error": "Bank Error: Failed at Bank"
}
{
"status": "failure",
"statusCode": "500",
"error": "Bank Error: Transaction Failed"
}
- Bank Error: NPCI Unavailable
- Bank Error: Failed at Beneficiary Bank
- Bank Error: IMPS not supported on Beneficiary Account
- Bank Error: Verification Attempt Failed
{
"status": "failure",
"statusCode": "500",
"error": "Bank Error: NPCI Unavailable"
}
{
"status": "failure",
"statusCode": "500",
"error": "Bank Error: Failed at Beneficiary Bank"
}
{
"status": "failure",
"statusCode": "500",
"error": "Bank Error: IMPS not supported on Beneficiary Account"
}
{
"status": "failure",
"statusCode": "500",
"error": "Bank Error: Verification Attempt Failed"
}
Failure and Error Response Details
A failure or error response from the module contains a
failure status, with a relavant status code and error message. The following table lists all error responses. | Status Code | Error Message | Error Description |
|---|---|---|
| 422 | Invalid Account Number or IFSC | An invalid value was provided for either the account number or IFSC in the input. |
| 422 | Invalid Account Number | An invalid value was provided for the account number in the input. |
| 422 | Invalid IFSC | An invalid value was provided for the IFSC in the input. |
| 422 | Invalid IFSC Pattern | An invalid value was provided for the IFSC pattern in the input. |
| 400 | Invalid IFSC Length | The length of the IFSC provided is not 11 characters long as required. |
| 400 | Account Number Length is too Short | The length of the account number provided is less than the required minimum of 6 characters. |
| 400 | Account Number Length is too Long | The length of the account number provided exceeds the maximum limit of 25 characters. |
| 500 | Internal Server Error | Kindly check the request headers or contact the HyperVerge team for resolution. |
| 500 | Bank Error: IMPS Mode Fail | A bank-related error, specifically the failure of the IMPS mode. |
| 500 | Bank Error: Beneficiary Bank Offline | A bank-related error, with the beneficiary bank being offline. |
| 500 | Bank Error: Source Bank Declined | A bank-related error, with the source bank declining the transaction. |
| 500 | Bank Error: Failed at Bank | A bank-related error, with the transaction failing at the bank. |
| 500 | Bank Error: Transaction Failed | A bank-related error, with the transaction failing. |
| 500 | Bank Error: NPCI Unavailable | A bank-related error, with the National Payments Corporation of India (NPCI) being unavailable. |
| 500 | Bank Error: Failed at Beneficiary Bank | A bank-related error, with the transaction failing at the beneficiary bank. |
| 500 | Bank Error: IMPS not supported on Beneficiary Account | A bank-related error, with the beneficiary account not supporting IMPS. |
| 500 | Bank Error: Verification Attempt Failed | A bank-related error, specifically a failure in the verification attempt. |