Configure
Link a project to an API key and SMTP. Choose OTP kind, length, attempts, and expiry minutes.
Universal OTP
Secure delivery layer
Universal OTP System
Protect logins, registrations, and recoveries with a shared OTP platform — generate, deliver, and verify without rebuilding security for each app.
Overview
Identity checks are where trust breaks. Universal OTP System keeps that trust consistent across projects, teams, and channels.
The idea
Every product eventually needs proof of presence: “is this really you?” Most teams invent that proof again and again — different lengths, different email templates, different expiry rules, different bugs. Universal OTP System turns that chaos into a deliberate platform: projects, keys, SMTP, generation, delivery, and verification under one roof.
Your apps call an API. The platform does the careful work — create the code, send it safely, remember the hash, enforce attempts, expire on time.
Process
From configuration to inbox to verification — the full OTP path lives in one system.
Link a project to an API key and SMTP. Choose OTP kind, length, attempts, and expiry minutes.
Modules create a cryptographically random code matching the configured alphabet and length.
Delivery goes through your SMTP provider — Gmail, Outlook, Zoho, or custom — owned by the developer.
Incoming codes are checked with hashed storage, attempt ceilings, and expiry windows.
Catalogue
Seeded OTP uses cover the moments where users prove identity. Admins can extend the list anytime.
OTP kinds
OTP kinds decide what the code looks like — digits for SMS-style flows, mixed for stronger entropy, alphabet-only or special symbols when your product needs it.
481903
Classic numeric codes users type quickly.
A7k2Qm
Higher entropy without leaving the keyboard.
HkLmNp
Letter-based codes for branded experiences.
A!7#q*
Extra character space when policy demands it.
Console
Universal OTP System is not only an API — it is an operations surface for people who own security.
Organize work by product. Invite developers and support with clear ownership.
Create keys first, then link them to one or many projects. Copy secrets once. Soft-delete when done.
Each developer owns encrypted SMTP settings — host, port, SSL, from-name, default provider.
Wire project + API key + SMTP + OTP kind + length + attempts + expiry into a living policy.
Admins shape access. Developers stay focused on delivery. Support stays in its lane.
Generate, send, and verify live in dedicated modules — clean boundaries, easier evolution.
Access
Different people need different doors. The system keeps those doors honest.
Admin
Developer
Security posture
Lifecycle
Follow one OTP from the moment a product asks for trust to the moment trust is confirmed.
Integration
Send and verify OTPs over simple HTTP endpoints. Your products stay thin; security stays centralized.
POST /api/v1/otp/send
{
"email": "user@example.com",
"projectCode": "MYAPP",
"apiKey": "sk_live_..."
}
Base URL: http://localhost:5289 · Endpoints: /api/v1/otp/send and /api/v1/otp/verify
Outcomes
“Fewer one-off OTP bugs scattered across products.”
“Policy changes without redeploying every client.”
“A clear story for auditors: generate, send, verify, expire.”
“Developers move faster because the hard path already exists.”
Universal OTP System
Configure once. Call the API. Let the platform carry the weight of trust — so your teams can build features instead of reinventing codes.