Getting Started with KYCryptAI
Learn how to integrate AI-powered KYC verification into your application in minutes.
Introduction
KYCryptAI provides a comprehensive API for verifying identity documents using advanced AI technology. Our platform supports Aadhaar cards, PAN cards, utility bills, and more with industry-leading accuracy and security.
Key Features
- • Real-time document verification with 98%+ accuracy
- • AI-powered forgery detection using deep learning
- • Comprehensive immutable audit trails
- • RESTful API with comprehensive documentation
- • Webhook support for async operations
- • Multi-language SDK support (Node.js, Python, React)
- • Enterprise-grade security and compliance
Quick Start
Get up and running with KYCryptAI in just a few steps. Follow this guide to make your first verification request.
Step 1: Get Your API Key
Sign up for an account and navigate to the API Keys section in your dashboard to generate your API key.
API_KEY=kycrypt_live_1234567890abcdefStep 2: Make Your First Request
Use our API to verify a document.
curl -X POST https://api.kycryptai.com/v1/verify \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: multipart/form-data" \
-F "document=@aadhaar.jpg" \
-F "type=aadhaar"Step 3: Handle the Response
Process the verification result in your application.
{
"status": "verified",
"confidence_score": 98.5,
"document_type": "aadhaar",
"extracted_data": {
"name": "John Doe",
"aadhaar_number": "XXXX-XXXX-1234",
"dob": "1990-01-01"
},
"validity": "6 months",
"verification_id": "ver_abc123"
}Installation
Install our SDK for your preferred programming language.
Node.js / JavaScript
npm install @kycryptai/sdkPython
pip install kycryptaiReact / Next.js
npm install @kycryptai/reactAuthentication
All API requests require authentication using your API key. Include it in the Authorization header with the Bearer scheme.
Authorization Header
Include your API key in every request to authenticate your application.
Authorization: Bearer YOUR_API_KEYSecurity Note: Never expose your API key in client-side code. Always make API calls from your backend server.
API Endpoints
Complete reference for all available API endpoints.
/v1/verifyVerify a document and get authenticity score with extracted data.
Request Parameters:
- •
document(file, required) - The document image to verify - •
type(string, required) - Document type: aadhaar, pan, utility_bill, passport - •
webhook_url(string, optional) - URL to receive webhook notifications
Response:
{
"verification_id": "ver_abc123",
"status": "verified",
"confidence_score": 98.5,
"document_type": "aadhaar",
"verification_hash": "vh_1234...abcd"
}/v1/verification/:idRetrieve detailed verification information by ID.
Path Parameters:
- •
id(string) - Verification ID
/v1/historyGet paginated verification history for your account.
Query Parameters:
- •
page(number) - Page number (default: 1) - •
limit(number) - Items per page (default: 20, max: 100) - •
status(string) - Filter by status: verified, rejected, pending
/v1/verification/:idDelete a verification record (subject to retention policies).
Webhooks
Configure webhooks to receive real-time notifications about verification events. Webhooks are sent as POST requests to your specified endpoint.
Webhook Events
- •
verification.completed- Verification process finished successfully - •
verification.failed- Verification failed or was rejected - •
fraud.detected- Potential fraud or forgery detected
Webhook Payload Example
{
"event": "verification.completed",
"timestamp": "2025-10-03T12:34:56Z",
"data": {
"verification_id": "ver_abc123",
"status": "verified",
"confidence_score": 98.5,
"document_type": "aadhaar"
}
}Webhook Security
All webhook requests include a signature in the X-KYCrypt-Signature header. Verify this signature to ensure the request is from KYCryptAI.
Rate Limits
API rate limits are applied per API key to ensure fair usage and system stability.
Standard Tier
100 requests/min
10,000 requests per day
Enterprise Tier
1,000 requests/min
Unlimited daily requests
Rate Limit Headers: Check X-RateLimit-Remaining and X-RateLimit-Reset headers in API responses.
Node.js Integration
Integrate KYCryptAI into your Node.js or Express application.
Installation
npm install @kycryptai/sdkBasic Usage
const KYCryptAI = require('@kycryptai/sdk');
const client = new KYCryptAI({
apiKey: process.env.KYCRYPT_API_KEY
});
// Verify a document
const result = await client.verify({
document: fs.createReadStream('aadhaar.jpg'),
type: 'aadhaar'
});
console.log(result.confidence_score);Python Integration
Use KYCryptAI in your Python applications with our official SDK.
Installation
pip install kycryptaiBasic Usage
from kycryptai import KYCryptAI
client = KYCryptAI(api_key="your_api_key")
# Verify a document
with open("aadhaar.jpg", "rb") as f:
result = client.verify(
document=f,
document_type="aadhaar"
)
print(f"Confidence: {result.confidence_score}%")React Integration
Build verification flows in your React applications with our React SDK and hooks.
Installation
npm install @kycryptai/reactBasic Usage
import { KYCryptProvider, useVerification } from '@kycryptai/react';
function App() {
return (
<KYCryptProvider apiKey={process.env.REACT_APP_KYCRYPT_KEY}>
<VerificationForm />
</KYCryptProvider>
);
}
function VerificationForm() {
const { verify, loading, result } = useVerification();
const handleSubmit = async (file) => {
await verify({ document: file, type: 'aadhaar' });
};
return <div>{/* Your form UI */}</div>;
}REST API Integration
Direct REST API integration for any programming language or platform.
cURL Example
curl -X POST https://api.kycryptai.com/v1/verify \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: multipart/form-data" \
-F "document=@document.jpg" \
-F "type=aadhaar"Data Privacy
We take data privacy seriously and comply with GDPR, CCPA, and other international privacy regulations.
Data Handling
- • All data is encrypted in transit (TLS 1.3) and at rest (AES-256)
- • Documents are automatically deleted after 90 days (configurable)
- • PII is tokenized and stored separately from verification data
- • Users can request data deletion at any time
Compliance
- • GDPR compliant with data processing agreements
- • SOC 2 Type II certified
- • ISO 27001 certified
- • Regular third-party security audits
Compliance
KYCryptAI helps you meet regulatory requirements for identity verification across multiple jurisdictions.
KYC/AML
Compliant with Know Your Customer and Anti-Money Laundering regulations
eIDAS
European electronic identification and trust services compliant
FATF
Financial Action Task Force recommendations compliant
PSD2
Payment Services Directive 2 strong customer authentication
Common Issues
Solutions to frequently encountered problems.
Low Confidence Score
Ensure document images are high quality (min 1200x1600px), well-lit, and not blurry. Avoid shadows and glare on the document.
Authentication Failed
Verify your API key is correct and has not expired. Check that you're using the Bearer token format in the Authorization header.
Rate Limit Exceeded
Implement exponential backoff and respect the rate limit headers. Consider upgrading to a higher tier for increased limits.
Webhook Not Received
Ensure your webhook endpoint is publicly accessible, returns a 200 status code, and responds within 5 seconds. Check firewall settings.
Best Practices
Follow these recommendations for optimal results and security.
Document Quality
- • Use minimum resolution of 1200x1600 pixels
- • Ensure good lighting without shadows or glare
- • Capture the entire document within the frame
- • Avoid blurry or low-contrast images
API Security
- • Never expose API keys in client-side code
- • Rotate API keys regularly (every 90 days)
- • Use environment variables for key storage
- • Implement IP whitelisting for production
- • Monitor API usage for suspicious activity
Error Handling
- • Implement retry logic with exponential backoff
- • Log all API errors for debugging
- • Provide user-friendly error messages
- • Handle rate limits gracefully
Performance
- • Compress images before upload (max 5MB)
- • Use webhooks for async processing
- • Cache verification results when appropriate
- • Batch requests when possible
Troubleshooting
Step-by-step guides to resolve common technical issues.
Debugging API Requests
- Check API endpoint URL is correct (https://api.kycryptai.com/v1/...)
- Verify Authorization header format: "Bearer YOUR_API_KEY"
- Ensure Content-Type is set to multipart/form-data for file uploads
- Check response status code and error message
- Review API logs in your dashboard
Webhook Issues
- Test webhook endpoint with a tool like ngrok for local development
- Verify endpoint returns 200 status within 5 seconds
- Check webhook signature validation is implemented correctly
- Review webhook logs in dashboard for delivery status
- Enable webhook retry in settings if needed
SDK Integration Issues
- Ensure SDK version is up to date (npm update @kycryptai/sdk)
- Check Node.js/Python version compatibility
- Verify environment variables are loaded correctly
- Review SDK documentation for breaking changes
- Enable debug mode for detailed logs
Still Need Help?
If you're still experiencing issues, our support team is here to help:
- • Email: support@kycryptai.com
- • Live Chat: Available in dashboard
- • Community Forum: community.kycryptai.com
- • Status Page: status.kycryptai.com