Kanal & template

Bagaimana sebuah kode sampai ke pengguna — urutan perutean, identitas pengirimnya, dan bentuk pesan yang diterima.

Jalur pengiriman
Setiap permintaan menempuh jalur ini. Aplikasi tidak pernah memilih kanal — ia mengetahui dari respons kanal mana yang membawa kode.
OTP diminta
Aplikasi meminta kode. Aplikasi tidak pernah memilih kanal — perutean yang memutuskan, lalu melaporkan kanal mana yang membawanya.
Utama
WhatsApp — kumpulan nomor
Dicoba lebih dahulu. Trafik dibagi ke 3 nomor aktif berdasarkan bobot, sehingga satu nomor yang turun peringkat kualitasnya tidak menjatuhkan seluruh kanal utama.
+62 811 1500 123
Primary · tingkat 1 · kualitas high
50%
98,8% berhasil
active
+62 811 1500 124
Primary · tingkat 1 · kualitas high
35%
98,5% berhasil
active
+62 811 1500 125
Secondary · tingkat 1 · kualitas medium
15%
94,3% berhasil
degraded
+62 811 1500 126
Reserve · tingkat 2 · kualitas high
siaga
offline
1 nomor cadangan ditahan — baru dipakai bila seluruh nomor di atas tidak dapat digunakan
Cadangan
SMS — failover
Hanya dipakai ketika WhatsApp tidak dapat mengirim. Gateway disusun berjenjang dengan cara yang sama, sehingga kehilangan salah satunya menurunkan tingkat keberhasilan tanpa menghentikan pengiriman.
Agregator utama
tingkat 1 · Seluruh operator Indonesia
100%
96,1% berhasil
active
Agregator cadangan
tingkat 2 · Internasional + limpahan domestik
93,8% berhasil
active
Terkirim

Tanda terima sudah masuk. Kode aktif selama masa berlakunya dan ditagihkan begitu terverifikasi.

Seluruh rute habis

Seluruh nomor dan gateway gagal. Permintaan mengembalikan galat agar aplikasi dapat memberi tahu pengguna, bukan membiarkannya menunggu.

Aturan perutean
Sakelar yang menentukan seberapa besar redundansi yang benar-benar dimiliki jalur ini.
Failover otomatis ke SMS

Mematikannya membuat kegagalan WhatsApp langsung menjadi permintaan yang gagal. Tingkat keberhasilan pengiriman akan turun seketika.

Sediakan gateway SMS kedua sebagai cadangan

Perutean internasional memakai gateway cadangan. Dengan satu rute tersisa, tingkat keberhasilan turun tetapi pengiriman tetap berjalan — hilangnya redundansi memunculkan peringatan, bukan menghentikan pengiriman.

Sebarkan trafik WhatsApp ke seluruh kumpulan nomor

Trafik mengikuti bobot masing-masing nomor. Mematikannya mengunci seluruh permintaan pada nomor berbobot tertinggi, dan begitulah satu penurunan peringkat kualitas dapat menjatuhkan seluruh kanal utama.

Identitas pengirim
Hanya pengirim yang terdaftar yang boleh mengirimkan kode. Inilah yang memungkinkan penerima membedakan pesan Transjakarta yang asli dari pemalsuan.

Pendaftaranlah yang paling menentukan jadwal, bukan integrasinya. Sender ID SMS dibatasi 11 karakter termasuk spasi dan memakan waktu hingga 14 hari kerja per operator — satu revisi mengulang hitungan dari awal. WhatsApp mengizinkan 30 karakter dan mensyaratkan Facebook Business Manager terverifikasi beserta NPWP, NIB, dan SKT sebelum peninjauan 14 hari dimulai. Keduanya sebaiknya dimulai sebelum pengembangan, bukan sesudahnya.

Kanal
Pengirim
Wilayah
Status
Catatan
WhatsApp+62 811 1500 123IDactiveNomor WhatsApp Business yang disediakan vendor.
SMSTRANSJKTIDactiveSender ID alfanumerik, 8 dari 11 karakter. Terdaftar pada seluruh operator lokal.
SMSTJ-OTPINTLpending registrationPendaftaran memakan waktu hingga 14 hari kerja per operator, dan setiap revisi mengulangnya dari awal. Beberapa negara tujuan bahkan tidak mengizinkan sender ID alfanumerik.
Template pesan
Template WhatsApp memerlukan persetujuan Meta sebelum dapat dikirim, sehingga template yang masih menunggu belum dapat dipakai. Setiap bahasa merupakan template tersendiri.
Nama
Kanal
Bahasa
Isi pesan
Status
tj_otp_verification_idWhatsAppIndonesiaKode verifikasi Transjakarta Anda adalah {{1}}. Berlaku 1 menit. Jangan bagikan kode ini kepada siapa pun.approved
tj_otp_verification_enWhatsAppInggrisYour Transjakarta verification code is {{1}}. It expires in 1 minute. Do not share it with anyone.approved
sms_otp_idSMSIndonesiaKode OTP Transjakarta: {{code}}. Berlaku 60 detik. Jangan bagikan.approved
sms_otp_enSMSInggrisTransjakarta OTP: {{code}}. Valid for 60 seconds. Do not share.pending review
Isi otomatis
Android membaca kode langsung dari SMS ketika pesan diakhiri hash yang terikat pada aplikasi terpasang. Setiap tanda tangan build memiliki hash sendiri, sehingga rilis baru memerlukan entri baru di sini sebelum isi otomatis kembali berfungsi.
Tambahkan hash aplikasi pada pesan SMS

Menambah 11 karakter pada setiap SMS. Sepadan untuk alur di mana pengguna tidak perlu berpindah layar.

Aplikasi
Platform
Hash
Transjakarta AppAndroid — rilisFA+9qCX9VSu
Transjakarta AppAndroid — stagingK2j8xNvQ1pL