Developer Documentation

Build with Bangladesh's identity infrastructure

A unified REST API for identity, biometric, business, and telecom verification — designed for fintechs, marketplaces, telecom, and regulated SaaS.

Platform Overview

KYC.bd is a modular verification stack for Bangladesh and emerging markets. Each module exposes a focused REST endpoint over HTTPS with JSON payloads.

Identity Verification

National ID workflows with consent capture.

Face Match Engine

Selfie-to-document biometric comparison & liveness.

Business Verification

Company registration, TIN, and merchant checks.

Telecom Verification

SIM ownership and operator validation.

Webhooks

Real-time event delivery for verification lifecycle.

API Gateway

Rate limits, audit logs, and unified auth.

Authentication

All requests require a Bearer API key in the Authorization header.

HTTP
Authorization: Bearer YOUR_API_KEY
Sandbox
https://sandbox.kyc.bd/api/v1
Production
https://api.kyc.bd/v1

Identity Verification

POST/identity/verify
Request
{
  "full_name": "John Doe",
  "date_of_birth": "1998-05-15",
  "national_id": "1234567890",
  "mobile": "+8801XXXXXXXXX",
  "consent": true,
  "reference_id": "USER-1001"
}
Response
{
  "status": "verified",
  "verification_id": "KYC-8472931",
  "match_score": 98.7,
  "risk_level": "low",
  "timestamp": "2026-05-07T12:00:00Z"
}
cURL
curl -X POST https://api.kyc.bd/v1/identity/verify \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "full_name":"John Doe",
    "date_of_birth":"1998-05-15",
    "national_id":"1234567890",
    "mobile":"+8801XXXXXXXXX",
    "consent":true
  }'

Face Match

POST/biometric/face-match
Request
{
  "document_image": "base64_encoded_image",
  "selfie_image": "base64_encoded_image",
  "reference_id": "USER-1001"
}
Response
{
  "status": "matched",
  "confidence_score": 96.4,
  "liveness": true,
  "fraud_risk": "low"
}

Business Verification

POST/business/verify
Request
{
  "company_name": "Example Technologies Ltd",
  "registration_number": "C-123456",
  "tin": "987654321",
  "contact_email": "admin@example.com"
}
Response
{
  "status": "verified",
  "company_status": "active",
  "risk_level": "medium",
  "verification_id": "BIZ-82711"
}

Telecom Verification

POST/telecom/verify
Response
{
  "mobile_verified": true,
  "operator": "Detected Operator",
  "sim_status": "active",
  "risk_score": 12
}

Webhooks

KYC.bd delivers real-time events via signed webhook callbacks. Configure your endpoint URL and signing secret in the dashboard.

EventDescription
verification.completedVerification finished
verification.failedVerification rejected
aml.flaggedAML or sanctions alert
consent.revokedConsent withdrawn
fraud.detectedSuspicious activity identified
Example payload
{
  "event": "verification.completed",
  "verification_id": "KYC-8472931",
  "status": "verified",
  "timestamp": "2026-05-07T12:00:00Z"
}

SDKs & Developer Tools

Official client libraries with typed methods and built-in retries.

Node.js
PHP
Python
Laravel
Java
Go

Compliance & Security

Infrastructure

  • TLS 1.3 encrypted API communication
  • Enterprise-grade API gateway
  • Audit logging and immutable activity records
  • Role-based access control
  • Rate limiting and anomaly monitoring

Compliance

  • PDPA-aligned data handling workflows
  • Consent-driven verification architecture
  • KYC/AML operational support
  • Enterprise audit support
  • Regulatory response readiness

Ready to integrate?

Get sandbox credentials and start verifying users today.