Episode ini mengajarkan cara membuat workflow yang tahan banting: memahami mode eksekusi dan perilaku error, menyiapkan error workflow khusus, memakai retry dan continue on fail, membangun fallback path, serta mengirim alerting supaya kegagalan tidak luput dari perhatian.

Di episode 6 kalian sudah menguasai alur data: membentuk ulang dengan Set, menggabungkan cabang dengan Merge, memproses massal dengan SplitInBatches, dan menulis logika di Function. Semua itu membuat workflow bisa memproses data dengan baik — saat semuanya berjalan mulus. Tapi di dunia nyata, API down, kredensial kedaluwarsa, atau payload yang tiba-tiba berubah format adalah hal biasa.
Episode ini fokus ke Error Handling & Workflow Reliability. Kita bedah mengapa workflow gagal, apa yang terjadi saat gagal, lalu bangun tiga lapis pertahanan: error workflow untuk penanganan terpusat, retry dan continue on fail untuk toleransi kesalahan, serta fallback path dan alerting supaya setiap kegagalan diketahui dan dipulihkan. Di akhir episode, workflow kalian tidak lagi "menyerah" diam-diam di tengah jalan.
Sebelum menangani error, pahami dulu bagaimana n8n memperlakukan kegagalan. Ada dua mode eksekusi yang menentukan perilaku ini:
onError per workflow.Execute Workflow di editor. Kesalahan langsung tampil di node yang gagal, dan item yang sukses tetap tersimpan.Ketika sebuah node gagal di production, default-nya seluruh workflow berhenti dan eksekusi ditandai failed. Berita baiknya, n8n mencatat eksekusi gagal ini di tab Executions lengkap dengan log error, sehingga kalian bisa menyelidiki root cause.
Info
Pahami dulu: kegagalan bukan musuh. Musuh sebenarnya adalah kegagalan yang tidak terdeteksi. Seluruh teknik di episode ini bertujuan membuat kegagalan terlihat, terukur, dan bisa ditindaklanjuti.
Node yang sering menjadi titik kegagalan adalah yang bergantung pada dunia luar: HTTP Request, node database, dan kredensial. Sebelum membangun error handling, biasakan melihat tab Execution dan membaca pesan error — itu fondasi debugging yang paling sederhana namun paling efektif.
Alih-alih menaruh logika error di dalam setiap workflow, n8n menyediakan Error Workflow: workflow khusus yang dijalankan otomatis ketika workflow lain gagal. Cara kerjanya begini:
Error Trigger sebagai pemicunya.Error Trigger menerima satu item berisi metadata error: nama workflow, nama node yang gagal, pesan error, dan waktu kejadian.Send Email, node Slack, atau Set untuk mencatat ke database.{
"workflowId": "Wf123",
"workflowName": "Sinkronisasi Order",
"nodeName": "HTTP Request",
"error": "ECONNREFUSED - API tidak merespons",
"executionId": "Exec_8812",
"time": "2026-08-03T10:15:00.000Z"
}Lalu pada setiap workflow biasa, atur pengaturan onError untuk menunjuk ke error workflow tersebut. Dengan pola ini, kalian menulis logika notifikasi hanya sekali — semua workflow lain cukup "menunjuk" ke sana, dan konsistensi penanganan error terjaga di seluruh instance. Item yang masuk ke node Error Trigger membawa field seperti workflowName dan error, yang bisa langsung dipakai untuk mengisi pesan notifikasi.
Tidak semua error perlu menghentikan workflow. Error transien seperti timeout jaringan seringkali hilang dengan sendirinya saat diulang. Dua pengaturan membantu di sini:
Retry on Fail: 3 dengan interval 5 detik). Node HTTP Request dan beberapa node integrasi mendukung ini secara langsung.{
"retryOnFail": true,
"maxTries": 3,
"waitBetweenTries": 5000
}Kombinasi ideal: aktifkan Retry on Fail untuk API eksternal yang rawan timeout, dan gunakan Continue on Fail plus node IF yang memeriksa item.error untuk menandai record gagal agar bisa diantre ulang. Dengan begitu satu record bermasalah tidak menggagalkan seluruh batch.
Perhatikan satu hal: retry perlu dibuat idempotent. Saat node diulang, pastikan tidak ada efek samping ganda — misalnya node HTTP Request yang mengirim data perlu memakai idempotency key agar API tujuan tidak mencatat duplikat, dan operasi database sebaiknya berjenis upsert ketimbang insert murni. Retry yang aman adalah retry yang bisa dijalankan berkali-kali tanpa merusak data.
Selain itu, perhatikan juga jeda antar percobaan. Retry dengan jeda tetap bisa membebani API yang sedang sibuk — gunakan jeda eksponensial bila memungkinkan. Beberapa node integrasi mendukung interval antar percobaan; atur dengan bijak agar retry memberi ruang bagi sistem tujuan untuk pulih, bukan memperparah situasi.
Retry tidak selalu menyelesaikan masalah. Saat error persisten — API mati total, kredensial dicabut — dibutuhkan fallback path: jalur alternatif yang membuat workflow tetap menyelesaikan tugas atau paling tidak menyimpan datanya dengan aman.
Node gagal -> retry (3x) -> masih gagal?
-> ya: simpan ke buffer + notifikasi Slack
-> tidak: lanjut ke node berikutnyaPola ini membuat workflow "selesai" walau sebagian data gagal terkirim — data aman, dan manusia tahu harus berbuat apa. Untuk alerting, kirim detail yang actionable: workflow mana, node mana, apa error-nya, dan link ke execution. Konteks itulah yang membedakan notifikasi berguna dari notifikasi yang diabaikan.
Menutup episode ini dengan kebiasaan yang membedakan prototype dari produksi:
IF atau Set untuk memeriksa field wajib sebelum memanggil API, supaya data buruk tidak menjadi error di tengah pipeline.Continue on Fail pada proses batch agar satu item rusak tidak menggagalkan seribu item lain.Warning
Hindari mengaktifkan Continue on Fail tanpa fallback path. Tanpa penampungan dan notifikasi, mode ini justru membuat error diam-diam tertelan — lebih buruk daripada workflow yang berhenti.
Dengan fondasi ini, kalian bisa menerima bahwa hal buruk akan terjadi, dan membuat workflow tetap bisa dipulihkan serta diaudit.
Episode 7 menutup celah keandalan: kalian memahami mode eksekusi dan penyebab kegagalan, membangun error workflow untuk penanganan terpusat, memanfaatkan retry dan continue on fail untuk toleransi transien, serta menyiapkan fallback path dan alerting supaya setiap kegagalan terlihat dan tertangani. Workflow kalian sekarang tidak lagi berhenti diam-diam di tengah malam.
Inti yang harus dibawa pulang:
Di episode 8 berikutnya kalian mulai menghubungkan n8n ke dunia nyata: kita bahas integrasi native nodes & popular APIs — email, Slack, Google Workspace, GitHub, dan database — plus pengelolaan kredensial terpusat yang bisa dipakai ulang. Sampai jumpa!