Notifikasi WhatsApp Otomatis di WooCommerce: 3 Cara, dari Gratis sampai Anti-Ribet
Jam sebelas malam, dua tab masih terbuka: halaman Orders WooCommerce di satu sisi, WhatsApp Web di sisi lain. Salin nomor, buka chat, ketik "Halo kak, pesanannya sudah kami terima ya", kirim. Balik ke tab pertama. Ulang. Ini order keempat belas hari itu, dan besok resinya harus disalin satu-satu lagi.
Yang kamu mau sebenarnya sederhana. Ada order masuk, pembeli langsung dapat WA. Pembayarannya cair, dapat WA lagi. Paket berangkat, nomor resinya nyusul sendiri tanpa kamu sentuh HP.
Bisa. Tapi ada satu hal yang hampir tidak pernah disebut di halaman-halaman jualan plugin, dan itu yang bikin banyak orang kaget di tengah jalan.
Kenapa plugin saja tidak pernah cukup
Plugin notifikasi WhatsApp untuk WooCommerce tidak mengirim pesan sendiri. Tugasnya hanya memantau perubahan status order dan menyusun teksnya. Yang benar-benar menyentuh WhatsApp adalah gateway di belakangnya, layanan terpisah yang memegang sambungan ke nomor WhatsApp kamu. Jadi biaya sebenarnya selalu dua lapis: harga plugin, ditambah langganan gateway per bulan.
Alasannya teknis tapi gampang dicerna. WordPress tinggal di hosting kamu. WhatsApp tidak menerima kiriman dari sembarang server yang mengaku-ngaku sebagai toko. Supaya sebuah pesan benar-benar mendarat di HP pembeli, harus ada pihak yang memegang sesi WhatsApp atas nama nomormu, atau akun resmi Meta Cloud API yang sudah didaftarkan. Itu pekerjaan gateway, dan itu bukan pekerjaan plugin.
Ada satu lagi yang sering bikin salah beli. Coba buka direktori plugin WordPress dan cari "whatsapp woocommerce". Per 5 Agustus 2026, yang muncul paling atas dengan pemasangan terbanyak adalah plugin-plugin gratis bertema tombol chat seperti Joinchat, Click to Chat, dan Social Chat. Semuanya memasang tombol "Chat kami" di halaman produk. Arahnya kebalikan dari yang kamu butuhkan: itu memancing pembeli menghubungi kamu, sementara yang kamu cari adalah kamu yang mengabari pembeli.
Sekalian saya luruskan di depan, biar tidak ada yang mencari-cari: Jalinara tidak punya plugin WooCommerce. Tidak ada yang bisa diunduh dari direktori WordPress lalu tinggal klik aktifkan. Jalinara berperan sebagai gateway-nya, dan penyambungan ke WooCommerce dilakukan lewat webhook, n8n, atau panggilan langsung ke REST API. Ketiganya dibahas di bawah.
Tiga cara memasang notifikasi WhatsApp di WooCommerce
Semua cara bermuara ke hal yang sama: ada kejadian di WooCommerce, ada pesan yang dikirim gateway. Yang membedakan cuma siapa yang jadi juru bicara di tengah, dan berapa yang kamu bayar untuknya.
| Cara | Perlu ngoding? | Biaya di sisi WordPress | Biaya gateway per bulan |
|---|---|---|---|
| 1. Plugin notifikasi pihak ketiga | Tidak | Lisensi plugin. Harganya berubah-ubah, cek langsung di halaman resmi plugin sebelum menghitung | Rp 0 di paket Free, Rp 39.000 di Personal, Rp 79.000 di Tim |
| 2. Webhook WooCommerce → n8n → gateway | Tidak, tapi harus mau utak-atik alur | Rp 0 untuk n8n versi self-host, di luar biaya server tempat n8n dipasang | Rp 0 di paket Free, Rp 39.000 di Personal, Rp 79.000 di Tim |
| 3. Snippet PHP di WordPress → gateway | Ya, sekitar 20 baris | Rp 0 | Rp 0 di paket Free, Rp 39.000 di Personal, Rp 79.000 di Tim |
Kolom terakhir sengaja saya isi sama persis di tiga baris. Itu bukan salah salin. Apa pun jalur yang kamu ambil, langganan gateway tetap jalan, karena dia yang benar-benar memegang nomor WhatsApp kamu. Yang bisa kamu tekan sampai nol hanyalah biaya di sisi WordPress. Paket mana yang kamu perlukan ditentukan volume order, dan itu dihitung di bagian bawah.
Cara 1: plugin pihak ketiga, cepat tapi bayar dua kali
Ini jalur paling ramah untuk yang tidak mau menyentuh kode sama sekali. Pasang plugin, isi token gateway di halaman pengaturan, centang status order mana yang mau dikirimi pesan, edit templatenya lewat form. Selesai dalam setengah jam.
Beberapa plugin notifikasi WhatsApp pihak ketiga di pasaran sudah menyediakan daftar gateway yang didukung di dropdown-nya. Kalau kamu memakai jalur ini, satu hal wajib kamu cek sebelum bayar: apakah plugin itu mengizinkan kamu mengisi alamat server gateway sendiri, biasanya ditulis "custom endpoint" atau "custom API URL". Kalau bisa, kamu tidak terkunci ke satu penyedia. Kalau tidak bisa, pilihan gateway kamu ditentukan oleh pembuat plugin, bukan olehmu.
Saya tidak mengutip harga plugin mana pun di sini karena lisensi seperti ini sering berubah, sering diskon musiman, dan ada yang tahunan ada yang sekali bayar. Buka halaman resminya, catat angkanya hari itu juga, lalu tambahkan dengan biaya gateway supaya kelihatan total sebenarnya.
Ambil cara ini kalau: kamu tidak punya akses developer, tidak mau menyentuh file tema, dan tidak keberatan menambah satu lisensi lagi ke daftar langganan.
Cara 2: webhook WooCommerce dilempar ke n8n
WooCommerce sudah punya fitur webhook bawaan, ada di WooCommerce › Settings › Advanced › Webhooks. Kamu bisa bikin webhook dengan topik order.created atau order.updated, isi alamat tujuannya, dan setiap kali ada order, WooCommerce mengirim data order itu ke alamat tersebut.
Godaannya adalah menempelkan alamat gateway langsung di kolom itu. Jangan. Data yang dikirim WooCommerce bentuknya JSON order lengkap dengan puluhan kolom, sementara endpoint kirim gateway cuma mengerti target dan message. Dua bahasa yang berbeda. Butuh penerjemah di tengah.
Di situlah n8n masuk. Alurnya begini: node Webhook menerima kiriman dari WooCommerce, node Set atau IF memilah status ordernya dan menyusun kalimat, lalu node HTTP Request mem-POST ke https://app.jalinara.id/send. Bentuk permintaannya persis seperti ini:
POST https://app.jalinara.id/send
Header: Authorization: Bearer <TOKEN_API>
Body (JSON): { "target": "6281234567890", "message": "Pesanan #1042 sudah kami terima." }
Kelebihan jalur ini: kamu bisa menambah cabang tanpa menyentuh WordPress lagi. Mau order di atas satu juta dikirimi pesan berbeda? Tambah node IF. Mau catatannya masuk Google Sheets sekalian? Tambah node lagi. Alurnya kelihatan sebagai diagram, jadi orang non-teknis di tim kamu masih bisa mengubah kalimatnya sendiri. Susunan node lengkap beserta contoh pesannya sudah dibahas terpisah di workflow n8n untuk notifikasi order dan pembayaran.
Ambil cara ini kalau: kamu sudah menjalankan n8n untuk hal lain, atau kamu memang berencana menyambungkan data order ke banyak tempat, bukan cuma ke WhatsApp.
Cara 3: satu snippet PHP, dan ini yang paling murah
Kalau tujuanmu cuma tiga pesan otomatis dan tidak lebih, jalur ini yang paling ringan. Tidak ada lisensi plugin, tidak ada server tambahan, tidak ada node yang perlu dipelihara. WordPress memanggil gateway langsung. Ongkos tambahannya benar-benar Rp 0 di sisi WordPress.
Syaratnya satu: kamu harus nyaman menempelkan kode. Bukan menulisnya dari nol, cuma menempel dan mengganti tokennya.
Langkah 1: ambil token API dari dashboard gateway
Hubungkan nomor WhatsApp tokomu ke Jalinara lewat pindai QR, lalu buat token API di dashboard. Token ini yang jadi kunci. Siapa pun yang memegangnya bisa mengirim pesan atas nama nomormu, jadi jangan pernah menempelkannya di file yang bisa dibaca publik. Kalau kamu belum pernah memakai API sama sekali, mulai dari panduan kirim WhatsApp lewat API dulu supaya paham bentuk permintaannya.
Langkah 2: siapkan tempat menaruh snippet
Pasang plugin penampung kode seperti Code Snippets, atau pakai child theme lalu tulis di functions.php-nya. Jangan menulis di functions.php tema utama. Begitu temanya diperbarui, kodenya hilang dan kamu akan bingung kenapa notifikasi tiba-tiba mati.
Langkah 3: tempel kodenya
Snippet di bawah menempel pada kejadian "status order berubah" di WooCommerce, lalu mengirim pesan hanya untuk dua status: processing (pembayaran diterima) dan completed (pesanan dikirim).
add_action('woocommerce_order_status_changed', 'wa_notif_order', 10, 4);
function wa_notif_order($order_id, $lama, $baru, $order) {
$teks = array(
'processing' => 'Pembayaran pesanan #%s sudah kami terima. Barang segera diproses ya.',
'completed' => 'Pesanan #%s sudah dikirim. Terima kasih sudah belanja di toko kami.'
);
if (empty($teks[$baru])) return;
$hp = preg_replace('/\D/', '', $order->get_billing_phone());
if (strpos($hp, '0') === 0) $hp = '62' . substr($hp, 1);
if (strlen($hp) < 9) return;
$balasan = wp_remote_post('https://app.jalinara.id/send', array(
'timeout' => 15,
'headers' => array(
'Authorization' => 'Bearer TOKEN_API_KAMU',
'Content-Type' => 'application/json'
),
'body' => wp_json_encode(array(
'target' => $hp,
'message' => sprintf($teks[$baru], $order->get_order_number())
))
));
$kode = wp_remote_retrieve_response_code($balasan);
if (is_wp_error($balasan) || $kode != 200) {
error_log('Notif WA gagal, order ' . $order_id . ', kode ' . $kode);
}
}
Ganti TOKEN_API_KAMU dengan token dari langkah 1. Itu satu-satunya yang wajib kamu ubah.
Empat baris terakhir itu jangan dilewati. wp_remote_post mengirim sekali saja dan tidak mengulang sendiri. Kalau gateway membalas 429 (kena batas kirim per menit) atau 401 (token salah), pesannya batal terkirim dan kamu tidak akan tahu kalau tidak dicatat. Untuk toko yang ramai, langkah berikutnya adalah mengirim ulang pesan yang kena 429 setelah diberi jeda satu menit, misalnya lewat wp_schedule_single_event.
Langkah 4: uji dengan order palsu
Bikin satu order pakai nomor HP kamu sendiri, lalu ubah statusnya manual dari halaman Orders: draft ke processing, lalu ke completed. Dua pesan harus masuk. Kalau tidak ada yang masuk, tersangkanya hampir selalu format nomor atau token yang salah salin, bukan kodenya.
Langkah 5: baru tambah pesan ketiga
Setelah dua pesan itu stabil beberapa hari, tambahkan baris ke array $teks untuk status lain, misalnya on-hold untuk mengingatkan pembayaran yang belum masuk. Menambah satu-satu begini lebih gampang dilacak daripada memasang enam pesan sekaligus lalu bingung yang mana yang bikin pembeli terganggu.
Berapa pesan yang habis sebulan, dan paket mana yang cukup
Sebelum berlangganan apa pun, hitung dulu. Rumusnya: jumlah order per bulan dikali jumlah notifikasi per order. Kalau kamu kirim tiga (order masuk, lunas, dikirim), angkanya jadi begini:
| Order per bulan | Pesan terpakai (3 per order) | Paket Jalinara yang cukup |
|---|---|---|
| 100 | 300 | Free, gratis selamanya (700 pesan teks/bln) |
| 230 | 690 | Free, tapi sudah mepet batas |
| 500 | 1.500 | Personal, Rp 39.000/bln (5.000 pesan teks) |
| 1.600 | 4.800 | Personal masih cukup |
| 4.000 | 12.000 | Tim, Rp 79.000/bln (12.000 pesan teks) |
Angka paket di atas diambil dari halaman harga Jalinara per 5 Agustus 2026. Tagihannya bulanan tanpa komitmen, dan boleh turun paket atau berhenti kapan saja.
Dua catatan penting soal paket Free, supaya kamu tidak kecewa di hari pertama. Pertama, semua pesan keluar diberi tanda "Sent Via Jalinara" di bawahnya. Untuk toko yang baru mulai biasanya tidak masalah; untuk yang jaga citra merek, tanda itu hilang mulai paket Personal. Kedua, kecepatan kirim di paket Free dibatasi 20 pesan per menit. Yang lewat dari batas itu langsung ditolak dengan kode 429, dan pesannya tidak terkirim. Tidak ada antrean yang menyusulkan sisanya belakangan. Jadi kalau kamu buka flash sale dan 80 order masuk dalam lima menit, sebagian pembeli bisa tidak menerima apa-apa tanpa kamu sadari. Yang perlu kamu lakukan: periksa kode balasan gateway, lalu kirim ulang setelah diberi jeda, atau naik paket supaya batas per menitnya lepas.
Momen mana yang layak dikirimi WA
Godaan pertama setelah automasinya jalan adalah mengirim pesan di setiap perubahan status. Tahan dulu. Pembeli yang menerima enam WA dari satu belanjaan akan memblokir nomor tokomu, dan itu ongkos yang jauh lebih mahal daripada kuota pesan.
Tiga momen yang benar-benar ditunggu orang: order masuk (memastikan pesanannya tidak nyangkut), pembayaran diterima (paling melegakan, terutama untuk transfer manual), dan paket dikirim beserta nomor resi (satu-satunya yang bikin orang berhenti bertanya "sudah dikirim belum kak?").
Yang sebaiknya tidak: perubahan status internal yang tidak berarti apa-apa buat pembeli, dan promo produk lain yang diselipkan ke pesan transaksi. Yang kedua itu terasa seperti dijual-jualin di saat orang cuma mau tahu paketnya di mana. Kalau kamu memang mau menawarkan produk lain, pisahkan jalurnya dan kirim belakangan, misalnya lewat katalog produk WhatsApp yang bisa dijelajahi pembeli sendiri. Pola pesan per tahap transaksi dibahas lebih detail di panduan notifikasi transaksi otomatis.
Empat hal yang biasanya bikin ini gagal di hari pertama
Format nomor. Ini juaranya. WooCommerce menyimpan apa pun yang diketik pembeli: 0812-3456-7890, +62 812 3456 7890, kadang ada spasi nyelip di ujung. Gateway butuh 6281234567890 polos. Snippet di atas sudah membersihkannya, tapi kalau kamu pakai plugin, pastikan plugin itu juga melakukannya.
Pembeli tidak mengisi nomor HP. Di WooCommerce, kolom telepon bisa dimatikan atau dibuat opsional lewat pengaturan checkout. Kalau kosong, tidak ada yang bisa dikirimi. Jadikan kolom itu wajib sebelum mengandalkan notifikasi WA.
Pesan dobel. Kalau kamu memakai jalur webhook, WooCommerce mencoba mengirim ulang saat tidak mendapat balasan tepat waktu. Hasilnya pembeli menerima dua pesan yang sama. Simpan penanda di order (misalnya sebuah meta bernama "wa_terkirim") dan lewati kalau penanda itu sudah ada.
Kamu tidak tahu pesannya sampai atau tidak. Respons dari gateway berbunyi "queued", artinya pesan sudah masuk antrean, belum tentu sudah mendarat di HP orang. Untuk tahu status sebenarnya, pasang webhook status pengiriman. Caranya ada di webhook status pesan WhatsApp, dan ini yang bikin kamu berhenti mengecek satu-satu.
Satu lagi yang bukan bug tapi perlu kamu tahu. Sambungan lewat pindai QR memakai jalur WhatsApp Web biasa, bukan API resmi Meta, dan Jalinara tidak berafiliasi dengan Meta. Notifikasi transaksi termasuk penggunaan yang relatif aman karena penerimanya baru saja belanja di tokomu dan memang menunggu kabar itu. Tetap saja, risiko pembatasan nomor tidak pernah nol di platform mana pun. Untuk volume besar, ada jalur Meta Cloud API resmi yang butuh pendaftaran dan ada biaya percakapan dari Meta.
Poin Penting
- Plugin apa pun tetap butuh gateway di belakangnya. Hitung total biayanya sebagai dua lapis: lisensi plugin plus langganan gateway bulanan.
- Plugin WhatsApp gratis paling populer di direktori WordPress adalah tombol "chat kami", bukan pengirim notifikasi. Arahnya kebalikan dari yang kamu cari.
- Jalinara tidak menerbitkan plugin WooCommerce. Sambungannya lewat webhook, n8n, atau REST API.
- Cara termurah adalah snippet PHP: Rp 0 di sisi WordPress, hanya langganan gateway yang dibayar.
- Hitung kuota sebelum berlangganan. Tiga notifikasi per order berarti 100 order menghabiskan 300 pesan sebulan.
- Kirim tiga momen saja: order masuk, pembayaran diterima, paket dikirim. Lebih dari itu bikin orang memblokir nomor tokomu.
Pertanyaan yang sering ditanyakan
Apakah Jalinara punya plugin WooCommerce resmi?
Tidak ada. Jalinara tidak menerbitkan plugin WooCommerce, dan tidak ada yang bisa diunduh dari direktori plugin WordPress. Sambungan ke WooCommerce dilakukan lewat tiga jalur: webhook bawaan WooCommerce, alat automasi seperti n8n, atau panggilan langsung ke REST API Jalinara dari kode WordPress.
Apakah notifikasi WhatsApp WooCommerce bisa jalan tanpa biaya bulanan?
Bisa untuk toko kecil. Paket Free Jalinara memberi 700 pesan teks per bulan untuk 1 nomor, cukup untuk sekitar 230 order kalau tiap order dikirimi tiga notifikasi. Batasnya: semua pesan keluar diberi tanda "Sent Via Jalinara", kecepatan kirim dibatasi 20 pesan per menit, dan hanya 1 nomor tujuan per sekali kirim.
Nomor pembeli di WooCommerce ditulis 08xxxx, perlu diubah tidak?
Perlu. Nomor harus dikirim dalam format internasional tanpa tanda plus, misalnya 6281234567890. Buang spasi, tanda hubung, dan tanda kurung, lalu ganti angka 0 di depan dengan 62. Ini penyebab paling sering pesan tidak terkirim di percobaan pertama.
Bagaimana cara kirim resi otomatis lewat WA dari WooCommerce?
Nomor resi biasanya disimpan sebagai data tambahan di order oleh plugin ekspedisi yang kamu pakai. Ambil nilainya saat status order berubah menjadi completed, sisipkan ke teks pesan, lalu kirim ke gateway. Pastikan resi sudah terisi sebelum pesan dikirim, kalau tidak pembeli akan menerima pesan dengan nomor resi kosong.
Apakah nomor WhatsApp toko bisa kena batasi karena kirim notifikasi otomatis?
Risikonya tidak pernah nol di platform mana pun. Notifikasi transaksi relatif lebih aman karena dikirim ke orang yang baru saja belanja di tokomu dan menunggu kabar itu. Yang menaikkan risiko adalah menyelipkan promo massal ke jalur yang sama, atau memakai nomor baru yang belum pernah dipakai untuk mengirim ratusan pesan sekaligus.