Verify identities, validate bank accounts, and move money with one integration. RBI-compliant infrastructure trusted by 500+ lenders, NBFCs, and fintech platforms.
curl https://api.bharatapicloud.io/v1/verify/kyc \
-H "Authorization: Bearer sk_live_..." \
-H "Content-Type: application/json" \
-d '{
"pan": "ABCDE1234F",
"name": "Aarav Sharma",
"dob": "1990-04-12"
}'{
"status": "verified",
"match_score": 0.98,
"pan_valid": true,
"name_match": "exact",
"request_id": "kyc_8f3a2c1d"
}Products
Modular APIs you can adopt individually or as a complete stack — from onboarding to disbursal.
PAN, Aadhaar (via DigiLocker), GSTIN, and document OCR verification with liveness detection. Real-time results in under 3 seconds.
Penny-drop and reverse penny-drop verification for 400+ banks. Validate account holder names before disbursals and payouts.
Consent-based access to bank statements and financial data through RBI-regulated Account Aggregator rails.
IMPS, NEFT, RTGS, and UPI payouts with virtual account collections. Automated reconciliation included.
Developers
RESTful APIs with idempotent requests and sub-second p99 latency
SDKs for Node.js, Python, Java, Go, and PHP
Webhooks with HMAC signatures and automatic retries
Sandbox mirrors production — no surprise behavior at go-live
import { BharatApiClient } from "@bharatapicloud/sdk";
const client = new BharatApiClient(process.env.BHARAT_API_KEY);
const result = await client.kyc.verifyPan({
pan: "ABCDE1234F",
name: "Aarav Sharma",
});
if (result.status === "verified") {
await client.bank.verifyAccount({
account: "50100234567890",
ifsc: "HDFC0001234",
});
}Pricing
Transparent per-call pricing. No setup fees, no minimum commitments.
Test every API with unlimited sandbox calls.
For startups going live with verification flows.
High-volume, regulated workloads with dedicated infra.
Get sandbox keys instantly. Talk to our team about production access and volume pricing.