OKYC developer docs

Add identity (KYC) and business (KYB) verification to your product with one API and a hosted flow.

View as Markdown

OKYC verifies people and businesses in India: PAN, Aadhaar (DigiLocker, Offline XML, Secure QR), selfie and liveness, bank accounts, GSTIN, company registry, documents and sanctions screening. You design the steps in a workflow, your backend creates a session for each applicant, the applicant completes the hosted flow (in the browser or inside your app), and OKYC sends your backend a signed webhook with the decision.

Golden rules

  • Secret keys stay on your server. Browsers and apps only ever get the session url (it carries a short-lived client token), never an sk_… key.
  • The webhook is the decision. Events in the browser or app are for your UI; grant access only after session.approved (or GET /v1/sessions/:id) on your backend.
  • Test first. sk_test_… keys use mocked providers and sandbox values, cost nothing, and never send real OTPs.

Always in step with the API

The API reference and the tables of events, results, failure codes, SDK options and error codes are generated from the same definitions the API and SDKs are built from. Code samples come from example apps that are compiled and tested. When the API or an SDK changes, these pages change with it.

On this page