Bank Account Verification API - Penny Drop and Penny Less Methods
Bank account verification is essential for any business that disburses payments - whether loan disbursements, vendor payments, salary transfers, or refunds. Sending money to wrong accounts causes delays, customer complaints, and recovery headaches.
Table of Contents
- Why Verify Bank Accounts?
- Verification Methods
- Penny Drop Verification
- Penny Less Verification
- Method Comparison
- API Integration
- Best Practices
Why Verify Bank Accounts?
Incorrect bank details lead to:
- Failed Transactions: NEFT/IMPS returns after 24-48 hours
- Customer Complaints: Delayed disbursements hurt experience
- Recovery Costs: Time and money spent recovering wrong transfers
- Fraud Risk: Money sent to fraudulent accounts is hard to recover
Bank account verification before disbursement eliminates these issues.
Verification Methods
Penny Drop
Transfers Re 1 to account and verifies via bank response. 100% accurate.
Penny Less
Verifies via NPCI database without actual transfer. Faster response.
Penny Drop Verification
Penny Drop works by initiating an actual IMPS transfer of Re 1 to the account:
- API initiates IMPS transfer of Re 1
- Bank validates account number and IFSC
- If successful, returns account holder name
- Re 1 is deposited in customer account
Advantages
- 100% accurate - actual bank confirmation
- Returns exact name as per bank records
- Works for all bank accounts
Disadvantages
- Slightly slower (5-30 seconds)
- Re 1 deposited may confuse customer
Penny Less Verification
Penny Less (also called Account Validation) verifies through NPCI without actual transfer:
- API sends account + IFSC to NPCI
- NPCI checks against bank database
- Returns account holder name if valid
- No money is transferred
Advantages
- Faster response (2-5 seconds)
- No transaction to confuse customer
Disadvantages
- Some banks may not support
- Rare cases of database sync delays
Method Comparison
| Factor | Penny Drop | Penny Less |
|---|---|---|
| Speed | 5-30 seconds | 2-5 seconds |
| Accuracy | 100% | 99%+ |
| Bank Coverage | All banks | Most banks |
| Best For | High-value disbursals | Volume verifications |
API Integration
Request Format
{
"account_number": "1234567890",
"ifsc": "HDFC0001234",
"account_holder_name": "Rahul Kumar",
"method": "penny_less",
"consent": true
}
PHP Example
<?php $body = json_encode([ "account_number" => "1234567890", "ifsc" => "HDFC0001234", "account_holder_name" => "Rahul Kumar", "method" => "penny_less", "consent" => true ]); $ch = curl_init("https://api.vistarkriya.com/api/v1/bank/verify"); curl_setopt_array($ch, [ CURLOPT_RETURNTRANSFER => true, CURLOPT_POST => true, CURLOPT_POSTFIELDS => $body, CURLOPT_HTTPHEADER => [ "Content-Type: application/json", "X-API-Key: your_api_key", "X-Timestamp: " . time(), "X-Signature: your_signature" ] ]); $response = json_decode(curl_exec($ch), true); ?>
Response Format
{
"success": true,
"data": {
"account_exists": true,
"account_holder_name": "RAHUL KUMAR",
"name_match": 95,
"bank_name": "HDFC BANK",
"branch": "DELHI MAIN",
"ifsc_valid": true
}
}
Name Match Interpretation
| Match % | Interpretation | Action |
|---|---|---|
| 90-100% | Strong match | Auto-approve |
| 70-89% | Partial match | Manual review |
| Below 70% | Mismatch | Reject or re-verify |
Best Practices
- Validate IFSC First: Check IFSC format before API call
- Use Penny Less for Bulk: Efficient for high volume
- Penny Drop for High Value: Use for loans above Rs 5 lakhs
- Cache Results: Store verification for 30 days
- Handle Timeouts: Implement retry logic for failures
- Name Fuzzy Match: Allow for minor spelling variations
IFSC Validation
Validate IFSC format before API call:
// PHP - IFSC format: 4 letters + 0 + 6 alphanumeric $pattern = "/^[A-Z]{4}0[A-Z0-9]{6}$/"; if (preg_match($pattern, $ifsc)) { // Valid IFSC format }
FAQs
Q: Which method should I use?
A: Use Penny Less for volume verifications. Use Penny Drop for high-value transactions where 100% accuracy is critical.
Q: What if bank is not supported by Penny Less?
A: Fallback to Penny Drop which works for all banks.
Q: How accurate is name matching?
A: We use fuzzy matching algorithm. 90%+ match is considered verified.
For integration help, contact hello@vistarkriya.com.
Related Verification APIs
Originally published at: Bank Account Verification API - Penny Drop and Penny Less Methods
Comments
Post a Comment