从我的android应用调用Google Pay意向时收到错误消息“您已经超出了银行设置的最大交易金额”

问题描述

我在android应用中遇到了Google支付集成(应用内付款)问题。当我请求进行交易时,即使我是第一笔交易,也会收到错误消息“您已经超出了银行设置的最大交易金额”。而且,当我尝试直接从Google付款时,付款就可以了。

This是Google Pay的应用内付款资源。

这是代码


Uri uri = new Uri.Builder()
                .scheme("upi")
                .authority("pay")
                .appendQueryParameter("pa",upiId) //receiver's upiId
                .appendQueryParameter("pn",name)  //receiver's name
                .appendQueryParameter("tn",transactionNote) // reason for transaction
                .appendQueryParameter("am",amount) // amount
                .appendQueryParameter("cu","INR")
                .build();
// Intent to call GPay app
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(uri);
intent.setPackage(GOOGLE_PAY_PACKAGE_NAME);
startActivityForResult(intent,GOOGLE_PAY_REQUEST_CODE);

我已经在线浏览了很多资源,但是没有找到任何解决方案。任何帮助或建议会很有帮助吗?

解决方法

面对同样的问题。几周前工作正常。突然停止工作

,

是的,从2020年10月20日开始,Google Pay应用在使用意向通话时显示“超出银行限额”错误。 解决方案很简单,

    • 现在,谷歌支付的普通应用ID无法用于通过意向电话接受付款。您需要一个Google Pay商业应用ID。
    • 在意图调用中使用参数“ mc”和“ tr”。其中“ mc”代表-“商家代码”,而“ tr”代表-“交易参考ID” 您可以传递“ mc”作为空白值,而“ tr”可以是任何随机值。

您可以从here中查看有关它的完整详细信息。 截至目前,它已经可以完美地用于Google pay应用。

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();
,

我在通过 Intent Call 汇款时遇到了同样的问题。

我找到了一个解决方案。如果您向 Google Pay 企业帐户汇款(已验证),那么它对我来说效果很好。

我建议按照 Google 条件创建 G-Pay 企业帐户和 Vefired。然后 .appendQueryParameter("pn",name) 在名称部分设置您的 G-Pay 企业 UPI id。之后,它应该可以正常工作。

像这样的 G-Pay 商业 ID -> xxxxxxxxxx@okbizaxis

我希望你的问题能解决。

注意:Sender G-Pay 普通账户没问题。但收款人 G-Pay 帐户必须是企业帐户。