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)                 
Другие вопросы по тегам