payment_attempt.created
Dikirim saat sebuah payment attempt dibuat — percobaan pertama pelanggan
membayar sebuah transaksi, atau percobaan ulang setelah
mengganti metode pembayaran. Satu transaksi bisa punya beberapa attempt
sebelum salah satunya berhasil; masing-masing memicu payment_attempt.created
sendiri.
Header
Bagian berjudul "Header"| Header | Deskripsi |
|---|---|
X-Baiyar-Signature |
t=<unix timestamp>,v1=<hex HMAC-SHA256> — lihat Verifikasi Signature Webhook |
Content-Type |
application/json |
Payload
Bagian berjudul "Payload"{ "id": "evt_N6NWhxzQIDRRmreNoKfB", "type": "payment_attempt.created", "created_at": "2026-09-02T09:00:00Z", "data": { "id": "att_8Kx3mQ9dPz2Nc7RwAB12", "transaction_id": "txn_QpL9jZ4mR1sVn6TdWX78", "project_id": "project_IChAi2NR4vzKN3SgEYPI", "reference": "ORDER-2026-0002", "provider": "doku", "provider_payment_id": "sandbox_018f1f29...", "payment_method": { "type": "qris" }, "charged_amount": 15000, "currency": "IDR", "fee_amount": 105, "merchant_net": 14895, "status": "pending", "expires_at": "2026-09-02T09:15:00Z", "created_at": "2026-09-02T09:00:00Z" }}| Field | Tipe | Deskripsi |
|---|---|---|
id |
string | ID event unik — gunakan untuk deduplikasi pengiriman yang di-retry, bukan data.id |
type |
string | Selalu payment_attempt.created |
created_at |
date-time | Kapan event dibuat |
data.id |
string | ID attempt |
data.transaction_id |
string | ID transaksi induk |
data.payment_method |
object | { "type": "qris" } atau { "type": "virtual_account", "bank": "..." } |
data.status |
string | Selalu pending — attempt hanya pernah dibuat dalam status ini |
data.expires_at |
date-time | Kapan instruksi pembayaran attempt ini kedaluwarsa, jika berlaku |
data tidak menyertakan instruksi pembayaran atau checkout URL —
pelanggan sudah punya keduanya dari panggilan API atau alur checkout yang
membuat attempt ini. Panggil
GET /v1/payments/{data.transaction_id}
dengan API key Anda jika butuh status transaksi saat ini.
Pengujian
Bagian berjudul "Pengujian"Tidak ada simulator sandbox untuk event ini — picu dengan benar-benar
membuat payment sandbox (POST /v1/payments, atau menyelesaikan checkout
session) dan perhatikan endpoint Anda menerima pengiriman dalam beberapa
detik. Mengganti metode pembayaran di tengah checkout memicunya lagi untuk
attempt yang baru.