PAYWISE
id
← Semua artikel

Panduan

Apa itu webhook? Penjelasan sederhana untuk bisnis online

Webhook adalah pesan yang dikirim satu sistem ke sistem lain saat sesuatu terjadi, misalnya "pesanan ini sudah dibayar". Ini cara kerja webhook, kenapa pembayaran memakainya, dan cara menanganinya dengan aman.

Terbit 06 Oktober 2026 3 menit baca

Tersedia juga dalam: English, 简体中文

Apa itu webhook? Penjelasan sederhana untuk bisnis online

Kalau Anda menerima pembayaran online, cepat atau lambat akan ada yang meminta URL webhook Anda. Kedengarannya teknis, tapi idenya sederhana.

Webhook dalam satu kalimat

Webhook adalah pesan yang dikirim otomatis oleh satu sistem ke sistem lain saat sesuatu terjadi.

Bayangkan notifikasi paket. Anda tidak menelepon kurir setiap lima menit untuk bertanya "paket saya sudah sampai?". Kurir yang mengirim pesan saat paketnya tiba. Webhook melakukan hal yang sama untuk software.

Polling vs webhook

Tanpa webhook, website Anda harus terus bertanya ke payment gateway: "Pesanan 1042 sudah dibayar? Sekarang? Sekarang?". Ini disebut polling. Lambat, boros, dan pelanggan menunggu lebih lama.

Dengan webhook, website Anda cukup menunggu. Saat pembayaran dikonfirmasi, gateway menghubungi website Anda dan berkata: "Pesanan 1042 sudah dibayar."

Cara kerja webhook pembayaran: pelanggan membayar, PAYWISE mengonfirmasi, webhook bertanda tangan dikirim dan pesanan diperbarui

Seperti apa bentuk webhook

Secara teknis, webhook adalah POST request HTTPS ke sebuah alamat di server Anda, misalnya https://tokoanda.com/webhooks/paywise. Isinya pesan JSON kecil:

{
  "event": "payment.paid",
  "data": {
    "reference": "TRX-...",
    "merchant_reference": "INV-1042",
    "payment_method": "QRIS",
    "amount": "...",
    "currency": "IDR",
    "status": "paid"
  }
}

Website Anda membaca pesan itu, mencari pesanan INV-1042, menandainya terbayar, lalu bisa langsung mengirim barang atau membuka layanan.

Kenapa pembayaran bergantung pada webhook

  • Status pesanan langsung berubah. Pesanan terbayar begitu uang masuk, bahkan jam 3 pagi.
  • Tanpa cek manual. Tidak perlu ada yang mencocokkan mutasi rekening dengan pesanan.
  • Tetap jalan walau pelanggan pergi. Meski pelanggan menutup browser setelah membayar, website Anda tetap mendapat kabar.
  • Lebih sedikit bukti transfer palsu. Yang mengonfirmasi pembayaran adalah gateway, bukan tangkapan layar. Baca cara mencegah bukti transfer palsu.

Cara menangani webhook dengan aman

  1. Cek tanda tangannya. Siapa pun bisa mengirim POST request ke URL Anda. PAYWISE menandatangani setiap webhook dengan secret Anda di header X-PAYWISE-Signature (HMAC-SHA256 dari body mentah). Tolak semua yang tidak cocok. Langkah lengkapnya: memverifikasi tanda tangan webhook PAYWISE.
  2. Jawab dengan cepat. Balas dengan status 2xx begitu pesan sudah disimpan, lalu kerjakan proses yang lambat (email, update stok) setelahnya.
  3. Siap menerima pesan berulang. Kalau pengiriman gagal, pesan dikirim ulang, jadi event yang sama bisa datang lebih dari sekali. Tandai pesanan terbayar hanya sekali.
  4. Pakai HTTPS. Jangan pernah menerima notifikasi pembayaran di alamat http:// biasa.
  5. Jangan hanya percaya pada redirect. Halaman tujuan setelah pelanggan membayar bisa dilewati atau dipalsukan. Webhook adalah konfirmasi yang sebenarnya.

Webhook di PAYWISE

  • Atur URL dan event yang ingin diterima di halaman Webhook, lalu pakai tombol tes untuk memastikan server Anda menjawab.
  • PAYWISE mengirim event seperti payment.paid, payment.expired dan payment.failed.
  • Kalau server Anda tidak menjawab, PAYWISE mencoba lagi otomatis: setelah sekitar 1 menit, 5 menit, 30 menit dan 2 jam.
  • Setiap percobaan tercatat di transaksi, dan Anda bisa mengirim ulang webhook secara manual setelah server Anda diperbaiki.

Tidak yakin apakah webhook sudah sampai? Panduan API logs menunjukkan tempat mengeceknya. Detail lengkapnya ada di dokumentasi developer.

Artikel lainnya

Mulai dengan key sandbox hari ini.

Daftar, buat key sandbox, dan kirim transaksi pertama dari playground dalam beberapa menit.