Transaksi kartu yang ditolak bisa menyebabkan ketidaknyamanan bagi Anda dan pelanggan Anda. Di Xendit, kami telah mengoptimalkan sistem kami untuk meminimalkan penolakan yang berasal dari bank acquiring. Ini berarti sebagian besar penolakan yang Anda temui disebabkan oleh bank penerbit (issuing bank)—bank yang mengeluarkan kartu pelanggan.
Mengapa transaksi ditolak?
Bank penerbit adalah sumber utama informasi penolakan, namun mereka hanya membagikan alasan pasti langsung kepada pemegang kartu. Untuk mendapatkan detail lebih lanjut, pemegang kartu perlu menghubungi bank mereka, dengan memberikan informasi transaksi seperti jumlah dan tanggal.
Karena meminta setiap pelanggan untuk menghubungi bank mereka mungkin tidak terlalu praktis, Xendit menggunakan heuristik. Ini adalah estimasi cerdas yang kami buat berdasarkan sinyal dari bank penerbit dan faktor-faktor regional, yang dapat membantu kami menentukan kemungkinan besar alasan penolakan. Informasi ini tersedia di bagian Decline Insights pada halaman Detail Transaksi Kartu di Xendit Dashboard Anda.
Alasan penolakan Xendit dan kode respons jaringan
Untuk daftar lengkap kode kesalahan dan kegagalan spesifik Xendit, silakan lihat halaman ini.
Selain kode Xendit, jaringan kartu juga mengembalikan kode kesalahan mereka sendiri. Ini disediakan sebagai data tambahan dalam respons API kami, memberi Anda informasi yang lebih terperinci tentang penolakan.
Berikut adalah contoh respons jaringan:
"network_response": {
"card_network_response_code": "65",
"card_network_descriptor": "Exceeds withdrawal count limit",
"merchant_advice_code": "28",
"merchant_advice_descriptor": "Retry after 6 days",
"three_ds_trans_status": "Y",
"three_ds_flow": "CHALLENGE"
}
Data kode respons jaringan
card_network_response_code
- Kode respons yang dikembalikan oleh skema (Visa, Mastercard, JCB, China Unionpay, atau Amex)card_network_descriptor
- Deskripsi kode responsmerchant_advice_code
- Hanya dikembalikan saat ada, hanya dikembalikan untuk Mastercard. Mastercard memiliki kode yang menjelaskan tindakan apa yang harus diambil terhadap pedagang. Tidak mengikuti saran Mastercard dapat menyebabkan "denda coba ulang yang berlebihan". Denda ini bisa mencapai USD 0.50 per transaksi.merchant_advice_descriptor
- Hanya dikembalikan saat ada. Hanya dikembalikan untuk Mastercard. Deskripsi / tindakan yang harus diambil untuk kode saran pedagang.three_ds_trans_status
- HasilnyatransStatus
, langsung dari respons 3DS2, menunjukkan status otentikasi transaksi.three_ds_flow
- Alur autentikasi 3DS2 yang dialami pelanggan saat menyelesaikan 3DS2.
Kode respons jaringan kartu
TransStatus
(three_ds_trans_status
) dan Aliran 3DS (three_ds_flow
)
three_ds_trans_status
Menunjukkan apakah transaksi diautentikasi, sesuai spesifikasi EMVCo 3DS2.
Daftar nilai:
Kode error / respons | Deskripsi |
---|---|
Y | Verifikasi akun berhasil |
I | Autentikasi / Pembebasan yang diberikan oleh Penerbit |
N | Tidak Diautentikasi / akun tidak diverifikasi, tantangan gagal |
U | Autentikasi/verifikasi akun tidak dapat dilakukan (mungkin karena otentikasi tidak tersedia untuk kartu/penerbit). Berpotensi masih melanjutkan transaksi, jika tidak ada 3DS yang diaktifkan |
A | Autentikasi / verifikasi telah dicoba |
C | Tantangan Diperlukan. Autentikasi tambahan diperlukan menggunakan tantangan |
R | Autentikasi / verifikasi akun ditolak oleh penerbit. |
three_ds_flow
dapat mengembalikan FRICTIONLESS atau CHALLENGE, yang menunjukkan alur mana yang telah dilalui pembeli saat menyelesaikan 3DS2.
Daftar nilai:
Nilai | Deskripsi |
---|---|
FRICTIONLESS | Pembeli mengalami frictionless 3DS flow |
CHALLENGE | Pembeli mengalami challenge 3DS flow |
Kode saran Mastercard
Kode saran merchant memberikan panduan untuk menangani transaksi yang ditolak. Kode-kode ini membantu Anda memahami mengapa transaksi ditolak dan tindakan apa yang harus diambil selanjutnya.
Cara menggunakan kode saran Mastercard:
Identifikasi alasan penolakan:
Setiap kode sesuai dengan alasan penolakan tertentu. Gunakan untuk menentukan apakah masalah tersebut bersifat teknis, terkait kebijakan, atau khusus pemegang kartu.Contoh: Kode 03 — Jangan coba lagi, biaya penalti mungkin berlaku. Pertimbangkan untuk menghubungi pemegang kartu.
Kode yang dapat ditindaklanjuti vs. tidak dapat ditindaklanjuti: Beberapa kode menyarankan untuk mencoba lagi, sementara yang lain tidak memerlukan tindakan lebih lanjut.
Contoh: Kode 24 — Coba lagi setelah 1 jam.
Kode 40 — Tidak perlu tindakan.
Hindari penalti: Kode dapat memperingatkan penalti karena mencoba kembali transaksi tertentu.
Contoh: Kode 21 — Jangan coba lagi, biaya penalti mungkin berlaku.
Hubungi dukungan untuk masalah teknis: Jika kode mengacu pada masalah teknis, arahkan pengembang untuk menghubungi dukungan.
Contoh: Kode 04 — Hubungi dukungan untuk masalah token.
Cicilan dan pembayaran berulang: Beberapa kode menunjukkan batasan pada jenis pembayaran tertentu, seperti cicilan.
Contoh: Kode 22 — Cicilan tidak diizinkan, jangan coba lagi.
Dengan mengintegrasikan kode-kode ini ke dalam logika pemrosesan pembayaran, Anda dapat menangani transaksi yang ditolak dengan tepat, menghindari penalti, dan memberikan panduan yang lebih baik kepada merchant.
Daftar nilai:
Kode | Deskripsi | Informasi tambahan |
---|---|---|
1 | Perbarui informasi kartu | Minta pembeli untuk memberikan informasi kartu baru |
2 | Coba pembayaran lagi setelah 72 jam. | |
3 | Jangan mencoba lagi pembayaran ini. Percobaan ulang dapat dikenakan biaya penalti oleh Mastercard. Pertimbangkan untuk menghubungi pembeli secara langsung. | |
4 | Masalah token teknis, hubungi dukungan Xendit. | |
8 | Diblokir oleh pemroses pembayaran. | Hubungi dukungan Xendit |
21 | Jangan coba pembayaran ini lagi. Percobaan ulang dapat dikenakan biaya penalti oleh Mastercard. | Penalti bisa mencapai USD$0,50 per panggilan. |
22 | Jangan mencoba lagi pembayaran ini, cicilan tidak diperbolehkan untuk transaksi ini. | Cicilan tidak didukung |
24 | Coba kembali pembayaran setelah 1 jam. | |
25 | Coba lagi pembayaran setelah 24 jam. | |
26 | Coba kembali pembayaran setelah 2 hari. | |
27 | Coba kembali pembayaran setelah 4 hari. | |
28 | Coba kembali pembayaran setelah 6 hari. | |
29 | Coba kembali pembayaran setelah 8 hari. | |
30 | Coba kembali pembayaran setelah 10 hari. | |
40 | Tidak perlu tindakan. | |
41 | Tidak perlu tindakan. | |
42 | Tidak perlu tindakan. | |
99 | Tidak ada tindakan yang mungkin. |