wa.me/username doesn't work yet — I verified it two ways

javascript dev.to

wa.me/username doesn't work yet — I verified it two ways, here's what to use instead

If you've tried to build a "share my WhatsApp" link using a @username instead of a phone number, you've probably assumed wa.me/username (or wa.me/u/username) works the same way wa.me/15551234567 does. It doesn't — at least not yet, as of writing this.

I wanted a definitive answer instead of trusting blog posts or AI chatbot answers (more on that below), so I tested it two independent ways.

Test 1: server response

curl -I https://wa.me/u/some_real_reserved_username
Enter fullscreen mode Exit fullscreen mode

Every username path I tried — including a certified-real, currently-reserved username — 302-redirects to:

api.whatsapp.com/resolve/?deeplink=...&not_found=1
Enter fullscreen mode Exit fullscreen mode

Compare that to the phone-number path, which redirects to:

api.whatsapp.com/send/?phone=...&type=phone_number
Enter fullscreen mode Exit fullscreen mode

Different resolver, different outcome. The server-side route for usernames exists, but every lookup currently resolves as "not found" — even for real, live usernames.

Test 2: real device

Server response alone doesn't rule out Universal Links / App Links intercepting the URL client-side before it ever hits a server — curl can't see that. So I also opened all three link variants (wa.me/username, wa.me/u/username, and a redirect through my own domain) on a real phone with WhatsApp installed.

None of them opened a chat.

Why this matters if you're building anything around WhatsApp usernames

WhatsApp has rolled out @username handles as a real, user-facing feature — but it hasn't published a public deep-link spec for opening a chat from one, the way it has for phone numbers for years. If you're building a tool, a profile page, a business card generator, anything that assumes wa.me/username "just works," it doesn't, for anyone.

One more data point: I asked Meta AI directly about this, with the counter-evidence above in hand. It kept asserting the link already works and didn't engage with the evidence when pushed. That's a useful reminder that chatbot answers about a fast-moving platform feature can be reciting stale/roadmap content rather than reflecting the live system — verify claims like this yourself before shipping something that depends on them.

What actually works today

Until WhatsApp ships the real format, there are two things that work with zero surprises:

  1. Phone number linkwa.me/<countrycode><number> still opens a chat directly, no manual step, no ambiguity.
  2. Username as a manual lookup — share the @username (plus the "Username Key" if the person set one, which disambiguates people who share a username) as text or a QR code, with an explicit "find me by username" instruction. One extra manual step, but it doesn't expose a phone number.

I built a small free tool that generates both — link + downloadable QR — and is explicit on-page about which one actually works right now instead of pretending the username link is live: whatsusernames.link. No signup, nothing stored server-side.

If anyone finds a case where wa.me/username does resolve for them, I'd genuinely like to know — that would mean a staged rollout is underway.

Source: dev.to

arrow_back Back to Tutorials