XionID — Secure OTP (SMS) verification API for your app
XionID provides an API you can integrate into your codebase to send OTP codes and verify users. Built for production: secure code lifecycle, rate limits, and clear delivery reporting.
Features you need for OTP in production
Security + reliability + visibility — without complexity.
Time-limited codes, one-time verification, and safe invalidation.
- Configurable TTL
- Single-use verification
- Hash storage for codes
Prevent spam and brute-force attempts.
- Per phone number limits
- Per IP / app limits
- Cooldowns & lockouts
Track sent, delivered, failed — with timestamps.
- Delivery status
- Error reasons
- Monthly usage
How it works
Two endpoints (send + verify). Easy integration.
We provide credentials for your project.
Call our endpoint with phone number and OTP settings.
Confirm OTP and complete login/signup flow.
Track usage and delivery logs in the dashboard.
Pricing
Simple monthly packages based on SMS volume.
- • Basic rate limits
- • Delivery logs
- • Email support
- • Higher rate limits
- • Delivery + error reasons
- • Priority support
- • Volume discounts
- • Dedicated routing options
- • SLA by agreement
* Pricing covers the service and dashboard. SMS carrier pricing may vary by destination in custom plans.
API integration
Use your API key and call send then verify. Below is a sample (replace base URL and key).
Use Authorization: Bearer '<API_KEY>' for server-to-server calls.
- Call from your backend (not directly from mobile/web)
- Apply your own per-user rate limits in addition to ours
- Store verification state in your DB after success
curl -X POST "https://api.YOURDOMAIN.com/v1/otp/send" \
-H "Authorization: Bearer <API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"phone": "+374XXXXXXXX",
"channel": "sms",
"ttlSeconds": 120
}'curl -X POST "https://api.YOURDOMAIN.com/v1/otp/verify" \
-H "Authorization: Bearer <API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"phone": "+374XXXXXXXX",
"code": "123456"
}'{
"ok": true,
"status": "verified",
"verifiedAt": "2026-02-12T12:00:00Z"
}Get started with XionID
Tell us your app type, expected SMS volume, and countries — we’ll set up your API key and plan.