2FA, Recovery & Settings Verification
Multi-channel 2FA where the user initiates. Reverse OTP means users send codes TO you - attackers can't intercept what they didn't start. Choose Telegram, WhatsApp, Reverse SMS, email, or wallet signature. Different channel than login = actual second factor.
Add an extra layer of security for sensitive user actions
Trigger Verification
User initiates 2FA, account recovery, or sensitive settings change. Request verification via their preferred channel.
Quick Confirmation
User sends a code via WhatsApp, Telegram, SMS, clicks an email magic link, or signs with their wallet.
Action Confirmed
We verify proof of control and confirm the action. Secure 2FA, recovery, or settings update complete.
Verification Channels
Let users choose how they want to confirm sensitive actions
API Integration
Add 2FA and recovery verification to your app in minutes
1. Create Verification Request
curl -X POST https://api.proof.holdings/api/v1/auth/sessions -H "Content-Type: application/json" -d '{
"channel": "whatsapp",
"phone_number": "+37069199199"
}'2. Verify the Proof Token
# Poll session status (user sends message to verify)
curl -X GET https://api.proof.holdings/api/v1/auth/sessions/SESSION_IDResponse Example
{
"id": "507f1f77bcf86cd799439011",
"type": "login",
"channel": "whatsapp",
"status": "pending",
"deep_link": "https://wa.me/14155238886?text=LOGIN_X7K9M2",
"qr_code": "data:image/png;base64,...",
"expires_at": "2026-03-15T10:40:00Z",
"instructions": "Open WhatsApp and send the message to log in"
}