Developer experience

Built the way you'd build it.

Clean APIs, predictable responses, and docs that keep you moving. Go from zero to production in an afternoon.

Quickstart Node.js
npm install nepalotp

import NepalOTP from "nepalotp"

const client = new NepalOTP({ apiKey: "sk_live_..." })
await client.otp.send({
  phone: "+9779812345678",
  channel: "sms"
})

SDKs

Node, Python, PHP

CLI

Local testing

Tooling

Everything you need to build fast.

From sandbox testing to production monitoring, keep control of every send.

Sandbox mode

Full API access with predictable test responses.

Webhooks

Delivery callbacks for sent, delivered, failed.

CLI tooling

Generate keys, test sends, inspect logs.

Security defaults

Rate limits, expiry, idempotency built-in.

Observability

Delivery metrics and verification analytics.

Clear docs

Examples, edge cases, and guides.

API clarity

Simple requests, predictable responses.

Two endpoints cover the entire verification flow: send an OTP, then verify it. Every response includes status, timestamps, and clear error codes.

Error-safe, idempotent requests
Sample response
{
  "id": "otp_9x8k2m3n4p5q",
  "status": "verified",
  "verified_at": "2024-01-15T10:02:34Z"
}

Latency

<2s average

Retries

Safe defaults

Ship faster with NepalOTP.

Start in sandbox, connect to production when ready.