Skip to main content

The OTP Platform
for Modern Apps

Ship OTP within minutes, send transactional SMS for orders, payments, and alerts, and reach customers at scale with bulk SMS campaigns.

driving sathi
affuzo
merobora
zyotis guru
chhapgar
phopal studios
gymsathi
driving sathi
affuzo
merobora
zyotis guru
chhapgar
phopal studios
gymsathi

Unify your fragmented OTP stack
with a single control plane for
delivery and verification.

Stop assembling your verification flow piece by piece. Running OTPs at scale usually means juggling carriers, fallback routing, template moderation, and logs across multiple vendors.

Branch Overview
main
test-2
test-1
dev-branch

Faster to ship. Go from code to running OTP in minutes. Test safely, promote when ready, roll back if needed.

Manage API Keys
prod key_01F8A3 active
staging key_02C9B7 revoked
test key_03E410 active
frontend key_04A92F active
backend key_05D77C expired
web key_06B2E9 active

Safer by default. Protect every endpoint with approved templates, spam blockers, and validation checks.

Control Plane

Simpler to run. One single unified platform for deployments, automatic carrier fallback, and full observability.

Usage 30 Days
12 Million
1w 2w 3w 4w 5w 6w

Visible from day one. Every request tracked, monitored, and displayed. Debug delivery latency before users notice.

Build & Deploy

Deploy in minutes. Roll back in seconds. Ship with confidence at any scale.

Infrastructure built for high delivery. Connect in minutes, configure fallback routing, preview live status, and monitor every attempt in real-time.

Step 01 // Connect

Connect your application

Lightweight SDKs, zero configuration

Link our lightweight client library in Node.js, Python, PHP, or Go. No complex routing configurations or low-level carrier API integrations needed. Just initialize with your API key.

index.js
import { NepalOTP } from '@nepal-otp/sdk';

const client = new NepalOTP({
  apiKey: 'key_prod_9f2a8c'
});

const response = await client.otp.send({
  phoneNumber: '+9779801234567',
  templateId: 'temp_verify_login'
});
UTF-8 // Javascript (ES6) // SDK Version 1.2.0
Step 02 // Configure

Define templates & priorities

Approved templates, automatic fallback

Configure approved SMS templates and dynamic routing priorities. Set primary channels through high-capacity NTC/Ncell direct pipelines, with automatic rollover paths if latency spikes.

Routing Priority Console

Traffic Routing Policy

Automatic Failover Enabled
01

NTC Gateway Direct

Latency: 1.1s // Uptime: 99.8%

Primary
02

Ncell Direct Tunnel

Latency: 1.4s // Uptime: 99.5%

Fallback
Health status: healthy Carrier response code: 000 (Success)
Step 03 // Deploy

Deliver verification codes

Direct carrier channels, sub-2s delivery

Generate and transmit secure one-time passcodes with minimal latency. Direct-to-telecom integration ensures delivery in under 2 seconds to local subscribers nationwide.

9:41 AM
5G
N

NEPAL_OTP

Direct Carrier Channel

Your OTP verification code is 482910. Valid for 5 minutes.
Delivered via NTC Direct
Delivered in 1.4s
Step 04 // Monitor

Trace attempts in real-time

Live WebSocket stream, full latencies

Watch every transaction travel through the network. Full delivery logs, carrier responses, latencies, and conversion stats are instantly visible in your dashboard console.

Live Delivery stream
Filter: All Live
POST /v1/otp/send
1.12s 200 OK
POST /v1/otp/send
1.34s 200 OK
POST /v1/otp/verify
80ms 200 OK
WARN Retry request code: verified
45ms 409 CONFL
Connection status: STABLE WebSocket: Connected
Step 05 // Verify

Confirm codes on the server

Secure validation, automatic rate limits

Verify security codes seamlessly. Pass the customer's phone number and the input code, and our gateway handles expiry verification, attempt counts, and status logic automatically.

verify-otp.js
const result = await client.otp.verify({
  phoneNumber: '+9779801234567',
  code: '482910'
});

if (result.valid) {
  console.log('Access granted!');
}
// Response payload received
{ "valid": true, "status": "verified", "attempts": 1 }
Delivery Infrastructure

Secure and scalable OTP delivery
for Nepal's telecom ecosystem.

Stop juggling carriers, templates, and fallback routing across multiple vendors. Nepal OTP gives you one infrastructure layer for every OTP delivery need.

Encryption

End-to-end encrypted. Every OTP payload is encrypted in transit. Zero plaintext storage, zero compromise risk.

Multi-carrier Routing
nepal-otp-api ncell-gw ntc-gw ktm pkr brt

Multi-carrier routing. Requests route to the nearest active telecom gateway for lowest latency delivery.

Spam Detection

Fraud blocked early. Validate requests to catch abusive OTP patterns before they reach delivery.

Rate Limits
| rule | status | limit | window
| otp_send| Passed| 10| 1m
| otp_verify| Passed| 5| 1m
| resend_otp| Passed| 3| 10m
| webhooks| Passed| 500| 1m
| brute_force| Blocked| 50| 5s
| bulk_send| Passed| 100| 1m

Rate limits. Set per-app and per-phone limits, enforced at the API edge.

Analytics
Delivered 0 % success rate
Avg Latency 0 ms delivery
Blocked 0 spam / day
Uptime 0 % SLA

Real-time analytics. Access live delivery stats and carrier breakdown — no custom instrumentation needed.

High availability

Nepal OTP distributes across multiple telecom failover carriers so your users always receive their code on time.

Proactive fraud protection

Instantly revoke OTP sessions and block abusive phone numbers with immediate effect across all delivery channels.

Webhook integrations

Get real-time delivery callbacks on send, verify, and failure events — pipe them directly into your stack.

Observe

Stay in sync with your traffic in real time. Every request is logged. Every decision is visible.

Automatic logs and metrics collection.

Captures verifications, rate limits, audit logs, HTTP request/response logs, and much more automatically.

Spot spikes and unusual patterns.

Use metrics to flag anomalies, errors, and performance issues — and feed signals into your alerting stack.

Debug and explore in the dashboard.

Filter by deployment, user, region, custom tags, and status to quickly understand what's going on.

Query via API, from your own systems.

Run analytics queries over your verification data via the HTTP API from your stack.

AIO Developer Portal

Ship OTP in minutes,
not weeks. Batteries included.

Integrate in under 5 minutes. A single API call is all it takes to send a verified OTP to any number in Nepal.

Beautiful API docs. OpenAPI-generated documentation, hosted by Nepal OTP and always in sync.

Keys and usage, self-serve. Users manage their API keys and view usage without support requests.

Start verifying users today.

Get your API key in minutes. Test in sandbox. Ship when you're ready.

Signup now