Ikhtisar
Dodo Payments API menyediakan alasan kegagalan transaksi yang terperinci untuk membantu Anda memahami mengapa upaya pembayaran tidak berhasil. Alasan kegagalan ini distandarisasi di berbagai metode dan penyedia pembayaran, sehingga memudahkan untuk menerapkan penanganan kesalahan yang konsisten dalam aplikasi Anda. Setiap respons kegagalan transaksi mencakup:- Kode alasan kegagalan yang spesifik
- Pesan kesalahan yang dapat dibaca manusia
- Konteks tambahan tentang kegagalan jika tersedia
- Apakah kesalahan tersebut dapat diperbaiki oleh pengguna atau memerlukan intervensi sistem
- Memberikan umpan balik yang jelas kepada pelanggan Anda
- Menerapkan logika percobaan ulang yang sesuai
- Menangani berbagai skenario kegagalan dengan baik
- Mempertahankan sistem pemrosesan pembayaran yang andal
Alasan Kegagalan Transaksi
Tabel berikut mencantumkan semua kemungkinan alasan kegagalan transaksi, artinya, dan apakah itu merupakan kesalahan yang dapat diperbaiki oleh pengguna.| Kode Kegagalan | Kesalahan Pengguna | Deskripsi |
|---|---|---|
AUTHENTICATION_FAILURE | Ya | Proses otentikasi gagal selama transaksi |
AUTHENTICATION_REQUIRED | Ya | Otentikasi tambahan diperlukan untuk menyelesaikan transaksi |
AUTHENTICATION_TIMEOUT | Ya | Proses otentikasi telah habis waktu |
CARD_DECLINED | Tidak | Kartu ditolak oleh bank penerbit |
CARD_NOT_ACTIVATED | Ya | Kartu belum diaktifkan oleh pemegang kartu |
CARD_VELOCITY_EXCEEDED | Ya | Terlalu banyak transaksi yang dicoba dalam waktu singkat |
CUSTOMER_CANCELLED | Ya | Pelanggan membatalkan transaksi |
DO_NOT_HONOR | Tidak | Bank penerbit menolak transaksi |
EXPIRED_CARD | Ya | Kartu telah kedaluwarsa |
FRAUDULENT | Ya | Transaksi ditandai sebagai berpotensi penipuan |
GENERIC_DECLINE | Tidak | Transaksi ditolak tanpa alasan yang ditentukan |
INCORRECT_CVC | Ya | Kode CVC yang diberikan salah |
INCORRECT_NUMBER | Ya | Nomor kartu dimasukkan dengan salah |
INSUFFICIENT_FUNDS | Ya | Akun tidak memiliki dana yang cukup untuk menyelesaikan transaksi |
INVALID_ACCOUNT | Ya | Detail akun yang diberikan tidak valid |
INVALID_AMOUNT | Ya | Jumlah transaksi tidak valid |
INVALID_CARD_NUMBER | Ya | Format nomor kartu tidak valid |
INVALID_CARD_OWNER | Ya | Informasi pemilik kartu tidak valid |
INVALID_CVC | Ya | Format CVC tidak valid |
INVALID_EXPIRY_YEAR | Ya | Tahun kedaluwarsa kartu tidak valid |
INVALID_PIN | Ya | PIN yang diberikan salah |
INVALID_REQUEST | Ya | Permintaan transaksi mengandung data yang tidak valid |
INVALID_UPI_ID | Ya | ID UPI yang diberikan tidak valid |
LIMIT_EXCEEDED | Ya | Transaksi melebihi batas kartu atau akun |
LIVE_MODE_TEST_CARD | Ya | Kartu uji digunakan dalam mode langsung |
LOST_CARD | Ya | Kartu telah dilaporkan hilang |
MANDATE_INVALID | Ya | Mandat pembayaran tidak valid |
MANDATE_REQUIRED | Ya | Mandat diperlukan untuk transaksi ini |
MANDATE_REQUIRED_SYSTEM | Tidak | Sistem memerlukan mandat untuk jenis transaksi ini |
NETWORK_ERROR | Tidak | Terjadi kesalahan jaringan selama transaksi |
NETWORK_TIMEOUT | Tidak | Permintaan jaringan habis waktu |
ORDER_CREATION_FAILED | Tidak | Gagal membuat pesanan untuk transaksi |
PAYMENT_METHOD_PROVIDER_DECLINED | Ya | Penyedia metode pembayaran menolak transaksi |
PAYMENT_METHOD_UNSUPPORTED | Ya | Metode pembayaran tidak didukung untuk transaksi ini |
PICKUP_CARD | Ya | Kartu telah dilaporkan dicuri dan harus diambil |
PROCESSING_ERROR | Tidak | Terjadi kesalahan saat memproses transaksi |
PROVIDER_UNSUPPORTED | Tidak | Penyedia pembayaran tidak mendukung jenis transaksi ini |
REENTER_TRANSACTION | Ya | Transaksi perlu dimasukkan ulang |
REVOCATION_OF_AUTHORIZATION | Ya | Otorisasi untuk transaksi dicabut |
STOLEN_CARD | Ya | Kartu telah dilaporkan dicuri |
TRANSACTION_NOT_ALLOWED | Ya | Transaksi tidak diizinkan untuk kartu atau akun ini |
TRANSACTION_NOT_APPROVED | Ya | Transaksi tidak disetujui |
TRY_AGAIN_LATER | Tidak | Transaksi harus dicoba lagi nanti |
UNKNOWN_ERROR | Tidak | Terjadi kesalahan yang tidak diketahui |
Kesalahan Pengguna menunjukkan apakah penolakan pembayaran dapat diselesaikan oleh pelanggan. Ketika
true, pelanggan dapat mengambil tindakan untuk memperbaiki masalah (misalnya, memasukkan detail kartu yang benar). Ketika false, penolakan disebabkan oleh masalah tingkat sistem atau pembatasan bank yang tidak dapat diselesaikan oleh pelanggan.