Standar (kode di awal)
482913 is your OmniDemo verification code. It expires in 5 minutes. Never share this code with anyone.
GSM-7 · 102 karakter · 1 SMS
Alat gratis
Buat pesan kode verifikasi yang muat dalam satu SMS, terisi otomatis (autofill) di Android dan iPhone, serta sesuai dengan template autentikasi WhatsApp dari Meta. Dilengkapi jumlah segmen, kode API siap kirim, dan daftar periksa keamanan.
Gratis · tanpa pendaftaran · berjalan di browser Anda
482913 is your OmniDemo verification code. It expires in 5 minutes. Never share this code with anyone.
GSM-7 · 102 karakter · 1 SMS
OmniDemo: your code is 482913. Valid for 5 min. Don't share it.
GSM-7 · 63 karakter · 1 SMS
482913 is your OmniDemo password reset code. It expires in 5 minutes. If you didn't request it, ignore this message.
GSM-7 · 116 karakter · 1 SMS
Sumber: dokumentasi Google SMS Retriever, WICG origin-bound one-time codes, dokumentasi Apple Password AutoFill, template autentikasi Meta (dicek 10 Okt 2026).
Butuh OTP via SMS, WhatsApp, dan suara dengan fallback otomatis dan satu tagihan? Lihat OTP & notifikasi
Data yang Anda ketik di sini tidak dikirim ke server kami.
Jawaban singkat
SMS OTP yang baik menaruh kode di awal, menyebut nama brand, menyatakan masa berlaku, dan mengingatkan pengguna agar tidak membagikannya, misalnya: "482913 adalah kode verifikasi Acme Anda. Berlaku selama 5 menit. Jangan bagikan kode ini." Jaga agar pesan tetap satu segmen (160 karakter GSM-7 atau 70 karakter Unicode) dan jangan sertakan tautan. Untuk autofill Android, tambahkan app hash 11 karakter milik aplikasi Anda. Untuk iOS dan web, akhiri pesan dengan "@yourdomain.com #482913".
Ketik nama aplikasi atau brand Anda, lalu pilih panjang kode 4 sampai 8 karakter, hanya angka atau huruf dan angka, serta berapa menit kode tetap berlaku.
Pilih bahasa Inggris, Arab, Prancis, Spanyol, Jerman, atau Portugis, lalu pilih SMS, WhatsApp, atau keduanya. Pesan berbahasa Arab dihitung sebagai Unicode (70 karakter per SMS).
Secara opsional, tempelkan hash 11 karakter aplikasi Android Anda dan domain situs web Anda. Alat ini membuat format SMS Retriever, format terikat domain, dan format gabungan, lalu memeriksa batas 140 byte.
Salin salah satu varian SMS, JSON template WhatsApp, atau permintaan cURL atau Node.js untuk API SMS kami. Setelah itu, jalankan daftar periksa keamanan sebelum Anda go live.
Pesan verifikasi punya satu tugas: mengirim kode yang tepat kepada orang yang tepat dengan cepat, dan dengan cara yang sulit disalahgunakan. Sebagian besar pengguna membaca kode dari notifikasi layar kunci, yang hanya menampilkan baris pertama atau sekitarnya. Taruh kode di awal atau dekat awal pesan, dan buat brand tampak jelas agar pengguna tahu layanan mana yang mengirimnya.
Panjang pesan memengaruhi biaya dan keandalan. Satu SMS GSM-7 memuat 160 karakter. Begitu pesan dipecah, setiap bagian memuat 153 karakter. Satu karakter saja di luar alfabet GSM-7, seperti huruf Arab, emoji, apostrof melengkung, atau huruf beraksen seperti "ó" atau "ç", akan mengubah seluruh pesan menjadi UCS-2. Batasnya turun menjadi 70 karakter, atau 67 per bagian. OTP dua bagian berbiaya dua kali lipat dan memiliki peluang sedikit lebih besar salah satu bagiannya tiba terlambat. Generator ini menampilkan encoding dan jumlah segmen untuk setiap varian, serta dapat mengganti huruf beraksen dengan huruf biasa agar pesan berbahasa Spanyol, Portugis, dan Prancis tetap dalam GSM-7.
SMS Retriever API dari Google memungkinkan aplikasi Android membaca SMS verifikasi tanpa izin SMS dan tanpa pengguna perlu mengetik apa pun. Menurut dokumentasi Google, pesan tidak boleh lebih dari 140 byte, harus memuat kode sekali pakai, dan harus menyertakan string hash 11 karakter yang mengidentifikasi aplikasi Anda. Batas 140 byte itu setara dengan 160 karakter GSM-7 atau 70 karakter UCS-2, jadi dalam praktiknya pesan harus muat dalam satu SMS.
Hash tersebut adalah 11 karakter pertama dari hash SHA-256 berenkode base64 atas nama package dan sertifikat penandatanganan aplikasi Anda. Contoh dari Google menaruhnya di baris tersendiri di akhir: "Your ExampleApp code is: 123ABC78", satu baris kosong, lalu "FA+9qCX9VSu". Hitung hash dari keystore produksi Anda dan tanam secara permanen (hard-code) di server. Google menyarankan agar tidak memakai string hash yang dihitung secara dinamis di sisi klien. Dokumentasi versi lama mewajibkan pesan diawali "<#>". Halaman saat ini tidak mencantumkan awalan itu. Awalan tersebut tidak berbahaya, tetapi memakan 4 karakter. Jika Anda tidak dapat mengatur format pesan, alternatifnya adalah SMS User Consent API: pengguna mengetuk sekali untuk mengizinkan aplikasi Anda membaca satu pesan tersebut.
iOS dan macOS mendeteksi kode di SMS masuk dan menyarankannya di atas keyboard ketika kolom ditandai sebagai kolom kode sekali pakai: textContentType = .oneTimeCode di aplikasi native, atau autocomplete="one-time-code" pada input HTML, seperti dijelaskan dalam dokumentasi developer Apple. Sejak iOS 14 dan macOS Big Sur, Safari juga mendukung kode sekali pakai yang terikat origin, yaitu format yang didefinisikan dalam spesifikasi WICG "Origin-bound one-time codes delivered via SMS".
Dalam format itu, baris terakhir pesan berbunyi "@example.com #747723": domain dengan @ di depannya, lalu tepat satu spasi, kemudian kode dengan # di depannya. Nilai ketiga yang opsional, "@embedded.example", menyebutkan situs yang disematkan. Teks yang dapat dibaca manusia boleh berada sebelum baris terakhir. Teks lain di antara nilai-nilai tersebut membuat baris itu tidak valid. AutoFill lalu hanya menawarkan kode di domain tersebut atau di aplikasi yang terhubung dengannya, sehingga phishing jauh lebih sulit. Generator ini membuat pesan gabungan yang memuat hash Android dan baris terakhir terikat domain, dan untuk bahasa beraksara Latin tetap muat dalam 140 byte. Untuk bahasa Arab, kirim format Android dan iOS secara terpisah.
WhatsApp mewajibkan template autentikasi untuk mengirim kata sandi sekali pakai (OTP), dan Meta menetapkan isi pesannya secara baku. Dalam bahasa Inggris bunyinya "<code> is your verification code." Anda dapat menambahkan baris keamanan dari Meta, "For your security, do not share this code.", dan footer masa berlaku, "This code expires in <N> minutes.", dengan code_expiration_minutes antara 1 dan 90. Setiap versi bahasa memakai terjemahan baku dari Meta sendiri. URL, media, dan emoji tidak didukung.
Anda yang memilih tombolnya. Copy code (salin kode) berfungsi di mana saja. One-tap autofill membuka aplikasi Android Anda beserta kodenya dan membutuhkan nama package, hash tanda tangan, dan handshake. Zero-tap (hanya Android) tidak memiliki tombol: WhatsApp langsung menyiarkan kode ke aplikasi Anda. Di iOS 26 ke atas, saran keyboard menawarkan kode dari notifikasi tanpa integrasi apa pun. Kode dapat sepanjang 15 karakter dan muncul dua kali dalam permintaan pengiriman, sebagai parameter body dan sebagai parameter tombol (sub_type "url"). Teks tombol Copy code dibatasi 25 karakter. Atur message_send_ttl_seconds agar kode yang sudah kedaluwarsa tidak terkirim terlambat. Meta juga hanya mengirim pesan autentikasi melalui Cloud API ke perangkat utama pengguna; perangkat tertaut hanya melihat pesan yang disamarkan.
Pesannya adalah bagian yang mudah. Sebagian besar penipuan OTP dan pembengkakan biaya berasal dari lemahnya aturan di sekitarnya. Berikut rekomendasi yang umum dipakai, bukan kewajiban hukum. Sesuaikan angkanya dengan tingkat risiko Anda sendiri.
Gunakan alur berjenjang (cascade) untuk pengiriman. Coba WhatsApp terlebih dahulu jika pengguna memilikinya, lakukan fallback (kanal cadangan) ke SMS setelah jeda singkat (misalnya 30 sampai 60 detik tanpa laporan pengiriman), dan tawarkan panggilan suara yang membacakan kode sebagai pilihan terakhir untuk telepon rumah dan sinyal yang buruk. Di negara Teluk (GCC), OTP termasuk trafik transaksional, sehingga aturan promosi seperti awalan sender "AD-" di Uni Emirat Arab (UEA) tidak berlaku. Sender ID Anda tetap harus didaftarkan di sebagian besar pasar, jadi periksa aturan setempat sebelum peluncuran.
Kode di awal, lalu brand, masa berlaku, dan peringatan agar tidak dibagikan, dalam satu segmen dan tanpa tautan: "482913 adalah kode verifikasi Acme Anda. Berlaku selama 5 menit. Jangan bagikan kode ini kepada siapa pun." Tambahkan baris app hash untuk autofill Android dan "@yourdomain.com #482913" sebagai baris terakhir untuk autofill iOS dan web.
Usahakan satu segmen: 160 karakter dalam GSM-7 atau 70 karakter dalam Unicode (misalnya bahasa Arab). SMS Retriever dari Google membatasi pesan hingga 140 byte, yang setara dengan batas satu SMS yang sama. Pesan yang lebih panjang dipecah menjadi bagian 153 atau 67 karakter dan ditagih per bagian.
Tidak. Dokumentasi SMS Retriever Google saat ini mensyaratkan tiga hal: maksimal 140 byte, kode sekali pakai, dan app hash 11 karakter. Awalan "<#>" berasal dari panduan lama. Tetap memakainya tidak berbahaya, tetapi memakan 4 karakter.
Tandai input sebagai kolom kode sekali pakai (textContentType .oneTimeCode di aplikasi, autocomplete="one-time-code" di web). iOS kemudian menyarankan kode dari Pesan. Untuk mengikat kode ke situs Anda, akhiri SMS dengan "@yourdomain.com #123456", dengan tepat satu spasi di antara kedua nilai.
Tidak. Meta menetapkan isi pesan ("<code> is your verification code.") dan menerjemahkannya untuk tiap bahasa. Anda hanya dapat menambahkan baris keamanan opsional, footer masa berlaku 1 sampai 90 menit, serta memilih tombol copy code, one-tap, atau zero-tap. URL, media, dan emoji tidak diizinkan.
Gunakan keduanya. WhatsApp menawarkan tombol salin kode dan autofill one-tap serta menampilkan nama bisnis Anda yang terverifikasi. SMS menjangkau setiap ponsel, dengan atau tanpa data. Pola yang umum: coba WhatsApp lebih dulu, fallback ke SMS setelah 30 sampai 60 detik tanpa pengiriman, dan tawarkan panggilan suara sebagai pilihan terakhir.
Teks Arab memakai encoding UCS-2, yang hanya mengizinkan 70 karakter dalam satu SMS dan 67 per bagian setelah dipecah. Buat kalimat berbahasa Arab sesingkat mungkin, gunakan angka Barat untuk kodenya, dan periksa jumlahnya di generator sebelum mengirim.
Sebaiknya dihindari. Tautan di pesan verifikasi mempermudah phishing, lebih sering difilter operator, dan membiasakan pengguna mengetuk tautan di SMS. Kirim kodenya saja, dan biarkan pengguna mengetiknya atau memakai autofill di aplikasi Anda.
Pilihan privasi Anda
Pemberitahuan cookieKami hanya menggunakan yang dibutuhkan agar situs ini berfungsi. Dengan izin Anda, kami juga mengingat bagaimana Anda menemukan kami (situs perujuk dan tautan kampanye) agar tim kami tahu konten mana yang membantu. Tanpa cookie iklan atau pihak ketiga. Pemberitahuan cookie