Task
Confirm that the number’s owner is performing the action: app login, payment or transfer, withdrawal, phone or account detail change, accepting an offer.
Flows
Login
- The customer enters a phone.
- The backend calls
/otp/send. - The customer enters the code.
/otp/verify→ you create a session.
Transaction confirmation
- Send a separate code for each risky action and bind it to that specific operation on your server.
- Short TTL and a limited number of attempts: /faq/ttl-koda.
- Execute the operation only after a successful verify.
Phone or account detail change
- Confirm both the old and the new number if your process allows it.
Security and audit
- The API key lives only on the backend, never in a mobile app or browser.
- Store delivery and verification events, not the code. Statuses arrive via webhooks.
- Limit sends per number and per user: /api/rate-limits.
Channels and price
- WhatsApp / Telegram — 3 ₸ per delivered code.
- SMS — 8 ₸, the cascade fallback channel.
- You pay only for successful delivery. Packages: /pricing.
Deep dive: /blog/otp-dlya-fintech. Related use cases: /use-cases/saas, /use-cases/ecommerce. Integration guide: /docs.