Skip to main content
POST
/
api
/
v1
/
kyc-by-mobile
KYC by Mobile
curl --request POST \
  --url https://api.example.com/api/v1/kyc-by-mobile \
  --header 'Content-Type: application/json' \
  --data '
{
  "mobile": "<string>",
  "async": true
}
'

KYC by Mobile

Perform KYC verification using only the mobile number. Fetches identity-linked details such as name, date of birth, PAN, and masked Aadhaar from authorized sources without OTP verification.

Overview

This endpoint helps businesses:
  • Verify customer identity using their mobile number
  • Retrieve KYC data including PAN and masked Aadhaar
  • Comply with regulatory requirements
  • Streamline digital onboarding

Request

mobile
string
required
Mobile number in Indian international format (+91XXXXXXXXXX)
async
boolean
default:"true"
If true (default), request is queued and result delivered via webhook. If false, wait for result synchronously (up to 30 seconds).

Headers

HeaderValueRequired
X-API-KeyYour API keyYes
Content-Typeapplication/jsonYes

Example Request (Async Mode - Default)

curl -X POST "https://api.txncheck.in/api/v1/kyc-by-mobile" \
  -H "X-API-Key: fb_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "mobile": "+919876543210"
  }'

Example Request (Sync Mode)

curl -X POST "https://api.txncheck.in/api/v1/kyc-by-mobile" \
  -H "X-API-Key: fb_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "mobile": "+919876543210",
    "async": false
  }'

Response

202 Accepted

Request accepted and queued for processing.
{
  "statusCode": 202,
  "message": "Request accepted and queued for processing",
  "requestId": "550e8400-e29b-41d4-a716-446655440000",
  "status": "QUEUED"
}

Result Data (via webhook or polling)

{
  "requestId": "550e8400-e29b-41d4-a716-446655440000",
  "method": "kyc-by-mobile",
  "status": "COMPLETED",
  "result": {
    "fullName": "JOHN DOE",
    "pan": "ABCDE1234F",
    "maskedAadhaar": "XXXXXXXX1234",
    "dob": "1990-01-15",
    "status": "1"
  },
  "webhookStatus": "SENT",
  "createdAt": "2025-01-11T10:30:00.000Z",
  "completedAt": "2025-01-11T10:30:05.000Z"
}

Result Fields

FieldTypeDescription
fullNamestringFull name as per KYC records
panstringPAN number
maskedAadhaarstringMasked Aadhaar number (last 4 digits visible)
dobstringDate of birth in YYYY-MM-DD format
statusstring"1" if data found, "0" if not found

Error Responses

400 Bad Request

Invalid mobile number format.
{
  "statusCode": 400,
  "message": ["Mobile must be in format +91XXXXXXXXXX (Indian number)"],
  "error": "Bad Request"
}

401 Unauthorized

Invalid or missing API key.
{
  "statusCode": 401,
  "message": "Invalid API key",
  "error": "Unauthorized"
}

402 Payment Required

Insufficient account balance.
{
  "statusCode": 402,
  "message": "Insufficient wallet balance",
  "error": "Payment Required"
}

403 Forbidden

Method not enabled for your account.
{
  "statusCode": 403,
  "message": "Access to method 'kyc-by-mobile' is not allowed",
  "error": "Forbidden"
}

408 Request Timeout (Sync Mode Only)

Request processing timed out.
{
  "statusCode": 408,
  "message": "Request processing timed out after 30 seconds",
  "error": "Request Timeout"
}

429 Too Many Requests

Rate limit exceeded.
{
  "statusCode": 429,
  "message": "Too Many Requests",
  "error": "Too Many Requests"
}

Use Cases

Streamline customer onboarding by auto-populating KYC information from mobile number.
Verify customer identity by cross-referencing provided information with KYC data.
Meet regulatory requirements by verifying customer identity documents.
Detect potential fraud by comparing claimed identity with verified KYC data.
KYC data should be handled in compliance with data protection regulations. Store only what is necessary and ensure proper security measures.