Most OTP providers charge you the moment your code hits "Send." We don't.
We only charge when a message actually delivers to the recipient's WhatsApp. If Meta drops it, if the recipient's phone is off, if anything fails in between, you don't pay.
Here's why we do it this way, and why it matters for your bottom line.
The dirty secret of per-request pricing
When you call POST /verifyon most providers, you're charged for the attempt regardless of what happens next. If the recipient never receives the code, that's your problem; the bill is the same.
This sounds fine until you look at the numbers. Industry-wide WhatsApp delivery rates hover around 96–98% for legitimate traffic, meaning 2–4% of every OTP bill is for messages that never arrived.
For a SaaS doing 50,000 verifications a month at $0.02 per attempt, that's $20–$40 every month paying for nothing. During an outage or carrier dispute where failure rates spike above 10%, that number climbs fast.
How Wevlix's pay-on-delivery actually works
When you call our send endpoint:
- Wevlix queues the message and hands it off to Meta's WhatsApp Business Cloud API.
- Meta attempts delivery. If it succeeds, Meta sends us a delivery webhook.
- Only on the delivery webhook do we deduct from your wallet.
- If the message fails, expires, or is blocked, no charge is recorded.
You can verify this in real time on the dashboard: every charge has a delivery ID from Meta tied to it. If you don't see the delivery, you don't see the charge.
Why this matters
Three reasons:
- Your bill matches your value. You pay for OTPs that actually verified a user, not for failed attempts.
- Outage protection.If we have a bad day, you don't pay for it.
- Honest unit economics. When you model cost-per-verified-user, the math works because every line in your invoice is a successful delivery.
What happens when a message fails?
You'll see it in your dashboard with a clear status code (e.g., recipient_unreachable, template_paused, rate_limited). No charge appears on your wallet for that send.
You can retry through a fallback channel, which, when we ship SMS fallback in v1.1, will be one webhook event away.
The tradeoff
Pay-on-delivery isn't free for us. We absorb the cost of attempted-but-failed sends from Meta. We bet that being honest about pricing wins customers in the long run, and that those customers stick around.
Try it for yourself: sign up, get $0.50 in credit, and send a real OTP. Your wallet won't budge until it actually delivers.
The Wevlix Team
