API pembayaran untuk website dan aplikasi.
REST API untuk membuat tagihan, mengecek status, dan menarik saldo. Server Anda membuat tagihan, pembeli membayar, lalu SekaliPay Merchant mengirim webhook bertanda tangan ke server Anda.
Bagaimana alurnya?
Satu tagihan, dari permintaan pertama sampai webhook lunas.
Diagram urutan: server Anda mengirim POST /payment, SekaliPay Merchant membalas 201 dengan payment_link dan qr_link, pembeli membayar dari link, SekaliPay Merchant mengirim webhook dengan X-Signature, dan server Anda membalas 200.
BODY='{"merchant_ref_id":"ORDER-2026-00184","amount":150000,"payment_code":"QRIS","customer_name":"Budi Santoso","customer_email":"[email protected]","customer_phone":"081234567890","callback_url":"https://toko-anda.id/webhook/sekalipay","return_url":"https://toko-anda.id/checkout/selesai"}'
SIGNATURE=$(printf '%s' "$BODY" | openssl dgst -sha256 -hmac "$SEKALIPAY_SECRET_KEY" | sed 's/^.* //')
curl -X POST https://sekalipay.com/api/v1/gateway/payment \
-H "X-API-Key: $SEKALIPAY_API_KEY" \
-H "X-Signature: $SIGNATURE" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
--data-raw "$BODY"{
"status": true,
"message": "OK",
"data": {
"merchant_ref_id": "ORDER-2026-00184",
"invoice": "SPY1791446400K3QZ",
"amount": 150000,
"fee": 1500,
"total": 151500,
"payment_code": "QRIS",
"payment_link": "https://sekalipay.com/payment/SPY1791446400K3QZ",
"qr_link": "https://sekalipay.com/payment/SPY1791446400K3QZ/qris",
"virtual_account": null,
"checkout_url": null,
"payment_guide": null,
"expired_at": "2026-10-08T08:30:00.000000Z",
"status": "pending",
"is_sandbox": false
}
}{
"merchant_ref_id": "ORDER-2026-00184",
"invoice": "SPY1791446400K3QZ",
"amount": 150000,
"fee": 1500,
"total": 151500,
"status": "paid",
"paid_at": "2026-10-08 15:05:12"
}Tagihan berlaku 30 menit. Field lengkap dan contoh PHP serta Node.js ada di dokumentasi.
Keamanan dan keandalan
- Autentikasi
- API key di header X-API-Key, tanda tangan HMAC-SHA256 dengan secret key. Pilih IP Whitelist, atau Enhanced HMAC dengan X-Timestamp (jendela 300 detik) untuk server tanpa IP tetap.
- Verifikasi webhook
- Setiap webhook membawa X-Signature, HMAC-SHA256 atas body mentah. Cocokkan dengan secret key Anda sebelum memproses.
- Percobaan ulang webhook
- Hingga 3 percobaan, dengan jeda 30 detik lalu 5 menit. Batas waktu 120 detik per percobaan.
- Sandbox
- Mode akun, bukan kunci terpisah. URL dan kunci sama, transaksi uji bertanda is_sandbox dan tidak masuk saldo.
Mulai integrasi dalam enam langkah
- 1
Ambil API key dan secret key
Di dasbor, menu Pengaturan API. Secret key tampil setelah verifikasi PIN.
- 2
Pilih mode akses
IP Whitelist untuk server dengan IP tetap, Enhanced HMAC untuk yang tidak.
- 3
Atur URL webhook
Alamat publik di server Anda. Bisa diganti per tagihan lewat callback_url.
- 4
Aktifkan metode pembayaran
Hanya metode yang aktif yang diterima API.
- 5
Uji di mode sandbox
Buat tagihan uji dan pastikan webhook terverifikasi.
- 6
Pindah ke produksi
Matikan mode sandbox. Kunci dan URL tidak perlu diganti.
Endpoint yang tersedia
Semua di bawah base URL https://sekalipay.com/api/v1/gateway.
- POST
/paymentBuat tagihan baru - GET
/payment/{merchant_ref_id}Cek status tagihan - GET
/payment-methodsMetode aktif, batas nominal, waktu cair, dan biaya - GET
/merchant/infoSaldo tersedia, saldo tertahan, dan status akun - POST
/withdrawalTarik saldo ke rekening
Terdaftar PSE Komdigi
023936.01/DJAI.PSE/06/2026
Mulai terima pembayaran.
Daftar hari ini. Setelah verifikasi 1 sampai 2 hari kerja, tagihan pertama bisa langsung Anda kirim.

