Buat transaksi
Membuat transaksi pembayaran pada satu kanal.
amount yang Anda kirim adalah nominal dasar. Nominal yang
akhirnya dibayar pelanggan bergantung pada fee_mode kanal:
fee_mode | Dibayar pelanggan | Diterima merchant |
|---|---|---|
merchant | amount | amount − fee |
customer | amount + fee | amount |
split | amount + bagian pelanggan | amount − bagian merchant |
Nilai yang dibebankan ke pelanggan dibulatkan ke rupiah utuh agar halaman bayar dan QR ke bank tidak pernah berbeda.
Isi payment_info berbeda tiap tipe kanal. Panduan per metode:
Virtual Account, QRIS,
E-Wallet, Gerai Ritel.
bearerAuthAuthorizationBearer <token>Kirim kunci API sebagai bearer token pada header Authorization,
dengan format Bearer YOUR_APIKEY.
Ada dua jenis kunci:
sk_live_— produksi. Transaksi nyata, dan butuh KYC yang sudah disetujui.sk_test_— sandbox. Tanpa perpindahan dana, tanpa syarat KYC.
Ambil kunci di Dashboard Merchant, menu Settings lalu API Keys.
Kunci API adalah kredensial rahasia: simpan di environment variable atau secret manager. Jangan pernah menaruhnya di frontend, aplikasi mobile, atau repositori publik.
application/json- body
channel_code*stringKode kanal dari GET /payment-channels.
amount*numberNominal dasar dalam rupiah. Minimum global 1.000, tetapi tiap kanal
punya batasnya sendiri (VA 10.000, gerai ritel 15.000) — pakai
min_amount dari daftar kanal.
1000 <= valuereference_id*stringIdentitas unik di sistem Anda. Dipakai untuk pencocokan webhook.
length <= 255customer_name*stringcustomer_email*stringemailreturn_url*stringTujuan redirect setelah pembayaran selesai.
uricustomer_phone?stringWajib untuk OVO. Dipakai juga untuk notifikasi WhatsApp bila merchant mengaktifkannya.
length <= 20order_items?array<>Rincian produk; tampil di halaman bayar dan jejak audit.
items <= 100Transaksi dibuat dengan status pending.
application/json- response
status?stringdata?curl -X POST 'https://paymenku.com/api/v1/transaction/create' \ -H 'Content-Type: application/json' \ -d '{ "channel_code": "qris", "amount": 15000, "reference_id": "INV-20261027-001", "customer_name": "Uji Dokumentasi", "customer_email": "uji@example.com", "return_url": "https://tokoanda.com/selesai", "order_items": [ { "name": "Item Uji", "quantity": 1 } ]}'{ "status": "success", "data": { "trx_id": "IDP202610271005522956", "reference_id": "INV-20261027-001", "amount": "15305.00", "status": "pending", "pay_url": "https://paymenku.com/pay/IDP202610271005522956", "payment_info": { "transaction_id": "6a1f0c2e-9d4b-4f7a-8c11-2b7e5d9a1c33", "transaction_status": "pending", "qr_url": "https://paymenku.com/api/qris/IDP202610271005522956", "qr_string": "00020101021226670016ID.CO.QRIS.WWW01189360091400000000000215ID10240000000000303UMI51440014ID.CO.QRIS.WWW5204481453033605802ID5910Toko Anda6013Jakarta Pusat61051034062070703A0163041A2B", "expiration_date": "2026-10-27T10:20:40+07:00" } }}