Zum Inhalt springen
OmniChannels.ai

Kostenloses Tool

OTP-Nachrichten-Generator für SMS und WhatsApp

Erstellen Sie eine Nachricht mit Bestätigungscode, die in eine einzige SMS passt, sich auf Android und iPhone automatisch ausfüllt und der WhatsApp-Authentifizierungsvorlage von Meta entspricht. Mit Segmentzählung, fertigem API-Code und Sicherheits-Checkliste.

Kostenlos · ohne Anmeldung · im Browser

Erscheint in der Nachricht. Halten Sie ihn kurz: Jedes Zeichen zählt für eine einzelne SMS.

Min.
Codetyp
Beispielcode 482913
Kanal

Standard (Code zuerst)

482913 ist Ihr OmniDemo-Bestätigungscode. Er ist 5 Minuten gültig. Geben Sie ihn niemals weiter.

GSM-7 · 96 Zeichen · 1 SMS

Kurz

OmniDemo: Ihr Code lautet 482913. 5 Min. gültig. Nicht weitergeben.

GSM-7 · 67 Zeichen · 1 SMS

Passwort zurücksetzen

482913 ist Ihr OmniDemo-Code zum Zurücksetzen des Passworts. Er ist 5 Minuten gültig. Nicht angefordert? Ignorieren Sie diese Nachricht.

GSM-7 · 136 Zeichen · 1 SMS

Quellen: Google-SMS-Retriever-Doku, WICG-Spezifikation für ursprungsgebundene Einmalcodes, Apple-Doku zu Password AutoFill, Meta-Authentifizierungsvorlagen (geprüft am 10.10.2026).

Sie brauchen OTP per SMS, WhatsApp und Sprache mit automatischem Fallback und einer Rechnung? OTP & Benachrichtigungen ansehen

Ihre Eingaben werden nicht an unsere Server gesendet.

Kurze Antwort

Eine gute OTP-SMS nennt zuerst den Code, dann die Marke, die Gültigkeit und den Hinweis, ihn nie weiterzugeben, etwa: „482913 ist Ihr Acme-Code. Gültig für 5 Minuten. Geben Sie ihn nicht weiter.“ Bleiben Sie bei einem Segment (160 GSM-7- oder 70 Unicode-Zeichen) und ohne Links. Für Android-Autofill ergänzen Sie den 11-stelligen App-Hash, für iOS und Web enden Sie mit „@ihredomain.de #482913“.

So erstellen Sie eine OTP-Nachricht

  1. 1

    Marke und Code-Regeln festlegen

    Geben Sie den Namen Ihrer App oder Marke ein und wählen Sie die Codelänge (4 bis 8 Zeichen), nur Ziffern oder Buchstaben und Ziffern, sowie die Gültigkeit in Minuten.

  2. 2

    Sprache und Kanal wählen

    Englisch, Arabisch, Französisch, Spanisch, Deutsch oder Portugiesisch, dann SMS, WhatsApp oder beides. Arabisch wird als Unicode gezählt (70 Zeichen pro SMS).

  3. 3

    Autofill-Daten ergänzen

    Fügen Sie optional den 11-stelligen Hash Ihrer Android-App und Ihre Domain ein. Das Tool erzeugt das SMS-Retriever-Format, das domaingebundene und ein kombiniertes Format und prüft das 140-Byte-Limit.

  4. 4

    Nachricht oder Code kopieren

    Kopieren Sie eine SMS-Variante, das JSON der WhatsApp-Vorlage oder eine cURL- bzw. Node.js-Anfrage für unsere SMS-API und gehen Sie vor dem Go-live die Sicherheits-Checkliste durch.

Was eine gute OTP-SMS-Vorlage enthält

Eine Bestätigungsnachricht hat genau eine Aufgabe: den richtigen Code schnell an die richtige Person zu bringen, ohne Missbrauch zu erleichtern. Die meisten Nutzer lesen den Code in der Benachrichtigung auf dem Sperrbildschirm, die nur etwa die erste Zeile zeigt. Setzen Sie den Code deshalb an den Anfang oder möglichst weit nach vorn und machen Sie die Marke deutlich, damit klar ist, welcher Dienst ihn sendet.

Die Länge beeinflusst Kosten und Zuverlässigkeit. Eine GSM-7-SMS fasst 160 Zeichen, geteilt 153 pro Teil. Ein einziges Zeichen außerhalb des GSM-7-Alphabets (ein arabischer Buchstabe, ein Emoji, ein typografisches Anführungszeichen oder ein Gedankenstrich) stellt die ganze Nachricht auf UCS-2 um: 70 Zeichen bzw. 67 pro Teil. Die deutschen Umlaute ä, ö, ü und ß gehören dagegen zum GSM-7-Alphabet. Eine zweiteilige OTP kostet doppelt so viel. Der Generator zeigt Kodierung und Segmentanzahl jeder Variante an.

  • Code zuerst: „482913 ist Ihr Acme-Code“ steht in der Vorschau der Benachrichtigung.
  • Markenname: zeigt, welcher Dienst den Code sendet, und erschwert Phishing.
  • Gültigkeit: „Gültig für 5 Minuten“ setzt eine klare Erwartung und begrenzt Missbrauch.
  • Warnhinweis: „Geben Sie diesen Code an niemanden weiter, auch nicht an unsere Mitarbeiter.“
  • Keine Links: Netzbetreiber filtern OTPs mit URLs häufig, und Links gewöhnen Nutzer an Phishing.

Android-Autofill: das SMS-Retriever-Format

Mit der SMS Retriever API von Google kann eine Android-App die Bestätigungs-SMS ohne SMS-Berechtigung und ohne Eingabe lesen. Laut Google-Dokumentation darf die Nachricht höchstens 140 Byte lang sein, muss den Einmalcode enthalten und einen 11-stelligen Hash-String, der die App identifiziert. 140 Byte entsprechen 160 GSM-7- oder 70 UCS-2-Zeichen, die Nachricht muss also in eine einzige SMS passen.

Der Hash besteht aus den ersten 11 Zeichen eines Base64-kodierten SHA-256-Hashes aus Paketname und Signaturzertifikat. Googles Beispiel setzt ihn in eine eigene Zeile am Ende: „Your ExampleApp code is: 123ABC78“, eine Leerzeile, dann „FA+9qCX9VSu“. Berechnen Sie ihn aus dem Produktions-Keystore und hinterlegen Sie ihn fest auf dem Server; Google rät davon ab, auf dem Client berechnete Hashes zu verwenden. Ältere Fassungen der Dokumentation verlangten, dass die Nachricht mit „<#>“ beginnt. Die aktuelle Seite nennt dieses Präfix nicht mehr; es schadet nicht, kostet aber 4 Zeichen. Wenn Sie das Nachrichtenformat nicht steuern können, ist die SMS User Consent API die Alternative: Der Nutzer erlaubt mit einem Tipp das Lesen genau dieser Nachricht.

iPhone und Web: domaingebundene Codes

iOS und macOS erkennen Codes in eingehenden SMS und schlagen sie über der Tastatur vor, wenn das Feld als Einmalcode gekennzeichnet ist: textContentType = .oneTimeCode in einer nativen App oder autocomplete="one-time-code" bei einem HTML-Feld, wie in der Entwicklerdokumentation von Apple beschrieben. Seit iOS 14 und macOS Big Sur unterstützt Safari zudem ursprungsgebundene Einmalcodes nach der WICG-Spezifikation „Origin-bound one-time codes delivered via SMS“.

In diesem Format lautet die letzte Zeile „@example.com #747723“: die Domain mit vorangestelltem @, genau ein Leerzeichen, dann der Code mit vorangestelltem #. Ein optionaler dritter Wert, „@embedded.example“, nennt eine eingebettete Website. Lesbarer Text darf vor der letzten Zeile stehen, Text zwischen den Werten macht sie jedoch ungültig. AutoFill bietet den Code dann nur auf dieser Domain oder in damit verknüpften Apps an, was Phishing deutlich erschwert. Der Generator erstellt auch eine kombinierte Nachricht mit Android-Hash und Domain-Zeile, die bei lateinischer Schrift in 140 Byte passt. Auf Arabisch senden Sie die Android- und iOS-Formate getrennt.

WhatsApp-Authentifizierungsvorlagen: was Sie ändern können

WhatsApp schreibt für Einmalpasswörter eine Authentifizierungsvorlage vor, deren Text Meta festlegt. Auf Englisch lautet er „<code> is your verification code.“ Sie können Metas Sicherheitshinweis („For your security, do not share this code.“) und eine Ablauf-Fußzeile („This code expires in <N> minutes.“) ergänzen, wobei code_expiration_minutes zwischen 1 und 90 liegt. Jede Sprachversion nutzt Metas feste Übersetzung. URLs, Medien und Emojis werden nicht unterstützt.

Den Button wählen Sie selbst. „Code kopieren“ funktioniert überall. One-Tap-Autofill öffnet Ihre Android-App mit dem Code und benötigt Paketnamen, Signatur-Hash und einen Handshake. Zero-Tap (nur Android) hat keinen Button: WhatsApp übergibt den Code direkt an Ihre App. Ab iOS 26 bieten Tastaturvorschläge den Code aus der Benachrichtigung an, ohne Integration. Der Code darf bis zu 15 Zeichen lang sein und steht zweimal in der Sendeanfrage: als Body-Parameter und als Button-Parameter (sub_type „url“). Der Text des Kopieren-Buttons ist auf 25 Zeichen begrenzt. Setzen Sie message_send_ttl_seconds, damit veraltete Codes nicht verspätet zugestellt werden. Über die Cloud API gehen diese Nachrichten nur an das Hauptgerät des Nutzers.

Sicherheits-Checkliste und Fallback-Strategie

Die Nachricht ist der einfache Teil; Betrug und Kostenexplosionen entstehen meist durch schwache Regeln drumherum. Die folgenden Punkte sind verbreitete Empfehlungen, keine gesetzlichen Vorgaben. Passen Sie die Werte an Ihr Risiko an.

Stellen Sie die Zustellung als Kaskade auf: zuerst WhatsApp, wenn der Nutzer es hat, nach kurzer Wartezeit (etwa 30 bis 60 Sekunden ohne Zustellbericht) SMS und als letzte Option ein Sprachanruf, der den Code vorliest, für Festnetz und schlechte Abdeckung. In den Golfstaaten gilt OTP als Transaktionsverkehr, Werbevorgaben wie das „AD-“-Präfix in den VAE greifen daher nicht. Die Absenderkennung muss aber meist registriert sein. Prüfen Sie vor dem Start die lokalen Regeln.

  • 6 Ziffern sind üblich; erzeugen Sie Codes mit einem kryptografisch sicheren Zufallsgenerator.
  • Kurze Gültigkeit (5 bis 10 Minuten), Einmalnutzung und nur einen Hash des Codes speichern.
  • Sendungen pro Nummer und IP begrenzen, Wartezeit vor erneutem Senden erzwingen und nach etwa 5 Fehlversuchen sperren.
  • SMS-Pumping (künstlich aufgeblähter Traffic) verhindern, indem Sie nur die Zielländer freigeben, die Sie bedienen.
  • Den Code nie in einen Link oder eine URL packen und Nutzer nie bitten, ihn einem Mitarbeiter vorzulesen.

Fragen zu OTP-Nachrichten

Welches Format ist für eine OTP-SMS am besten?

Code zuerst, Marke, Gültigkeit und Hinweis, ihn nicht weiterzugeben, in einem Segment und ohne Links: „482913 ist Ihr Acme-Code. Gültig für 5 Minuten. Geben Sie ihn nicht weiter.“ Ergänzen Sie eine Zeile mit dem App-Hash für Android und „@ihredomain.de #482913“ als letzte Zeile für iOS und Web.

Wie lang darf eine OTP-SMS sein?

Zielen Sie auf ein Segment: 160 Zeichen in GSM-7 oder 70 in Unicode (etwa Arabisch). Googles SMS Retriever begrenzt die Nachricht auf 140 Byte, was derselben Grenze einer SMS entspricht. Längere Nachrichten werden in Teile zu 153 bzw. 67 Zeichen zerlegt und einzeln abgerechnet.

Braucht Android-Autofill noch das Präfix <#>?

Nein. Die aktuelle SMS-Retriever-Dokumentation verlangt drei Dinge: höchstens 140 Byte, den Einmalcode und den 11-stelligen App-Hash. Das Präfix „<#>“ stammt aus älteren Vorgaben; es schadet nicht, kostet aber 4 Zeichen.

Wie füllt sich ein OTP auf dem iPhone automatisch aus?

Kennzeichnen Sie das Feld als Einmalcode (textContentType .oneTimeCode in Apps, autocomplete="one-time-code" im Web). iOS schlägt dann Codes aus Nachrichten vor. Um den Code an Ihre Website zu binden, beenden Sie die SMS mit „@ihredomain.de #123456“, mit genau einem Leerzeichen zwischen beiden Werten.

Kann ich den Text einer WhatsApp-Authentifizierungsvorlage anpassen?

Nein. Meta legt den Text fest („<code> is your verification code.“) und übersetzt ihn pro Sprache. Sie können nur den Sicherheitshinweis, eine Ablauf-Fußzeile von 1 bis 90 Minuten und einen Button für Kopieren, One-Tap oder Zero-Tap wählen. URLs, Medien und Emojis sind nicht erlaubt.

Sollte ich OTPs per WhatsApp oder per SMS senden?

Am besten beides. WhatsApp bietet Buttons zum Kopieren und für One-Tap-Autofill und zeigt den verifizierten Firmennamen; SMS erreicht jedes Telefon, auch ohne Datenverbindung. Üblich ist: zuerst WhatsApp, nach 30 bis 60 Sekunden ohne Zustellung SMS, zuletzt ein Sprachanruf.

Warum wird meine arabische OTP in zwei SMS geteilt?

Arabischer Text nutzt die UCS-2-Kodierung, die nur 70 Zeichen pro einzelner SMS und 67 pro Teil erlaubt. Halten Sie den arabischen Text kurz, verwenden Sie westliche Ziffern für den Code und prüfen Sie die Zählung im Generator vor dem Versand.

Darf eine OTP-SMS einen Login-Link enthalten?

Besser nicht. Links in Bestätigungsnachrichten erleichtern Phishing, werden von Netzbetreibern häufiger gefiltert und gewöhnen Nutzer daran, Links in SMS anzutippen. Senden Sie nur den Code und lassen Sie ihn eintippen oder automatisch ausfüllen.

Weitere kostenlose Tools