Blog
Cara Menguji Pembayaran di Mode Sandbox Sebelum Go-Live

Sebelum sebuah toko online mulai menerima uang sungguhan, ada satu tahap yang sering dilewati padahal krusial: menguji alur di sandbox pembayaran. Mode sandbox (sering disebut juga mode test) adalah lingkungan aman untuk menyimulasikan transaksi tanpa dana asli berpindah tangan. Di sinilah Anda memastikan checkout, notifikasi, dan pencatatan pesanan berjalan mulus, jauh sebelum pelanggan pertama datang. Di BorderPay, mode test bisa Anda pakai sejak hari pertama, bahkan sebelum verifikasi identitas (KYC) selesai. Artinya integrasi bisa langsung Anda uji, sementara kemampuan menerima uang sungguhan baru aktif setelah go-live.
Artikel ini membahas manfaat mode test, cara menyimulasikan pembayaran QRIS dan Virtual Account, cara menangani webhook di sandbox, serta checklist yang wajib dituntaskan sebelum beralih ke live.
Kenapa Menguji di Sandbox Itu Penting
Kesalahan integrasi pembayaran biasanya baru ketahuan saat transaksi asli terjadi, dan di titik itu risikonya nyata: pesanan tidak tercatat, status pembayaran tidak ter-update, atau pelanggan sudah membayar tapi sistem Anda menganggap belum. Sandbox menghilangkan risiko itu dengan memberi Anda ruang bereksperimen tanpa konsekuensi finansial.
Beberapa manfaat konkret mode test:
- Aman: tidak ada uang nyata, jadi Anda bebas mencoba skenario gagal sekalipun.
- Bisa dimulai sejak awal: tersedia sejak hari pertama, tanpa menunggu KYC selesai.
- Realistis: alur yang sama dengan produksi, hanya saja dana tidak benar-benar bergerak.
- Lengkap: Anda bisa menguji pembuatan tagihan, pembayaran berhasil, kedaluwarsa, hingga penerimaan webhook.
Perlu ditegaskan: kata "langsung" atau "cepat" di sini hanya berlaku untuk integrasi dan mode test. Untuk benar-benar menerima uang (go-live), Anda tetap wajib menyelesaikan KYC terlebih dahulu.
Cara Kerja Mode Test di BorderPay
BorderPay adalah lapisan teknologi (software) di atas mitra Payment Gateway yang berlisensi Bank Indonesia. Pemrosesan dan penyimpanan dana dilakukan oleh mitra berlisensi tersebut, bukan oleh BorderPay. Di mode test, alur teknisnya identik dengan produksi, tetapi kredensial dan transaksi diberi tanda "test" sehingga tidak menyentuh dana asli. Anda cukup memilih salah satu cara integrasi yang paling cocok:
- Dashboard — buat link pembayaran manual untuk uji cepat tanpa koding.
- Payment link — bagikan tautan pembayaran ke pelanggan atau ke diri sendiri untuk uji coba.
- Embed Checkout — tempel satu snippet ke halaman Anda dan langsung punya form checkout.
- REST API — kontrol penuh secara programatik, cocok untuk aplikasi custom.
Untuk mengetahui metode apa saja yang tersedia, ada endpoint discovery GET /payment-methods yang bisa Anda panggil lebih dulu. Detail teknisnya dapat Anda pelajari di dokumentasi.
Menyimulasikan Sandbox Pembayaran QRIS
QRIS adalah salah satu metode paling populer untuk UMKM karena satu kode bisa dipindai dari banyak aplikasi. Di sandbox, langkah menguji QRIS kira-kira begini:
- Buat tagihan (charge) dengan metode QRIS lewat dashboard atau API.
- Sistem menghasilkan kode QR beserta batas waktu bayar. QRIS berlaku 60 menit; setelah itu otomatis kedaluwarsa dan tidak bisa dibayar telat.
- Simulasikan pembayaran "berhasil" dari lingkungan test, lalu amati status tagihan berubah menjadi terbayar.
- Uji juga skenario kedaluwarsa: biarkan (atau simulasikan) tagihan lewat batas waktu dan pastikan sistem Anda menandainya sebagai expired.
Menguji kedua jalur, berhasil dan kedaluwarsa, sama pentingnya, karena logika di sisi Anda harus tahan terhadap keduanya. Kalau ingin memperdalam konsep QRIS itu sendiri, ada bacaan tentang cara kerja QRIS dan cara terima QRIS di website.
Menyimulasikan Pembayaran Virtual Account
Virtual Account (VA) memberi setiap tagihan nomor rekening unik yang bisa dibayar via transfer bank. Alur pengujiannya serupa QRIS:
- Buat tagihan dengan metode VA; sistem mengeluarkan nomor VA dan batas waktu.
- VA berlaku 24 jam; lewat itu otomatis kedaluwarsa.
- Simulasikan "transfer masuk" di lingkungan test untuk menandai tagihan sebagai terbayar.
- Verifikasi bahwa pesanan atau saldo di sistem Anda ter-update sesuai notifikasi.
Perbedaan penting: batas waktu VA lebih panjang (24 jam) dibanding QRIS (60 menit), jadi pengalaman pengguna dan pesan pengingat mungkin perlu disesuaikan. Untuk gambaran lebih luas, baca apa itu Virtual Account dan perbandingan QRIS vs Virtual Account.
Menguji Webhook di Sandbox
Bagian yang paling sering luput justru webhook, yaitu notifikasi otomatis dari BorderPay ke server Anda saat status pembayaran berubah. Tanpa webhook yang andal, sistem Anda bisa "tidak sadar" bahwa pelanggan sudah membayar.
Di BorderPay, notifikasi dikirim dengan tanda tangan HMAC untuk event seperti payment.paid, payment.expired, dan payment.failed. Tersedia juga log dan fitur kirim ulang. Saat menguji di sandbox, pastikan Anda:
- Memverifikasi tanda tangan HMAC setiap notifikasi, agar hanya menerima event yang benar-benar dari BorderPay.
- Menerapkan idempotensi, sehingga jika notifikasi yang sama terkirim dua kali (misalnya karena kirim ulang), pesanan tidak diproses ganda.
- Menangani semua jenis event, bukan hanya pembayaran berhasil, tapi juga kedaluwarsa dan gagal.
Uji webhook sampai benar-benar stabil di sandbox. Ini investasi kecil yang menyelamatkan Anda dari sakit kepala di produksi. Manfaatkan fitur kirim ulang untuk memastikan endpoint Anda memberi respons yang benar bahkan ketika notifikasi datang berulang.
Tips Menguji Webhook di Lingkungan Lokal
Saat pengembangan, server Anda sering hanya bisa diakses dari localhost. Untuk menerima webhook dari luar, gunakan tunnel (misalnya alat yang mengekspos port lokal ke URL publik sementara) dan daftarkan URL tunnel itu sebagai alamat webhook di dashboard. Setelah go-live, ingat untuk mengganti URL tunnel dengan URL produksi yang stabil, jangan sampai URL sementara masih terpasang saat menerima transaksi asli.
Checklist Sebelum Go-Live
Setelah semua alur di sandbox berjalan mulus, barulah Anda siap beralih ke live. Berikut checklist go-live yang sebaiknya dituntaskan:
| Item | Keterangan |
|---|---|
| KYC selesai | Wajib untuk menerima uang sungguhan. Tanpa ini, Anda hanya bisa mode test. |
| Ganti ke kredensial live | Pastikan aplikasi memakai kredensial produksi, bukan test. |
| Verifikasi tanda tangan webhook aktif | Cek HMAC di endpoint produksi Anda. |
| Idempotensi teruji | Notifikasi ganda tidak menyebabkan pemrosesan dobel. |
| Skenario expired ditangani | QRIS 60 menit & VA 24 jam sudah diperhitungkan. |
| URL webhook produksi terpasang | Bukan URL lokal atau tunnel yang dipakai saat uji. |
| Pahami alur settlement | Dana tertahan sebentar lalu tersedia sesuai jadwal per metode. |
| Pahami alur & biaya penarikan | Penarikan otomatis ke rekening bank; ada biaya per penarikan. |
Beberapa catatan penting untuk checklist di atas:
- Settlement: dana tidak langsung bisa ditarik. Setelah pembayaran, dana tertahan sebentar lalu tersedia mengikuti jadwal per metode (hari kerja, melewati akhir pekan dan libur nasional). Status dan tanggalnya tampil di dashboard.
- Penarikan: dilakukan otomatis ke rekening bank Indonesia dan dikenakan biaya per penarikan; jika penarikan gagal, saldo dikembalikan penuh.
- Biaya: BorderPay tanpa biaya pendaftaran maupun langganan, biaya hanya muncul saat transaksi. Rincian tarif dapat Anda lihat di halaman pricing.
Tips Agar Transisi ke Live Mulus
Ganti kredensial test ke live hanya di satu tempat terpusat (misalnya variabel lingkungan), sehingga tidak ada sisa kredensial test yang tertinggal. Lakukan satu transaksi asli bernominal kecil sebagai uji sanity setelah go-live, lalu pantau dashboard untuk memastikan status pembayaran, settlement, dan penarikan berjalan sesuai harapan. Simpan log webhook produksi Anda agar mudah menelusuri bila ada anomali.
Jika masih ada pertanyaan seputar mode test, KYC, atau perbedaan sandbox dan live, kunjungi halaman FAQ. Saat Anda sudah siap mencoba langsung, daftar dan mulai eksperimen di mode test sejak hari pertama.
Kesimpulan
Menguji di sandbox pembayaran bukan formalitas, melainkan pembeda antara peluncuran yang mulus dan peluncuran yang penuh kejutan. Dengan mode test BorderPay, Anda bisa menyimulasikan pembayaran QRIS dan VA, memastikan webhook diverifikasi dan idempoten, serta menuntaskan checklist sebelum go-live. Ingat, "langsung" hanya berlaku untuk integrasi dan mode test; menerima uang sungguhan tetap butuh KYC. Setelah semuanya hijau di sandbox, langkah berikutnya tinggal selesaikan verifikasi dan beralih ke kredensial live dengan percaya diri.