- Beranda
- Webhook
- Ringkasan webhook
Ringkasan webhook
Cara mendaftarkan endpoint webhook, memilih event-nya, dan seperti apa pengiriman dari Baiyar.
Baiyar dapat mengirim event bertanda tangan saat pembayaran, payment link, invoice, proyek, API key, atau endpoint webhook
berubah. Setiap event dikirim sebagai request POST dengan body JSON. Jenis event yang sama tersedia di sandbox dan live;
livemode menunjukkan environment-nya.
Daftarkan endpoint
Section titled “Daftarkan endpoint”Di dashboard (Developer Tools → Webhook → Tambah endpoint) atau lewat Merchant API (POST /v1/webhook-endpoints, scope webhooks:write).
- Alamatnya harus HTTPS publik.
localhost, alamat privat, danhttpbiasa ditolak, di sandbox juga. Untuk menguji dari laptop pakai tunnel. - Endpoint milik satu proyek atau seluruh merchant. Endpoint proyek menerima event proyek itu; endpoint merchant
menerima event semua proyek dan juga event akun (
webhook_endpoint.disabled). - Kamu mendapat signing secret,
whsec_…, sekali saja. Simpan seperti password. Secret bisa dirotasi; secret lama tetap menandatangani selama 24 jam supaya kamu bisa berganti tanpa kehilangan event. - Maksimal 5 endpoint per proyek dan 5 untuk merchant, di tiap environment.
Pilih event
Section titled “Pilih event”events adalah daftar. Tiap entri adalah jenis event (payment.succeeded), sebuah keluarga (payment.*, payment.attempt.*,
payment_link.*), atau * untuk semuanya. Daftar kosong berarti semuanya. GET /v1/event-types menampilkan semua jenis
beserta deskripsi dan cakupannya.
Yang kamu terima
Section titled “Yang kamu terima”POST /your/endpoint HTTP/1.1Content-Type: application/jsonBaiyar-Signature: t=1760608800,v1=5b1f…Baiyar-Event-Id: wev_01…Baiyar-Event-Type: payment.succeededBaiyar-Delivery-Id: wdl_01…{ "id": "wev_01k7…", "type": "payment.succeeded", "livemode": false, "created": 1760608800, "project_id": "prj_01k7…", "data": { "object": { "id": "pay_01k7…", "status": "paid", "amount": 10000000, "currency": "IDR" } }}data.object adalah objek yang sama dengan yang dikembalikan API untuk resource itu (GET /v1/payments/{id},
GET /v1/payment-links/{id}), dibaca saat event dibuat. Nominal adalah bilangan bulat dalam satuan terkecil mata uang
(10000000 adalah Rp100.000,00).
Jawab dengan 2xx apa pun dalam 10 detik. Selain itu, atau tanpa jawaban, dihitung sebagai percobaan yang gagal.