Ошибка при вызове намерения Google Pay из моего приложения для Android. Вы превысили максимальную сумму транзакции, установленную вашим банком.

Я столкнулся с этой странной проблемой с моей интеграцией Google Pay в приложение для Android. Когда я отправляю сумму более 2000 (INR), я получаю сообщение об ошибке. Вы превысили максимальную сумму транзакции, установленную вашим банком, хотя я не проводил транзакцию. И когда я пытаюсь отправить сумму напрямую из Google Pay, она работает. Он также работает на суммы ниже 2000 (INR), но не более того.

Вот код

  val uri: Uri = Uri.Builder()
        .scheme("upi")
        .authority("pay")
        .appendQueryParameter("pa", MY_UPI_ID)
        .appendQueryParameter("pn", MY_USER_NAME)
        //.appendQueryParameter("mc", "1234")
        //.appendQueryParameter("tr", "123456789")
        .appendQueryParameter("tn", "test transaction note")
        .appendQueryParameter("am", "2500.00")
        .appendQueryParameter("cu", "INR")
        //.appendQueryParameter("url", "https://test.merchant.website")
        .build()
    
    
    val intent = Intent(Intent.ACTION_VIEW)
    intent.data = uri
    intent.setPackage(GOOGLE_PAY_PACKAGE_NAME)
    startActivityForResult(intent, PAY_REQUEST_CODE)

Я прочитал много блогов, документов, но не нашел решения. Любая помощь или предложения?


person AkashK    schedule 17.07.2020    source источник
comment
Вы достигли каких-либо ограничений по транзакциям, упомянутых в этом документе? upipayments.co.in/exceeded-maximum-transaction-limit   -  person Soc    schedule 17.07.2020
comment
Нет. Я столкнулся с этой проблемой, даже если это моя первая транзакция за день.   -  person AkashK    schedule 18.07.2020
comment
вы придумали решение?   -  person Bala Saikrupa Puram    schedule 22.10.2020
comment
Я сталкиваюсь с этой проблемой для любой введенной суммы, и если я плачу напрямую с помощью Google Pay, без моего приложения в качестве посредника, это работает.   -  person nayan dhabarde    schedule 01.11.2020
comment
Есть ли у вашего банка ограничение на размер одной транзакции? Вы сказали, что он работает нормально для небольших сумм, и, возможно, приложению Google Pay доверяют, поэтому они позволяют производить более крупные платежи. Я нахожусь в Великобритании, и у нас есть ограничение на бесконтактные платежи с помощью карты в 30 фунтов стерлингов, но нет ограничений, если вы совершаете бесконтактные платежи с помощью Google Pay (с использованием той же карты!), Так что, может быть, это так? Вам, вероятно, следует поговорить со своим банком и спросить   -  person cactustictacs    schedule 02.11.2020
comment
Просто здесь, но возможно ли, что вы отправляете через 2000 INR, но на самом деле вы отправляете через 2000 долларов США ... что будет примерно 148000 INR.   -  person Augwa    schedule 07.11.2020
comment
@AkashK есть ли у вас какое-нибудь решение?   -  person Mohd Qasim    schedule 09.11.2020


Ответы (2)


Uri uri = Uri.parse("upi://pay").buildUpon()
     .appendQueryParameter("pa", upiId)  // google pay business id
     .appendQueryParameter("pn", name)
     .appendQueryParameter("mc", "")            /// 1st param - use it (it was commented on my earlier tutorial)
     //.appendQueryParameter("tid", "02125412")
     .appendQueryParameter("tr", "25584584")   /// 2nd param - use it (it was commented on my earlier tutorial)
     .appendQueryParameter("tn", note)
     .appendQueryParameter("am", amount)
     .appendQueryParameter("cu", "INR")
     //.appendQueryParameter("refUrl", "blueapp")
     .build();

вам нужно сделать две модификации.

  1. использовать только идентификатор приложения Google Pay Business
  2. используйте параметры mc и tr в вызове намерения.

mc - код продавца (может быть пустым). tr - идентификатор ссылки транзакции (может быть любым случайным числом). Рабочий здесь

person Kamal Bunkar    schedule 07.11.2020
comment
mc может быть пустым. tr обязательный трюк, спасибо @Kamal. - person Mohd Qasim; 11.11.2020
comment
привет @MohdQasim, вы использовали идентификатор бизнес-приложения? - person Jashan PJ; 16.11.2020
comment
@JashanPJ да, я использовал бизнес-идентификатор upi, у меня работает mc blank - person Mohd Qasim; 20.11.2020
comment
В случае phonepe тоже нужен бизнес-аккаунт в получателе? @MohdQasim - person P Sinha; 25.05.2021

Я решил проблему, пожалуйста, загрузите и установите Google Pay для бизнеса, измените MY_UPI_ID (pa) и попробуйте, я буду работать

person sureshchann    schedule 23.11.2020