Metode pembayaran

Ringkasan

Semua metode, kodenya, bentuk yang dipakainya, dan apakah sudah aktif.

Sebuah metode dikenali dari kodenya — qris, va_bca, card. Itulah string yang Anda kirim dan yang Anda terima kembali. Semua metode yang aktif berjalan lewat Direct API maupun Kasera Pay Checkout.

MetodeKodepayment.typeStatus
QRISqrisqrAktif
BCA Virtual Accountva_bcapayment_codeAktif
BRI Virtual Accountva_bripayment_codeAktif
BNI Virtual Accountva_bnipayment_codeAktif
Mandiri Virtual Accountva_mandiripayment_codeAktif
Permata Virtual Accountva_permatapayment_codeAktif
CIMB Niaga Virtual Accountva_cimbpayment_codeAktif
Danamon Virtual Accountva_danamonpayment_codeAktif
Maybank Virtual Accountva_maybankpayment_codeAktif
Visa, Mastercard, JCB, AmexcardredirectAktif
DANAdanaredirectDirencanakan
OVOovoredirectDirencanakan
ShopeePayshopeepayredirectDirencanakan
i.sakuisakuredirectDirencanakan
AkulakuakulakuredirectNanti
KredivokredivoredirectNanti
IndodanaindodanaredirectNanti
Alfamartalfamartpayment_codeDirencanakan
Indomaretindomaretpayment_codeDirencanakan

GET /v1/payment_methods mengembalikan daftar ini sesuai akun Anda, lengkap dengan rentang nominal, data pembeli yang dibutuhkan tiap metode, dan fee tiap metode — persen dalam basis poin plus nominal tetap rupiah, mis. {"percent_bps": 70, "flat": 250} untuk QRIS. Baca daftarnya, jangan tulis kode atau tarifnya permanen di kode Anda — sebuah metode bisa diaktifkan, dihentikan, atau diubah tarifnya tanpa rilis di sisi Anda.

Data pembeli yang dibutuhkan tiap metode

Tidak ada data pembeli yang wajib saat create. Yang dibutuhkan sebuah metode, dibutuhkan saat pembayaran — jadi Anda yang mengirimnya di customer, atau halaman checkout yang menanyakannya ke pembeli.

MetodeMembutuhkanAlasan
qrisQR tidak membawa identitas
va_*customer.nameNama yang tampil di aplikasi bank pembeli
cardcustomer.email3-D Secure dan struknya
E-walletcustomer.phoneSebagian dompet mengikat pembayaran ke sebuah nomor

Pada Direct API tidak ada halaman yang bisa bertanya, jadi create yang menyebut metode dengan field wajib yang kosong ditolak 422 beserta nama fieldnya. Pada Checkout langkah customer yang mengumpulkan kekurangannya — jadi itu baru menjadi error kalau Anda juga menghilangkan langkah itu dari checkout.steps.

Memilih metode yang ditawarkan

Sebuah create menerima payment_methods — array berisi kode, yaitu metode yang boleh dipakai untuk pembayaran ini. Isian itu mempersempit pilihan pembeli; tidak pernah bisa melebihi apa yang sudah diaktifkan di akun Anda.

{
  "amount": 150000,
  "external_id": "ORD-1234",
  "payment_methods": ["va_bca", "va_bri", "qris"]
}
  • Dikosongkan — semua metode yang aktif di akun Anda ditawarkan.
  • Satu kode — metode itu saja, tanpa pemilih. Direct API langsung menerima objek payment-nya.
  • Beberapa kode — pemilih berisi kode-kode itu, sesuai urutan yang Anda kirim.

Responsnya melaporkan hasilnya dalam bentuk tunggal: payment_method adalah satu kode, tidak pernah null — diisi saat create dengan kode pertama yang Anda tawarkan, lalu diperbarui ke kode yang benar-benar dipilih pembeli.

qris, delapan bank Virtual Account di atas, dan card sudah aktif; e-wallet dan paylater belum. Create yang menyebut kode yang tidak ada, atau yang dimatikan admin — Anda maupun Kasera — ditolak 422 payment_method_unavailable, jadi baca GET /v1/payment_methods daripada menulis daftarnya permanen di kode.