panduan28 Oktober 2026

Webhook Shopify Tidak Masuk? Penyebab dan Cara Mengeceknya

Webhook Shopify tidak masuk? Ini lima penyebab umum, urutan pengecekan, dan cara tes dengan Send test notification, dengan contoh koneksi ke Kirimi.

Kalau webhook Shopify tidak masuk ke layanan tujuan, penyebabnya biasanya ada di salah satu dari lima hal: domain toko salah, event salah, signing secret belum cocok, versi API tidak tepat, atau URL tujuan tidak sama di kelima webhook (cara membuatnya ada di panduan menghubungkan Shopify). Webhook adalah pesan otomatis yang dikirim Shopify ke sebuah alamat URL setiap kali ada kejadian di toko, misalnya pesanan baru atau checkout dimulai. Artikel ini memakai koneksi Shopify ke Kirimi sebagai contoh, tetapi urutan pengecekannya berlaku untuk layanan penerima mana pun.

Ringkasnya: Mulai dari status koneksi di layanan penerima, lalu cek lima hal tadi berurutan, lalu kirim Send test notification dari Shopify. Kalau semua benar tetapi pesan tetap telat atau ganda, itu bisa jadi sifat bawaan webhook Shopify, bukan kerusakan di tokomu.

Bagaimana cara cek cepat apakah webhook sudah masuk?

Lihat dulu status di sisi penerima. Di Kirimi, kartu toko Shopify di menu Integrasi menampilkan Menunggu webhook pertama sampai ada webhook bertanda tangan valid yang tiba, lalu berubah menjadi Terhubung. Jadi status itu tidak berarti Kirimi rusak. Artinya belum ada satu pun webhook yang lolos verifikasi.

Setelah itu, periksa dalam urutan ini. Urutan ini dari yang paling cepat dicek.

  1. Pastikan domain toko yang dimasukkan adalah domain .myshopify.com.
  2. Pastikan kelima event webhook ada dan tidak salah pilih.
  3. Pastikan signing secret sudah ditempel dan disimpan.
  4. Pastikan Webhook API version memakai versi bertanggal, bukan unstable.
  5. Pastikan kelima webhook memakai URL yang sama dengan URL dari Kirimi.
  6. Kirim Send test notification dan lihat apakah status berubah.

Kalau kamu belum pernah membuat webhook sama sekali, ikuti dulu panduan menghubungkan Shopify ke WhatsApp. Artikel ini hanya membahas pengecekan setelah webhook dibuat.

Apakah domain toko yang dimasukkan sudah benar?

Kirimi meminta domain bawaan Shopify berakhiran .myshopify.com, misalnya toko-kaos-nusantara.myshopify.com, bukan domain kustom seperti tokokaosnusantara.com. Toko yang sudah memakai domain kustom sering salah di sini karena domain itulah yang mereka lihat setiap hari. Alamat .myshopify.com bisa kamu lihat di URL Shopify admin atau di pengaturan domain toko.

Apakah event webhook yang dipilih sudah tepat?

Integrasi Kirimi memakai lima webhook, masing-masing satu event: Checkout creation, Order creation, Order payment, Order cancellation, dan Checkout update. Format semuanya JSON. Kalau ada yang salah pilih atau kurang, perbaiki atau buat ulang webhook-nya.

Kesalahan yang sering muncul adalah memilih Cart update. Itu event yang berbeda dan tidak dipakai Kirimi, jadi jangan dipilih. Kalau hanya sebagian event yang dibuat, misalnya Order creation ada tetapi Checkout creation tidak, event keranjang ditinggalkan tidak akan pernah tiba.

Daftar webhook ada di Shopify admin: Settings, Notifications, lalu bagian Webhooks di dasar halaman. Menurut Help Center Shopify, di aplikasi seluler jalurnya Menu, Settings, Store settings, Notifications, Webhooks.

Apa itu signing secret dan kenapa bisa membuat webhook ditolak?

Signing secret adalah kunci rahasia yang dipakai untuk menandatangani tiap webhook. Penerima memeriksa tanda tangan itu untuk memastikan pesan benar-benar dari Shopify, dan webhook dengan tanda tangan yang tidak cocok tidak dihitung sebagai webhook valid.

Setelah kamu membuat webhook, Shopify menampilkan teks "Your webhooks will be signed with" diikuti 64 karakter. Salin 64 karakter itu ke kolom Signing secret di Kirimi lalu simpan. Pastikan semua 64 karakter tersalin tanpa terpotong atau tambahan spasi, dan secret-nya dari toko yang sama.

Kalau dialognya sudah tertutup dan kamu belum menempelkan secret, klik Lengkapi koneksi pada kartu toko di Kirimi untuk membukanya lagi.

Versi API mana yang sebaiknya dipilih?

Saat membuat webhook, Shopify meminta kamu memilih Webhook API version dari daftar. Pilih versi bertanggal paling baru (misalnya 2026-10), bukan unstable. Versi unstable belum final, sehingga bentuk datanya bisa berubah dari yang diharapkan penerima.

Apakah kelima URL webhook sama dengan URL dari Kirimi?

Satu toko punya satu URL dari Kirimi untuk semua webhook (lihat langkah pembuatan webhook). Yang gampang terlewat adalah URL yang terpotong di sebagian webhook. Buka tiap baris di daftar webhook dan bandingkan karakter terakhirnya.

Bagaimana kalau penerima membalas error?

Penerima webhook diharapkan membalas dengan status 200 OK. Dua sumber Shopify menjelaskannya dengan cakupan berbeda:

  • Dokumentasi developer Shopify (shopify.dev): koneksi punya batas satu detik dan seluruh permintaan lima detik. Respons di luar rentang 200, termasuk 3XX, dianggap error. Jika tidak ada respons atau terjadi error, Shopify mencoba lagi 8 kali dalam 4 jam, dan setelah 8 kegagalan berturut-turut langganan webhook yang dibuat lewat Admin API dihapus otomatis.
  • Help Center Shopify (halaman webhook di admin): jika tujuan berulang kali membalas non-200, langganan webhook dihapus otomatis dari admin. Halaman ini tidak menjelaskan retry, dan menyebut email ke pemilik toko hanya dikirim untuk webhook yang dibuat aplikasi dari App Store atau aplikasi kustom.

Karena itu, jangan mengandalkan email peringatan untuk webhook yang kamu buat sendiri. Kalau suatu hari pengingat berhenti dan daftar webhook di Shopify ternyata kosong atau kurang, buat ulang webhook yang hilang setelah penyebab kegagalannya beres. Kapan persisnya penghapusan berlaku untuk webhook buatan admin tidak dirinci Shopify, jadi tidak ada angka yang bisa disebut di sini.

Pengguna WooCommerce menghadapi masalah serupa dengan aturan berbeda, dibahas di artikel webhook WooCommerce disabled atau telat.

Kenapa webhook bisa telat, tidak berurutan, atau ganda?

Ini bukan selalu kesalahan setelan. Dokumentasi developer Shopify menyatakan bahwa "webhook delivery isn't always guaranteed" dan menyarankan job rekonsiliasi sebagai cadangan. Shopify juga tidak menjamin urutan, baik dalam satu topik maupun antar topik untuk sumber daya yang sama. Untuk menangani duplikat, penerima disarankan memeriksa header X-Shopify-Webhook-Id. Sumbernya: Shopify Dev Docs, Webhooks.

Dampak praktisnya untuk pengingat: event keranjang ditinggalkan bisa tiba beberapa menit setelah pembeli pergi. Pesan yang dijadwalkan malam hari juga memang ditunda, jadi pesan yang "telat" belum tentu bermasalah. Aturan jeda dan jam kirim dijelaskan di artikel abandoned checkout Shopify.

Bagaimana cara mengetes dengan Send test notification?

  1. Buka Shopify admin, Settings, Notifications, lalu gulir ke Webhooks.
  2. Pada baris webhook, klik menu tiga titik.
  3. Pilih Send test notification. Di Help Center Shopify, opsi ini tertulis Send test.
  4. Kembali ke Kirimi dan segarkan halaman. Status toko seharusnya menjadi Terhubung.

Data tes ditandai sebagai data uji, jadi tidak ada pembeli yang menerima pesan dan kamu aman mengulanginya.

Bagaimana cara memeriksa lewat Kirimi?

Di Kirimi, buka menu Integrasi lalu Shopify. Kartu toko menunjukkan status koneksi, dan kalau secret belum tersimpan akan ada tombol Lengkapi koneksi. Setelah status Terhubung, buka Riwayat pengingat pada toko itu. Tiap pengingat punya status Terjadwal, Terkirim, Dilewati, Gagal, atau Dibatalkan, lengkap dengan alasan untuk yang dilewati atau gagal. Dengan begitu kamu bisa membedakan masalah webhook (tidak ada baris sama sekali) dari masalah pengiriman (ada baris dengan alasan).

Integrasi toko tersedia di paket berbayar Lite, Basic, dan Pro, mulai Rp29.000 per bulan untuk Lite (per Oktober 2026). Untuk membuat akun, daftar di dash.kirimi.id/register. Langkah bergambar dan video 2 menit ada di panduan integrasi Shopify. Kalau kamu butuh gambaran umum webhook ke WhatsApp di luar Shopify, lihat tutorial webhook WhatsApp untuk pengguna Kirimi.id.

Kapan sebaiknya menghubungi support?

Hubungi support setelah kamu sudah memeriksa keenam poin di atas dan status tetap Menunggu webhook pertama. Sertakan domain .myshopify.com, daftar lima event yang kamu buat, versi API yang dipilih, dan waktu kamu menekan Send test notification. Informasi itu mempersingkat pelacakan.

Pertanyaan yang sering diajukan

Kenapa status toko di Kirimi masih Menunggu webhook pertama?

Status itu berubah menjadi Terhubung hanya setelah satu webhook bertanda tangan valid sampai dari Shopify. Penyebab yang paling sering: domain yang dimasukkan bukan .myshopify.com, signing secret belum ditempel atau salah, URL webhook tidak sama dengan yang diberikan Kirimi, atau event yang dipilih salah. Cek satu per satu, lalu kirim Send test notification dari Shopify.

Di mana saya melihat daftar webhook di Shopify admin?

Buka Settings, lalu Notifications, lalu gulir ke bagian Webhooks di bagian bawah. Di sana kamu bisa membuat webhook baru lewat Create webhook (di admin baru tombolnya + Webhook) dan membuka menu tiga titik pada tiap baris untuk mengirim tes.

Apakah Shopify mengulang pengiriman kalau penerima gagal?

Menurut dokumentasi developer Shopify, jika tidak ada respons atau responsnya error, Shopify mencoba lagi 8 kali dalam 4 jam, dan respons di luar rentang 200 dianggap error. Halaman Help Center tidak menjelaskan perilaku retry dan hanya menyebut bahwa webhook bisa dihapus otomatis jika penerima berulang kali membalas non-200.

Apakah tes dari Shopify akan mengirim WhatsApp ke pembeli?

Tidak. Data dari Send test notification ditandai sebagai data uji, jadi di Kirimi hanya status koneksi yang berubah menjadi Terhubung dan tidak ada pembeli yang menerima pesan.

Webhook sudah Terhubung tapi pengingat telat atau tidak terkirim. Apa yang salah?

Shopify tidak menjamin pengiriman webhook selalu tepat waktu atau berurutan, dan event keranjang ditinggalkan bisa datang beberapa menit setelah pembeli pergi. Selain itu, pesan yang dijadwalkan malam hari memang ditunda. Kalau pengingat tidak muncul sama sekali, buka Riwayat pengingat dan baca alasan Dilewati atau Gagal.

Boleh memakai versi API unstable untuk webhook?

Untuk koneksi ke Kirimi, pilih Webhook API version bertanggal terbaru yang tersedia (misalnya 2026-10), bukan unstable. Versi unstable belum final dan bentuk datanya bisa berubah.

Sumber

Bagikan artikel ini

Siap otomatisasi WhatsApp bisnis Anda?

Mulai gratis, tanpa kartu kredit. Setup dalam 5 menit.

Coba Gratis Sekarang

Butuh bantuan?

Tim CS siap membantu via WhatsApp

Chat CS