Direct API
E-wallet
Redirect pembeli ke provider, lalu kembali ke toko Anda setelah selesai.
Belum aktif. Ini format e-wallet saat rilis nanti, sudah kami publikasikan supaya Anda bisa mulai integrasi. Untuk saat ini, create dengan salah satu kode ini ditolak 422 payment_method_unavailable.
Pembeli keluar dari halaman Anda, menyetujui pembayaran di aplikasi atau web provider, lalu kembali ke return_url Anda. Paylater pakai format redirect dan integrasi yang sama, tapi baru menyusul setelah e-wallet — paylater butuh data pembeli paling banyak, dan detailnya paling sedikit yang sudah pasti.
Langkah integrasi
- Buat permintaan pembayaran.
- Redirect pembeli ke payment.redirect_url.
- Terima konfirmasi pembayaran lewat webhook payment.paid.
- Cek status kalau perlu kepastian: GET /v1/transactions/:id.
Kode
| Kode | Provider | Jenis |
|---|---|---|
dana | DANA | E-wallet |
ovo | OVO | E-wallet |
shopeepay | ShopeePay | E-wallet |
isaku | i.saku | E-wallet |
akulaku | Akulaku | Paylater — later |
kredivo | Kredivo | Paylater — later |
indodana | Indodana | Paylater — later |
1. Buat permintaan pembayaran
return_url paling penting di sini: ke situlah provider mengembalikan pembeli setelah mereka selesai.
curl https://pay.kasera.id/v1/transactions \
-H "Authorization: Bearer kp_live_..." \
-H "Idempotency-Key: order-1234" \
-H "Content-Type: application/json" \
-d '{
"amount": 150000,
"external_id": "ORD-1234",
"payment_methods": ["dana"],
"return_url": "https://toko.example/selesai"
}'{
"id": "payreq_9b2f...",
"status": "pending",
"payment_method": "dana",
"payment": {
"type": "redirect",
"redirect_url": "https://link.dana.id/pay/...",
"display_name": "DANA"
},
"expires_at": "2026-08-27T13:00:00+07:00"
}2. Redirect pembeli ke sana
Arahkan browser ke payment.redirect_url. Jangan buka di iframe atau popup — provider memblokir iframe, dan popup paling sering diblokir browser HP. Simpan state pesanan Anda sebelum redirect, karena halamannya akan ditinggalkan.
3. Terima konfirmasi pembayaran
Pembeli yang kembali ke return_url itu navigasi, bukan bukti — mereka bisa sampai ke sana cuma dengan menutup halaman provider. Proses pesanan dari webhook payment.paid. Di format inilah kesalahan itu paling gampang terjadi, karena pembeli yang kembali kelihatan seperti sudah berhasil bayar.
4. Cek status
Saat kembali, ambil permintaan pembayarannya dari server sebelum menampilkan hasil akhir ke pembeli. Pembeli yang batal di halaman provider kembali ke URL yang sama dengan pembeli yang sudah bayar.