Cara Kirim OTP & Notifikasi WhatsApp via API (Tutorial REST: curl, Node.js, PHP)
Oleh Tim Wabridge ·
Mengirim OTP dan notifikasi via WhatsApp lebih murah dan punya open rate lebih tinggi dibanding SMS. Tutorial ini menunjukkan cara mengirim pesan WhatsApp lewat REST API, lengkap dengan contoh kode dalam curl, Node.js, dan PHP.
Kenapa OTP & Notifikasi Lewat WhatsApp?
- Lebih hemat dibanding SMS, terutama untuk volume besar.
- Open rate tinggi — pesan WhatsApp hampir selalu dibaca.
- Kaya format — bisa kirim teks, tautan, bahkan media.
- Dua arah — pelanggan bisa langsung membalas dan ditangani via webhook.
Langkah Persiapan
- Daftar gratis di Wabridge.
- Tambah device dan scan QR dengan nomor WhatsApp pengirim.
- Buka detail device dan salin API key serta nama session-nya. API key bersifat per-device dan terisolasi, jadi aman.
Contoh: Kirim Pesan WhatsApp via REST API
Endpoint pengiriman menerima X-Api-Key (API key device Anda), session, chatId (nomor tujuan dalam format 628xxxx@c.us), dan text.
curl
curl -X POST https://waha.wabridge.cloud/api/sendText \
-H "X-Api-Key: API_KEY_ANDA" \
-H "Content-Type: application/json" \
-d '{
"session": "SESSION_DEVICE_ANDA",
"chatId": "6281234567890@c.us",
"text": "Kode OTP Anda adalah 123456. Berlaku 5 menit."
}'
Node.js (axios)
import axios from 'axios';
await axios.post(
'https://waha.wabridge.cloud/api/sendText',
{
session: 'SESSION_DEVICE_ANDA',
chatId: '6281234567890@c.us',
text: `Kode OTP Anda adalah ${otp}. Berlaku 5 menit.`,
},
{ headers: { 'X-Api-Key': process.env.WA_API_KEY } }
);
PHP (cURL)
<?php
$ch = curl_init('https://waha.wabridge.cloud/api/sendText');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
'X-Api-Key: ' . getenv('WA_API_KEY'),
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => json_encode([
'session' => 'SESSION_DEVICE_ANDA',
'chatId' => '6281234567890@c.us',
'text' => "Kode OTP Anda adalah $otp. Berlaku 5 menit.",
]),
]);
$response = curl_exec($ch);
curl_close($ch);
Ganti 628xxxx@c.us dengan nomor tujuan dalam format internasional tanpa tanda +, diikuti @c.us.
Best Practice OTP
- Batasi percobaan (rate limit) per nomor untuk mencegah penyalahgunaan.
- Beri masa berlaku (expiry) singkat, misalnya 5 menit.
- Jangan kirim ke nomor yang tidak meminta OTP.
- Simpan kode secara aman (hash) dan validasi di sisi server.
- Sediakan fallback ke kanal lain bila pengiriman gagal.
Menerima Balasan dengan Webhook
Untuk notifikasi dua arah (misalnya konfirmasi pelanggan), atur webhook di pengaturan device. Setiap pesan masuk akan dikirim sebagai HTTP POST ke URL aplikasi Anda secara real-time — tanpa middleware tambahan. Anda bisa mengombinasikannya dengan bot auto reply keyword untuk balasan otomatis.
Kesimpulan
Mengirim OTP dan notifikasi via WhatsApp API hanya butuh satu permintaan HTTP. Dengan Wabridge, Anda mendapat API key per-device yang aman dan webhook bawaan — siap diintegrasikan ke sistem apa pun. Lihat referensi lengkap di dokumentasi API, atau daftar gratis untuk mulai.
Coba Wabridge Gratis
WhatsApp Gateway & API Indonesia untuk blast, auto-reply, OTP, dan webhook. Ada paket gratis, tanpa kartu kredit — siap pakai dalam 1 menit.