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_1234567890abcdef

Step 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/sdk

Python

pip install kycryptai

React / Next.js

npm install @kycryptai/react

Authentication

All API requests require authentication using your API key. Include it in the Authorization header with the Bearer scheme.

Bearer Token

Authorization Header

Include your API key in every request to authenticate your application.

Authorization: Bearer YOUR_API_KEY

Security 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.

POST/v1/verify

Verify 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"
}
GET/v1/verification/:id

Retrieve detailed verification information by ID.

Path Parameters:

  • • id (string) - Verification ID
GET/v1/history

Get 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
DELETE/v1/verification/:id

Delete 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/sdk

Basic 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 kycryptai

Basic 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/react

Basic 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

  1. Check API endpoint URL is correct (https://api.kycryptai.com/v1/...)
  2. Verify Authorization header format: "Bearer YOUR_API_KEY"
  3. Ensure Content-Type is set to multipart/form-data for file uploads
  4. Check response status code and error message
  5. Review API logs in your dashboard

Webhook Issues

  1. Test webhook endpoint with a tool like ngrok for local development
  2. Verify endpoint returns 200 status within 5 seconds
  3. Check webhook signature validation is implemented correctly
  4. Review webhook logs in dashboard for delivery status
  5. Enable webhook retry in settings if needed

SDK Integration Issues

  1. Ensure SDK version is up to date (npm update @kycryptai/sdk)
  2. Check Node.js/Python version compatibility
  3. Verify environment variables are loaded correctly
  4. Review SDK documentation for breaking changes
  5. 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