Xendit logo

xendit docs

Menguji Pembayaran

Pengujian

Sebelum membuat akun Anda Live , Anda akan ingin menguji integrasi Anda secara menyeluruh. Kami membagi skenario pembayaran pengujian berdasarkan metode pengumpulan: Non-fixed virtual account , dan fixed virtual account . Jika Anda memerlukan bantuan setelah ini, silakan kirimkan pertanyaan atau obrolan kepada kami kapan saja melalui email. Dalam mode tes, Anda dapat menggunakan informasi berikut ini ke berbagai skenario yang serupa.

Simulasi Invoice dengan Non-fixed Virtual Account

SKENARIOCOBA INI

Pembayaran invoice berhasil

Invoice telah dibayarkan menggunakan metode non-fixed virtual account dan akan memulai callback API ke URL callback Anda

PARAMETERVALUE

amount

3000000 or 2000000

Simulasi Pembayaran Virtual Account

Untuk menyimulasikan pembayaran ke virtual account, kirim permintaan POST dengan detail sebagai berikut:

Fixed Virtual Account

Endpoint: /callback_virtual_accounts/{external_id=}/simulate_payment

Catatan: Tambahkan 'external_id' relevan untuk pembayaran virtual account yang Anda ingin simulasikan.

Invoice / Pool Virtual Account

Endpoint: /pool_virtual_accounts/simulate_payment

SKENARIOCOBA INI

Simulasi pembayaran virtual account berhasil

Virtual account akan menerima acara pembayaran untuk jumlah transfer yang ditentukan

PARAMETERVALUE

bank_code

Kode bank dari virtual account (mis. "BCA")

bank_account_number

Nomor Virtual Account lengkap untuk mensimulasikan pembayaran. Pastikan untuk menyertakan 5 digit merchant_code di awal

transfer_amount

Jumlah pembayaran simulasi

Autentikasi Kartu Kredit

Dalam mode Development, Anda dapat menggunakan nomor kartu ini untuk mensimulasikan berbagai skenario dalam otentikasi. Saat menggunakan angka-angka ini, Anda dapat menggunakan kode CVV dan tanggal kedaluwarsa di masa mendatang.

SKENARIOCOBA INI

Kartu yang mengaktifkan 3DS

Kartu ini terdaftar dalam 3DS dan dapat digunakan untuk menguji proses otentikasi

PARAMETERVALUE

CARD NUMBER

4000000000000002

5200000000000007

kartu yang gagal proses 3DS

Kartu ini terdaftar di 3DS tetapi akan gagal dalam pemeriksaan otentikasi

PARAMETERVALUE

CARD NUMBER

4000000000000010

5200000000000015

3DS Timeout

Kartu ini terdaftar dalam 3DS tetapi timeout selama otentikasi

PARAMETERVALUE

CARD NUMBER

4000000000000044

5200000000000049

Tidak terdaftar 3DS

Kartu ini tidak terdaftar dalam 3DS

PARAMETERVALUE

CARD NUMBER

5200000000000056

Simulasi Tagihan Kartu Kredit Gagal

Dalam mode Development, Anda dapat menggunakan nomor ajaib ini untuk mensimulasikan respons kegagalan dalam membuat tagihan

FAILURE REASONMAGIC AMOUNT

EXPIRED_CARD

Kartu yang Anda coba pakai sudah kedaluwarsa.

PARAMETERVALUE

amount

5001

CARD_DECLINED

Kartu yang Anda coba pakai telah ditolak oleh bank yang mengeluarkannya.

PARAMETERVALUE

amount

5002

PROCESSOR_ERROR

Tagihan gagal karena ada masalah integrasi antara prosesor kartu dan bank.

PARAMETERVALUE

amount

5003

INSUFFICIENT_BALANCE

Kartu yang Anda coba pakai tidak memiliki cukup saldo untuk menyelesaikan pengambilan.

PARAMETERVALUE

amount

5004

STOLEN_CARD

Kartu yang Anda coba pakai telah ditandai sebagai dicuri.

PARAMETERVALUE

amount

5005

INACTIVE_CARD

Kartu yang Anda coba pakai tidak aktif.

PARAMETERVALUE

amount

5006

Menggunakan outlet ritel sebagai sebagai salah satu metode pembayaran pada invoice

Anda dapat membuat invoice melalui API atau Dasbor (baca selengkapnya pada dokumentasi dan API reference kami)


Ketika Outlet Ritel telah diaktifkan sebagai metode pembayaran, dan Anda telah memilih prefix yang akan digunakan, Anda akan menerima tambahan pada respon API dengan field berikut

PARAMETERDESKRIPSIKETERANGAN

available_retail_outlets

Outlet ritel yang tersedia sesuai dengan konfigurasi Anda.

Hanya tersedia Alfamart dan Alfamidi untuk saat ini

payment_code

Kode pembayaran unik untuk identifikasi pembayaran

Terdiri dari prefix Anda + string acak Contoh: ALFA001

transfer_amount

Jumlah yang harus dibayarkan.

Anda juga dapat melihat tab “Retail Outlets” pada Invoice yang Anda buat. Ketika Anda klik tab tersebut, akan tampil informasi yang diperlukan pelanggan untuk melakukan pembayaran melalui Outlet Retail

Simulasi Invoice dengan Outlet Ritel

Anda dapat melakikan simulasi pembayaran melalui Alfamart dengan mengikuti petunjuk berikut.


todo

Pada Postman (atau aplikasi serupa), import API collection berikut untuk melakukan simulasi pembayaran

todo

Pada daftar collections, masuk ke dalam folder invoice dan pilih [TEST] alfamart payment

todo

Atur basic authorization Anda dengan secret development API keys yang dapat Anda peroleh di Dasbor (masuk ke Settings → API Keys → Development Keys → Secret Key)

todo

Masukkan informasi berikut pada request body Anda dan slik “ Send

PARAMETERMASUKAN BERIKUTKETERANGAN

available_retail_outlets

“ALFAMART”

payment_code

Kode pembayaran lengkap yang diberikan sistem untuk invoice Anda (prefix + string acak)

Contoh: ALFA001

transfer_amount

Jumlah yang harus dibayarkan oleh pelanggan Anda, sesuai yang tertera pada invoice

Perhatikan bahwa jumlah transfer harus sesuai dengan yang tertera pada invoice - kesalahan jumlah mengakibatkan pembayaran tidak dapat dipenuhi

Lihat contoh berikut:


{
   "retail_outlet_name" : "ALFAMART",
   "payment_code" : "ALFA001",
   "transfer_amount" : 11000
 }

Mensimulasikan Kasus Penipuan

Jika implementasi Anda dikonfigurasikan untuk Deteksi Penipuan , jumlah ini dapat digunakan untuk mensimulasikan berbagai skenario risiko kartu.

SKENARIOCOBA INI
PARAMETERVALUE

Low Risk (Allow)

amount

10077

High Risk (Block)

amount

10099

Uji Coba Pembayaran E-wallet

Dalam mode development, Anda dapat menggunakan nilai amount berikut untuk menyimulasikan pembayaran dan contoh kasus error. Ketika menggunakan angka ini, Anda dapat menggunakan external_id apapun dan menggunakan format nomor telepon ponsel Indonesia yang benar.


SKENARIOCOBA INI

Pembayaran Sukses

Transaksi e-wallet yang berhasil

PARAMETERVALUE

amount

4444

Timeout Pembayaran

Pelanggan Anda gagal untuk melakukan otorisasi dalam 30 detik

PARAMETERVALUE

amount

4000

Pembayaran Duplikat

Sudah ada transaksi dengan external_id yang sama

PARAMETERVALUE

amount

4010

Error Mengirimkan Request

Ada kesalahan sistem ketika Xendit mengirimkan request ke penyedia e-wallet

PARAMETERVALUE

amount

4020

Transaksi Ditolak

Pelanggan Anda menolak transaksi

PARAMETERVALUE

amount

4030

Nomor Ponsel Tidak Terdaftar

Nomor ponsel pelanggan Anda tidak terdaftar di penyedia e-wallet

PARAMETERVALUE

amount

4040

Aplikasi E-wallet Tidak Terjangkau

Server penyedia e-wallet tidak dapat menjangkau aplikasi e-wallet atau ponsel pelanggan Anda. Kasus umum yang terjadi adalah aplikasi e-wallet tidak ter-install.

PARAMETERVALUE

amount

4050

Error Eksternal

Ada kesalahan sistem di sisi penyedia e-wallet

PARAMETERVALUE

amount

5000

Bank Delays

Jika bank-bank mengalami downtime , pencairan akan ditunda sampai bank kembali online. Lihat halaman kode Bank untuk bagan ketika bank di Indonesia offline berdasarkan pengujian uptime kami.

Pertanyaan?

Masih ada lebih banyak pertanyaan? Kami selalu senang membantu sebisa kami. Kirimkan kami email atau chat dengan kami di live chat .