Een QR-code voor een telefoonnummer bevat geen URL. Hij bevat de tekst tel:+14155552671, en de scanner herkent het tel:-voorvoegsel en geeft het door aan het toetsenbord met het nummer al ingevuld. Hij belt nooit zelf, op geen enkele telefoon die ik heb getest.
Dezelfde truc dekt twee buren: SMSTO: opent een sms, mailto: opent een e-mail. Drie schema's, drie payloadformaten, en één gedeeld addertje dat generatorsites vaak overslaan - een code die zo is gebouwd, codeert een actie in plaats van een webverzoek, waardoor hij nooit kan worden bewerkt of geteld. Dit artikel heeft de exacte payloads, wat elk ervan doet op een echte telefoon, en wanneer je in plaats daarvan een link moet gebruiken. Voor de bredere printworkflow behandelt een QR-code-campagne vanaf nul planning tot en met meting.
De drie payloads, uitgeschreven
Elk van deze is platte tekst die wordt doorgegeven aan elke generator die vrije tekst accepteert. Er is geen URL bij betrokken.
tel:+14155552671
SMSTO:+14155552671:Hi Acme, I saw the flyer
mailto:[email protected]?subject=Quote%20request&body=Hi%20team
Het tel:-schema komt uit RFC 3966, die expliciet stelt dat een telephone URI een globaal nummer moet dragen - de + en de landcode - in plaats van een lokaal nummer. Het sms:-schema is RFC 5724; SMSTO: komt helemaal niet uit die RFC, maar uit de oudere QR-conventies, en het blijft de vorm met de breedste scannerondersteuning, wat verklaart waarom generators het nog steeds gebruiken. E-mail is RFC 6068, waar subject en body gewone queryparameters zijn.
Dat laatste detail is waar de meeste met de hand gebouwde payloads stuklopen. De subject en body moeten URL-encoded worden, zodat een spatie %20 is en een ampersand binnen je bericht %26. Laat je een rauwe & in de body staan, dan wordt alles daarna gelezen als een andere parameter, waardoor de helft van je bericht verdwijnt. URL-encoding uitgelegd heeft de volledige tekenlijst als je deze met de hand schrijft.
Wat er echt gebeurt wanneer iemand scant
Goed om te weten voordat je print, want het gedrag is minder automatisch dan de marketingtekst op generatorsites suggereert.
Een tel:-scan opent het toetsenbord met het nummer zichtbaar en nog maar één tik te gaan. Niets belt vanzelf, wat een bewuste beveiliging is en geen bug, en het betekent dat "scan om te bellen" in werkelijkheid "scan om het nummer voor je te laten intypen" is.
Een SMSTO:-scan opent de berichten-app met de ontvanger ingesteld en, meestal, het bericht al in het conceptvak. Het bericht is het onderdeel dat varieert: sommige telefoons en sommige berichten-apps van derden laten de voorgevulde tekst vallen en houden alleen het nummer over. Houd daar rekening mee. Is de tekst functioneel belangrijk - een keyword dat je nodig hebt voor routing, bijvoorbeeld - print hem dan ook naast de code.
Een mailto:-scan opent wat de persoon ook heeft ingesteld als mailapp. Op een telefoon zonder ingesteld mailaccount lijkt de scan helemaal niets te doen, wat de moeite waard is om te onthouden bij een consumentenpubliek.
| Payload | Wat opent er | Voorgevuld | Belangrijkste addertje |
|---|---|---|---|
tel:+1... | Toetsenbord | Nummer | Belt nooit automatisch; heeft de landcode nodig |
SMSTO:+1...:text | Berichten-app | Nummer, meestal de tekst | Voorgevulde tekst is niet gegarandeerd |
sms:+1...?body=text | Berichten-app | Nummer, soms de tekst | Standaard, maar minder breed ondersteund dan SMSTO |
mailto:a@b?subject= | Standaard mailapp | Adres, subject, body | Stille no-op als er geen mailapp is ingesteld |
Schrijf het nummer in E.164, anders werkt het niet in het buitenland
+14155552671, niet 0415 555 2671, en niet (415) 555-2671. Het internationale formaat is gestandaardiseerd als E.164 door de ITU: een + vooraan, de landcode, dan het nationale nummer zonder spaties, streepjes of haakjes.
Een nummer in nationaal formaat werkt correct voor een scanner in dat land en faalt voor iedereen anders, wat de reden is waarom een geprinte bel-me-code vaak perfect werkt voor het team dat de proefdruk keurde en voor niemand op de vakbeurs. Interpunctie is de andere helft: sommige toetsenborden strippen spaties en streepjes, andere behandelen ze als cijfers die gebeld moeten worden, en een haakje heeft weleens de parse voortijdig beëindigd.
Zet je campagnelinks en codes op je eigen domein en je krijgt dezelfde generator plus de analytics die deze directe payloads je niet kunnen geven.
Het addertje: deze codes kunnen niet worden veranderd of geteld
Beide beperkingen komen uit hetzelfde feit. Een tel:-, SMSTO:- of mailto:-payload is een instructie aan de telefoon, geen verzoek aan een server. Er wordt niets op internet aangesproken, dus er is niets te tellen en niets om te ompointen.
Dat betekent twee dingen voor alles wat geprint is. Het nummer is permanent voor de levensduur van het object: een nieuwe kantoorlijn, een verhuisd salesteam, of een overstap van berichtenprovider maakt de code verkeerd, en opnieuw printen is de enige oplossing. En je zult nooit weten of de code heeft gewerkt, omdat een scan die een toetsenbord opent, nergens een spoor achterlaat dat je kunt zien. Dynamische versus statische QR-codes behandelt dat onderscheid in het algemeen, en verlopen QR-codes behandelt wat er nog meer stilletjes kan stoppen met werken na een drukoplage.
Het alternatief is één laag indirectie. Codeer een korte link naar een kleine pagina met een belknop, een berichtknop en een e-mailknop, allemaal gebouwd met dezelfde schema's. Nu is de scan een webverzoek: hij wordt geteld, de bestemming is bewerkbaar wanneer het nummer verandert, en de pagina kan openingstijden bevatten of een formulier voor mensen die om 2 uur 's nachts scannen. De prijs is één extra tik voor de bezoeker.
Wanneer een direct schema nog steeds juist is
Twee gevallen, en ze zijn reëel:
- Een nummer dat niet gaat veranderen en niet gemeten hoeft te worden. Een sticker voor liftonderhoud, een interne helpdesklijn, een plaquette naast een machine. De directe payload is korter, wat een kleinere code betekent, en hij werkt voor altijd zonder service erachter.
- Een plek zonder betrouwbare connectiviteit. Een
tel:-scan werkt in een parkeergarage in de kelder; een korte link kan niet worden opgelost zonder netwerk.
Buiten die gevallen verdient de indirectie zijn extra tik. Hoe je QR-codescans bijhoudt behandelt wat je terugkrijgt zodra de scan een verzoek wordt.
Test voordat je print
Vier controles, en de tweede is degene die mensen overslaan:
- Scan met de standaard camera-app op zowel een iPhone als een Android-telefoon. Scanner-apps van derden zijn toegeeflijker dan de ingebouwde, dus een code die alleen werkt in een scanner-app is een code die het in het echte leven niet zal redden.
- Scan met een telefoon uit een ander land, of in ieder geval met een andere regio-instelling. Dit is wat een ontbrekende landcode aan het licht brengt.
- Controleer of het voorgevulde bericht bewaard is gebleven, en bepaal wat er gebeurt als dat niet zo is.
- Print een proefdruk op definitief formaat en scan hem in slecht licht op de afstand waarop een echt persoon zal staan. Hoe groot moet een QR-code zijn heeft de afstandsregels.
Degene waardoor ik ben verrast, is de mailapp. Een mailto:-code die is goedgekeurd op een werktelefoon met Outlook geconfigureerd, ziet er perfect uit, en doet helemaal niets op een consumententoestel waar nooit een e-mailaccount is toegevoegd. Is e-mail de belangrijkste call-to-action, zet er dan een link naast.
Lees de cornerstone-serie
Dit artikel valt onder de tutorials-cluster. Voor de hele opbouw gaat een QR-code-campagne vanaf nul van planning naar meting, en hoe je een QR-code maakt behandelt de keuze tussen statisch en dynamisch.
Gerelateerd op de blog
- vCard-QR-codes voor visitekaartjes die echt worden opgeslagen
- WiFi-QR-code: verbind met een netwerk zonder een wachtwoord te typen
- Dynamische versus statische QR-codes: wat er echt verandert
- Verlopen QR-codes? Wat er stuk kan gaan en hoe je het voorkomt
- Hoe je een klikbare link maakt in e-mail, social en HTML
Veelgestelde vragen
Hoe maak ik een QR-code voor een telefoonnummer?
Codeer de tekst tel:+14155552671 in plaats van een URL. Elke generator die vrije tekst accepteert, kan dit. Wanneer iemand hem scant, opent zijn telefoon het toetsenbord met het nummer al ingevuld en wacht op een druk op bellen - hij belt nooit vanzelf, niet op iOS en niet op Android.
Wat is de payload voor een sms-QR-code?
SMSTO:+14155552671:Je bericht hier is de vorm met de breedste scannerondersteuning, en sms:+14155552671?body=Je%20bericht is de standaard uit RFC 5724. Ondersteuning voor het voorgevulde bericht is het onderdeel dat varieert tussen telefoons en berichtenapps, dus behandel de tekst als een leuke extra en het nummer als datgene wat moet werken.
Hoe maak ik een e-mail-QR-code met een onderwerpregel?
Codeer mailto:[email protected]?subject=Offerte%20aanvraag&body=Hoi%20team. De subject en body zijn queryparameters gedefinieerd door RFC 6068, en beide waarden moeten URL-encoded worden, wat verklaart waarom een spatie verschijnt als %20. De scan opent de standaard e-mailapp van de persoon met de velden al ingevuld.
Heeft een QR-code voor een telefoonnummer de landcode nodig?
Ja, en met een plusteken vooraan. Schrijf hem in E.164-vorm, dus +14155552671 en niet 0415 555 2671 of (415) 555-2671. Een nummer in nationaal formaat werkt alleen voor een scanner in dat land en faalt stilletjes voor iedereen anders, wat de meest voorkomende reden is waarom een geprinte bel-me-code werkt voor het team dat hem heeft getest en voor niemand anders.
Kan ik bijhouden hoeveel mensen een telefoon- of e-mail-QR-code hebben gescand?
Niet met een directe tel:-, SMSTO:- of mailto:-payload. Die coderen een actie in plaats van een webverzoek, waardoor niets een server bereikt die het zou kunnen tellen. Heb je het aantal nodig, codeer dan in plaats daarvan een korte link naar een kleine pagina met de bel- en berichtknoppen, en lees de klikken daar af.
Wat gebeurt er als het telefoonnummer verandert na het printen?
Een directe tel:-code wordt permanent verkeerd, omdat het nummer in het patroon is vastgebakken. Opnieuw printen of ompointen - en ompointen bestaat alleen als de code een link codeert die jij beheert in plaats van het nummer zelf. Codeer bij alles met een levensduur langer dan de campagne een link.
Probeer Elido
Plak een URL, krijg een werkende korte link
Geen aanmelding nodig. Link blijft 30 dagen actief. Meld je aan om hem voor altijd te bewaren.
Gratis, geen aanmelding nodig · 2 per dag