Reverse OTP over WhatsApp
Say hi.
You're verified.
Your users send one WhatsApp message instead of typing a code. HiVouch matches it to their number in about three seconds. No SMS bills, nothing to intercept, and you pay only when a user is verified.
- ~3 s median
- No code to type
- Pay on success
Built for apps in Egypt and the Gulf
- Acme Wallet
- Nilepay
- Souq Cart
- Masar Health
- Rakeeb
How it works
The message travels the other way
- 1
Tap
Your user taps "Say hi on WhatsApp". WhatsApp opens with the greeting already written.
- 2
Send
They press send. The greeting carries a one-time token tied to their session.
- 3
Vouched
HiVouch matches the token to the sender's number, replies "Vouched", and calls your webhook.
Compared with SMS
Cheaper than SMS, and nothing to type
| SMS OTP (local route) | HiVouch | |
|---|---|---|
| Cost per verified user, Egypt | $0.012-0.026 | $0.003-0.007 |
| What the user does | Waits, copies and types 6 digits | Taps, then presses send |
| Failed and resent attempts | You pay for every SMS sent | Free |
| SMS-pumping fraud | Exposed | Not possible: the user sends |
| What it proves | Someone could read the code | The SIM itself sent the message |
SMS range from public SMS A2P package prices (2026) at 1.1 messages per verified user. HiVouch range from Egypt package prices.
Pricing
Pay only when a user is verified
100 free verifications every day. After that, one price list in USD for every country. Failed, expired and abandoned attempts are always free.
3,000
verifications
$5
$0.0017 each
10,000
verifications
$10
$0.0010 each
50,000
verifications
$40
$0.0008 each
300,000
verifications
$200
$0.00067 each
1,000,000
verifications
$500
$0.0005 each
For developers
Live in an afternoon
Use the hosted page as a standard OpenID Connect provider, drop in the widget, or call the REST API. Signed webhooks, idempotent requests and a full test mode come with every account.
- Works with Auth0, Keycloak, Supabase and Firebase
- SDKs for Node, Python, PHP, Go, Java and .NET
- Web widget plus iOS, Android, Flutter and React Native
const v = await hivouch.verifications.create({
phone: "+201005550142",
locale: "ar",
});
// Show v.wa_link as a button or QR code.
// Your webhook receives:
{
"type": "verification.verified",
"data": { "object": {
"id": "ver_01JC8Z4Q7M",
"verified_phone": "+201005550142",
"latency_ms": 2840
} }
}Start with 100 free verifications a day
Test mode right away. No card needed until you buy a package.