WhatsApp QR code generator
Scanning opens a WhatsApp chat with you, with the first message already written. No contact saved, no number typed, no app-specific scanner needed.
100% client-side•no WhatsApp account needed to make it•free
WhatsApp chat
Digits only in the code: no +, no spaces, no dashes — those are stripped for you. What is not stripped is a national leading zero: UK 07700 900123 must be entered as 44 7700 900123, or the chat opens to the wrong number.
The message is prefilled in the chat box, unsent, and the sender can edit it.
Options
Center logo
Your image is read in this tab with FileReader and drawn straight onto the code — it is never uploaded.
Enter a number with its country code to mint your WhatsApp code.
What happens when someone scans this
This code holds an ordinary https://wa.me/ link, which is why it works everywhere: a scanner does not need to know anything about WhatsApp, only how to open a URL. The phone opens the link, wa.me hands off to the WhatsApp app if it is installed — or to WhatsApp Web in a desktop browser — and the chat with your number opens with your message typed into the box and not sent. The person scanning reads it, edits it if they want, and presses send.
Worth knowing before you print it: the link goes through wa.me, which is Meta's own redirect, so the hop is a third party in the chain rather than a direct handover the way tel: or mailto: is. If the number has no WhatsApp account attached, the scan lands on a page saying the phone number shared via url is invalid — that error means the number, not the code, so test yours by scanning it once before it goes on anything printed.
Getting the number right
This is where these codes fail, and it fails silently: wa.me wants the full international number in digits, and a number in national format looks perfectly valid while pointing somewhere else entirely. Take your number as you would dial it from abroad — country code first, then the number without its national trunk prefix. UK 07700 900123 becomes 447700900123. US (555) 010-9999 becomes 15550109999. A leading 00 typed instead of + is removed for you, because that is the same international prefix written another way. A single leading zero is deliberately left alone: it almost always means the country code is missing, and deleting it quietly would turn a code that fails obviously into one that opens a chat with a stranger.
A WhatsApp code and a phone-call code are worth putting side by side on a shop window: one starts a chat, the other starts a call, and people choose. If you want the details saved rather than a message opened, use the contact card.
Frequently asked questions
Do I need a WhatsApp Business account?
No. A wa.me link works with any WhatsApp account. Business accounts get their own official code inside the app, which also carries a catalogue link — this one is a plain chat opener that works with a personal number too.
Can I change the message later?
No — the message is inside the code itself, so a new message means a new code. If the wording is going to change, encode only the number and leave the message empty.
Does the person scanning see my number?
Yes. The chat opens with your number, and it stays visible whether or not they send anything. Use a business line, not a personal one, on anything public.
Does it work if WhatsApp is not installed?
The link still opens; wa.me shows a page offering to continue in the browser or install the app. Nothing breaks, but the chat does not open in one tap.