Lewati ke isi

AI & Otomasi

Kenapa Webhook n8n Tidak Jalan? Penyebab dan Solusinya

Penyebab umum webhook n8n tidak terpicu, dari URL uji vs produksi, workflow belum aktif, reverse proxy, sampai batas payload, dan cara memperbaikinya.

Terbit 6 menit baca

Jawaban singkat

Webhook n8n paling sering gagal karena aplikasi pengirim memakai URL uji, workflow belum diaktifkan atau dipublikasikan, atau n8n di belakang reverse proxy tanpa N8N_WEBHOOK_URL yang benar. Penyebab lain: metode HTTP tidak cocok, path bentrok, payload terlalu besar, dan firewall.

Daftar isi
  1. Ringkasan penyebab dan solusinya
  2. Penyebab di sisi n8n
  3. 1. URL uji dipakai di produksi
  4. 2. Workflow belum aktif
  5. 3. Metode HTTP atau path tidak cocok
  6. 4. Payload terlalu besar
  7. Penyebab di jaringan dan reverse proxy
  8. 5. Base URL webhook salah
  9. 6. Port tertutup atau DNS belum mengarah
  10. 7. Pengirim menyerah karena respons terlalu lama
  11. Kapan masalahnya di n8n, kapan di pengirim?
  12. Pertanyaan yang sering diajukan

Webhook di n8n adalah alamat URL yang menunggu kiriman data dari aplikasi lain, misalnya formulir website, payment gateway, atau toko online. Begitu data masuk, workflow berjalan. Kalau webhook tidak jalan, workflow diam saja dan sering kali tidak ada pesan error apa pun di n8n, karena dari sudut pandang n8n memang tidak pernah ada permintaan yang datang.

Taruhannya nyata. Pesanan tidak tercatat, notifikasi pembayaran hilang, atau prospek dari formulir tidak masuk CRM, dan kamu baru sadar beberapa hari kemudian. Kabar baiknya, sebagian besar kasus berasal dari segelintir penyebab yang sama. Kalau konsep webhook masih asing, baca dulu apa itu webhook.

Ringkasan penyebab dan solusinya

GejalaPenyebab paling mungkinSolusi
Jalan saat uji, mati setelah ituPengirim memakai URL uji (/webhook-test/)Pakai URL produksi (/webhook/) dan aktifkan workflow
Error 404 dari n8nWorkflow belum aktif, path atau metode salahAktifkan workflow, cocokkan path dan metode HTTP
URL webhook berisi localhost:5678n8n di belakang reverse proxy tanpa base URLAtur N8N_WEBHOOK_URL ke domain publik
Pengirim mendapat timeoutFirewall, DNS, atau proses workflow terlalu lamaBuka port lewat proxy, balas cepat dengan Respond to Webhook
Error 413 atau data terpotongPayload melebihi batasNaikkan N8N_PAYLOAD_SIZE_MAX dan batas di proxy
Pengecekan IP gagaln8n membaca IP proxy, bukan IP asliAtur N8N_PROXY_HOPS

Penyebab di sisi n8n

1. URL uji dipakai di produksi

Ini penyebab yang paling sering ditemui. Setiap node Webhook punya dua URL: Test URL dengan path bawaan webhook-test dan Production URL dengan path bawaan webhook. Menurut dokumentasi n8n, URL uji hanya mendengarkan selama 120 detik setelah kamu menekan tombol "Listen for test event". Di luar itu, permintaan ke URL uji ditolak.

Jadi kalau kamu menyalin URL uji ke pengaturan payment gateway, semuanya terlihat berhasil saat dicoba, lalu berhenti total keesokan harinya. Ganti dengan URL produksi.

2. Workflow belum aktif

URL produksi baru mendengarkan setelah workflow diaktifkan. Di n8n versi terbaru, tindakan ini disebut Publish, sedangkan di versi lama berupa sakelar Active. Selama workflow belum dipublikasikan atau diaktifkan, URL produksi mengembalikan 404. Perubahan pada workflow yang sudah aktif juga perlu disimpan atau dipublikasikan ulang agar berlaku.

3. Metode HTTP atau path tidak cocok

Node Webhook menerima metode yang dipilih di pengaturannya. Kalau node diatur untuk POST tetapi aplikasi mengirim GET, permintaan tidak akan cocok. Dokumentasi n8n juga menyebut hanya boleh ada satu webhook untuk setiap kombinasi path dan metode. Bila dua workflow memakai path dan metode yang sama, ubah salah satunya.

4. Payload terlalu besar

Batas ukuran payload diatur variabel N8N_PAYLOAD_SIZE_MAX, dengan nilai bawaan 16 MiB, dan N8N_FORMDATA_FILE_SIZE_MAX untuk file di form-data dengan bawaan 200 MiB (per dokumentasi yang dicek 7 November 2026). Kalau webhook menerima file besar, naikkan nilai ini, dan jangan lupa batas di reverse proxy juga (misalnya client_max_body_size di Nginx), karena proxy bisa menolak lebih dulu.

Penyebab di jaringan dan reverse proxy

5. Base URL webhook salah

n8n berjalan di port 5678 secara internal. Saat diletakkan di belakang reverse proxy dengan HTTPS di port 443, n8n tidak bisa menebak alamat publiknya sendiri, sehingga URL webhook yang ditampilkan bisa berisi localhost:5678 atau http:// biasa. Dokumentasi n8n meminta kamu mengatur alamat ini secara manual:

N8N_WEBHOOK_URL=https://n8n.domainkamu.com/
N8N_PROXY_HOPS=1

Per dokumentasi resmi, N8N_WEBHOOK_URL menggantikan WEBHOOK_URL yang dinyatakan usang sejak n8n 2.35.0. Di versi lama, nama yang dipakai masih WEBHOOK_URL. Setelah mengubah variabel, mulai ulang container atau layanan n8n. Dasar reverse proxy dibahas di apa itu reverse proxy.

6. Port tertutup atau DNS belum mengarah

Uji dari luar server dengan curl:

curl -i -X POST https://n8n.domainkamu.com/webhook/path-kamu \
  -H 'Content-Type: application/json' -d '{"tes": 1}'

Kalau curl dari laptop timeout, masalahnya ada sebelum n8n: DNS belum mengarah ke IP server, firewall menutup port 443, atau proxy belum meneruskan ke port 5678. Kalau curl berhasil tetapi aplikasi pengirim tetap gagal, masalahnya ada di sisi pengirim.

7. Pengirim menyerah karena respons terlalu lama

Node Webhook bisa diatur untuk membalas segera atau setelah workflow selesai. Bila diatur menunggu workflow selesai dan prosesnya lama (misalnya memanggil model AI), pengirim bisa timeout lalu menganggap pengiriman gagal, bahkan mengirim ulang. Dokumentasi n8n menyebut, misalnya, n8n Cloud yang berada di belakang Cloudflare akan memutus permintaan yang tidak dibalas dalam 100 detik. Solusinya: balas segera dengan node Respond to Webhook, lalu lanjutkan proses berat di belakang.

Kapan masalahnya di n8n, kapan di pengirim?

Patokan paling cepat adalah tab Executions di n8n. Kalau ada eksekusi yang tercatat (berhasil atau gagal), permintaan sudah sampai, dan masalahnya ada di dalam workflow: periksa node yang error. Kalau tidak ada eksekusi sama sekali, permintaan tidak pernah sampai atau ditolak sebelum workflow berjalan, jadi periksa URL, status aktif, proxy, dan jaringan.

Untuk sisi pengirim, hampir semua layanan yang mengirim webhook punya log pengiriman beserta kode respons. Kode 404 mengarah ke URL atau status workflow, 413 ke ukuran payload, 5xx ke proxy atau n8n yang sedang mati, dan timeout ke jaringan atau respons yang lambat. Contoh penerapan webhook untuk pesanan toko ada di notifikasi pesanan baru ke grup Telegram.

Pertanyaan yang sering diajukan

Kenapa webhook berhenti bekerja setelah n8n diperbarui?

Periksa apakah workflow masih aktif dan apakah variabel lingkungan seperti base URL webhook terbawa ke container baru. Di versi baru, nama variabel bisa berubah, misalnya WEBHOOK_URL menjadi N8N_WEBHOOK_URL.

Apakah webhook n8n bisa diamankan dengan password?

Bisa. Node Webhook punya opsi autentikasi, misalnya Basic Auth atau Header Auth. Pastikan aplikasi pengirim mendukung metode yang dipilih.

Data webhook masuk, tetapi isinya kosong. Kenapa?

Biasanya karena header Content-Type tidak sesuai dengan isi, misalnya JSON dikirim tanpa header application/json. Lihat bagian body, query, dan headers di data eksekusi untuk menemukan di mana data sebenarnya berada.

Bagaimana mencegah data hilang saat n8n mati?

Pilih layanan pengirim yang mengulang pengiriman bila gagal, pantau ketersediaan n8n dengan alat monitoring, dan pertimbangkan antrean pesan untuk alur yang sangat penting.

Sumber & referensi

Baca juga