Catatan penggunaan
Setelah pengguna mengonfirmasi pesanan, pedagang atau mitra memanggil operasi /v1/payments/pay untuk membuat pesanan pembayaran. Sistem akan mengembalikan URL halaman kasir dan nomor pesanan. Selanjutnya, pedagang atau mitra memanggil operasi wv.tradePay untuk mengarahkan pengguna ke halaman kasir guna menyelesaikan pembayaran.
Metode permintaan
Metode permintaan HTTPS
POST /v1/payments/pay
Parameter permintaan
Parameter permintaan umum
Parameter | Tipe | Diperlukan | Panjang maksimum (Unit: karakter) | Deskripsi | Contoh |
partnerId | String | Ya | 32 | ID mitra. | 6881407230000718 |
appId | String | Tidak | 32 | ID program mini. | 1531668559383166619648 |
Parameter permintaan spesifik operasi
Parameter | Tipe | Diperlukan | Panjang maksimum (Unit: karakter) | Deskripsi | Contoh |
productCode | String | Tidak | 32 | Kode produk yang ditentukan oleh dompet, digunakan untuk mendapatkan konfigurasi perjanjian, termasuk biaya dan batasan. | |
paymentOrderTitle | String | Ya | 256 | Judul pesanan pembayaran. | |
paymentRequestId | String | Ya | 64 | ID unik dari permintaan pembayaran yang dihasilkan oleh pedagang. Parameter ini digunakan untuk memastikan idempotensi permintaan. Jika beberapa permintaan pembayaran dilakukan dengan menggunakan nilai paymentRequestId yang sama dan mencapai keadaan akhir, mitra harus mengembalikan hasil yang sama. | |
paymentAmount | Jumlah | Ya | Jumlah pesanan yang ditampilkan di halaman pembayaran. | ||
Metode Pembayaran | Metode Pembayaran | Tidak | |||
paymentAuthCode | String | Tidak | 128 | ● Setel parameter ini ke token akses pengguna dompet jika paymentFactor.isAgreementPay disetel ke true. ● Setel parameter ini ke kode otorisasi pengguna dompet jika paymentFactor.isPaymentCode disetel ke true. | |
paymentFactor | PaymentFactor | Tidak | Skenario pembayaran program mini. | {"isPaymentCode" : true} | |
paymentExpiryTime | String/Datetime | Tidak | Waktu ketika pesanan pembayaran ditutup. Nilainya harus mengikuti standar ISO 8601. | 2023-11-08T14:07:05+08:00 | |
paymentRedirectUrl | URL | Tidak | 2048 | URL halaman ke mana pengguna diarahkan setelah pembayaran selesai. | https://www.merchant.com/redirectxxx |
paymentNotifyUrl | URL | Tidak | 2048 | URL yang digunakan untuk menerima notifikasi pembayaran. | https://www.merchant.com/paymentNotifyxxx |
mcc | String | Tidak | 32 | Jenis pedagang. | |
extraParams | Map | Tidak | Parameter tambahan yang digunakan untuk menentukan fitur pembayaran khusus dompet. | ||
extendInfo | String | Tidak | 4096 | Informasi tambahan tentang pedagang. | |
envInfo | EnvInfo | Tidak | Informasi lingkungan perangkat seluler yang digunakan untuk verifikasi pembayaran. |
Parameter respons
Parameter respons umum
Parameter | Tipe | Diperlukan | Panjang maksimum (Unit: karakter) | Deskripsi |
resultStatus | String | Ya | Status permintaan. Nilai yang valid: ● SUCCESS : Permintaan berhasil.● FAIL : Permintaan gagal.● UNKNOWN: Status tidak diketahui.● ACCEPT: Permintaan telah dikirim dan hasilnya belum dikembalikan. | |
resultCode | String | Ya | - | Kode respons dari gateway. |
resultMessage | String | Ya | - | Pesan yang dikembalikan oleh gateway. |
Parameter respons spesifik operasi
Parameter | Tipe | Diperlukan | Panjang maksimum (Unit: karakter) | Deskripsi | Contoh |
paymentId | String | Tidak | 64 | ID unik pembayaran yang dibuat oleh dompet. | |
paymentTime | String/Datetime | Tidak | Waktu ketika pembayaran selesai. Nilainya mengikuti standar ISO 8601. | 2023-11-09T14:07:05+08:00 | |
actionForm | ActionForm | Tidak | Aksi respons. | ||
authExpiryTime | String/Datetime | Tidak | Masa berlaku pembayaran yang diotorisasi. Parameter ini hanya valid jika paymentFactor.isAuthorizationPayment disetel ke true. | ||
extendInfo | String | Tidak | 4096 | Informasi tambahan tentang dompet. |
Kode kesalahan
Kode kesalahan | Status permintaan | Deskripsi | Solusi |
ACCEPT | ACCEPT | Aksi selanjutnya dilakukan atau sedang dilakukan berdasarkan nilai actionForm. | Periksa hasil pembayaran dengan memanggil operasi inquiryPayment. |
PAYMENT_IN_PROCESS | UNKOWN | Pembayaran sedang dilakukan. | Periksa hasil pembayaran dengan memanggil operasi inquiryPayment. |
REPEAT_REQ_INCONSISTENT | FAIL | Permintaan dikirimkan berulang kali dan data yang dikirimkan tidak konsisten. | Ubah nilai paymentRequestId dan ajukan permintaan lagi. |
PAYMENT_AMOUNT_EXCEED_LIMIT | FAIL | Jumlah pembayaran melebihi batas atas. | Hubungi Alibaba Cloud untuk menaikkan batas jumlah pembayaran. Atau, masukkan jumlah yang lebih rendah dan coba lagi. |
USER_AMOUNT_EXCEED_LIMIT | FAIL | Jumlah pembayaran melebihi batas atas yang ditentukan oleh pengguna. | Masukkan jumlah yang lebih rendah dan coba lagi. |
USER_NOT_EXIST | FAIL | Pengguna tidak ada. | |
USER_STATUS_ABNORMAL | GAGAL | Pengguna berada dalam keadaan tidak normal. | |
USER_BALANCE_NOT_ENOUGH | FAIL | Saldo akun pengguna tidak mencukupi. | Buat pesanan pembayaran lain yang jumlahnya tidak melebihi saldo akun pengguna. |
PARTNER_NOT_EXIST | FAIL | Mitra tidak ada. | Masukkan ID mitra yang valid. |
PARTNER_STATUS_ABNORMAL | FAIL | Mitra berada dalam status tidak normal. | Masukkan ID mitra yang valid. |
RISK_REJECT | FAIL | Terdapat risiko dalam pembayaran. | Diperlukan intervensi manual. Kami menyarankan Anda menghubungi dukungan teknis program mini untuk mendapatkan lebih banyak informasi tentang kontrol risiko pembayaran, lalu coba lagi. |
CURRENCY_NOT_SUPPORT | FAIL | Mata uang tidak didukung. | Gunakan mata uang yang didukung yang tercantum dalam perjanjian dan coba lagi. |
ORDER_STATUS_INVALID | FAIL | Pesanan tidak valid dan sudah ditutup. | Pesanan selesai atau sudah ditutup. Anda dapat memanggil operasi inquiryPayment untuk memeriksa informasi tentang pesanan. |