Razorpay Android SDK проблема интеграции
Когда order_id
используется в JSON проверки объекта произошла ошибка
Я получаю следующую ошибку: 06-23 14:08:44.132 E/PaymentActivity:166: указанный идентификатор не существует
Это входит в:
onPaymentError(code: Int, response: String?, data: PaymentData?)
метод PaymentResultWithDataListener
Метод startPayment это:
private fun startPayment(orderId: Long, paymentGateway: PaymentGateway) {
val checkout = Checkout()
checkout.setImage(R.drawable.lifcare_logo)
checkout.setFullScreenDisable(true)
try {
val options = JSONObject()
options.put("name", "Name")
options.put("description", orderId.toString())
options.put("currency", "INR")
options.put("amount", paymentGateway.amount.times(100))
options.put("order_id", paymentGateway.refTransactionId)
val prefill = JSONObject()
prefill.put("email", "EmailID")
prefill.put("contact", "Number")
prefill.put("method", paymentGateway.subMethod?.name)
options.put("prefill", prefill)
options.put("theme", JSONObject("{color: '#7cb342'}"))
checkout.open(this, options)
} catch (e: Exception) {
Timber.e(e, "Cannot pay right now!!")
}
}
ref_transaction_id это: "ref_transaction_id": "order_AQjijq5Fj4lg8m"
когда order_id
не используется, то SDK работает нормально. order_id
каким-то образом создает проблему.
1 ответ
Решение
Могу ли я узнать, какой номер вы используете?
Он не работает для номера по умолчанию, например "9999999999".
Номер должен быть действительным номером.
Попробуйте добавить ключ примечаний в параметр option, как указано ниже:
jsonObject.put("order_id", "12345")
jsonObject.put("subscription_id", "50214")
jsonObject.put("user_id", "101")
options.put("notes", jsonObject)