Bank Account Verification [Penny-Drop]

Bank Account Verification API helps in verifying the account details before making any payouts. Businesses can use Sandbox API to verify bank accounts in real-time through the penny-drop mechanism.

Overview

The API takes in ifsc and account_number to verify the bank account by dropping a penny into the beneficiary bank account.

Problem

  • Bank account verification is important for businesses as part of their KYC process.
  • Businesses rely on customers to provide accurate bank account details.
  • However, businesses have no reliable way to verify a bank account.

Solution

  • API to verify Bank Account details by depositing INR 1 into the account.
  • Incorporating this API into your customer onboarding journey for seamless bank KYC.

Endpoint

HTTP MethodResource
GET/bank/:ifsc/accounts/:account_number/verify?name={{name}}&mobile={{mobile}}

API EndpointAPI Endpoint

Request

Follow the below guidelines to pass IFSC and account number for penny drop verification

Path Parameters

ParamTypeDescriptionExample
ifscstringAlphanumeric code is used to identify the bank branches.
Max length: 11 characters.
SBIN0021745
account_numberstringBank account number.
Max length: 20 characters.
026291800001191

Query Parameters

ParamTypeDescriptionExample
namestringName of the Account holder.John Doe
mobilestringMobile number of the account holder.9999999999

Sample CURL

curl --location --request GET 'https://api.sandbox.co.in/bank/HDFC0000001/accounts/026291800001191/verify?name=JOHN%20DOE&mobile=9999999999' \
--header 'Authorization: eyJhbGciOiJIUzUxMiJ9.eyJhdWQiOiJBUEkiLCJyZWZyZXNoX3Rva2VuIjoiZXlKaGJHY2lPaUpJVXpVeE1pSjkuZXlKaGRXUWlPaUpCVUVraUxDSnpkV0lpT2lKclpYbGZiR2wyWlY5QlpHVXFLaW9xS2lvcUtpb3FLaW9xS2lvcUtpb3FLaW9xS2lvcUtsVjRjeUlzSW1Gd2FWOXJaWGtpT2lKclpYbGZiR2wyWlY5QlpHVXFLaW9xS2lvcUtpb3FLaW9xS2lvcUtpb3FLaW9xS2lvcUtsVjRjeUlzSW1semN5STZJbUZ3YVM1eGRXbGphMjh1WTI5dElpd2laWGh3SWpveE5Ua3dPVFk1TmpBd0xDSnBiblJsYm5RaU9pSlNSVVpTUlZOSVgxUlBTMFZPSWl3aWFXRjBJam94TlRVNU16UTNNakF3ZlEueHNmYkhQTERFRlRvTy1OUWdaUUpLM25OUjFxdlhvWmhaOHRqS3gzSExydjZiVkJaMHpJZEZ5ai1MUTg1YnJZS0xXQnFnZHlzZ1NDSXlDUXNtV2VOYkEiLCJzdWIiOiJqb2huQGRvZS5jb20iLCJhcGlfa2V5Ijoia2V5X2xpdmVfQWRlKioqKioqKioqKioqKioqKioqKioqKioqKipVeHMiLCJpc3MiOiJhcGkucXVpY2tvLmNvbSIsImV4cCI6MTU5MTA1NjAwMCwiaW50ZW50IjoiQUNDRVNTX1RPS0VOIiwiaWF0IjoxNTkwOTY5NjAwfQ.nH23CR5RHGQ0U19I_vq3vyJ_85A1a2iEMQij5QHgJQdDuS9x7FmTidsr1CQabSFF5ujE40SFxHv1gJM20TauUw' \
--header 'x-api-key: key_live_Ade**************************Uxs' \
--header 'x-api-version: 1.0.0'

βœ…

Test Environment Available


Response

ParamTypeDescriptionExample
reference_id stringReference id of the verification1234567
account_exists booleanIndicates if the account exists or not. Possible values:
true or false
true
amount_deposited numReturns 1, only if the penny drop mechanism was successful.1
message stringReturns message to know if the account was verified successfully or not.Bank Account details verified successfully
name_at_bank stringName of the account holderJohn Doe

Response Codes

StatusResponse CodeAccount StatusMessage
SUCCESS200VALIDBank Account details verified successfully
SUCCESS200INVALIDInvalid account number or IFSC provided
SUCCESS200INVALIDGiven the account is an NRE account
SUCCESS200INVALIDAccount is blocked
SUCCESS200INVALIDIFSC is invalid

Wallet Charges

Since Bank Account Verification (penny-drop) is a Paid API, a wallet charge of INR 1.75 + GST per API call will be applicable.