I am facing a problem with Google pay integration(in-app payment) in android app. When I make a request to transact I am getting the error "You have exceeded the maximum transaction amount set by your bank" even though that is my first transaction. And when I try to send amount directly from Google pay it works.
This is the Google pay's in-app payment resource.
Here is code
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);
I have gone through quite a number of resources online but didn't find any solution. Any help or suggestions would be greatly helpful ?
I got the same problem when I send money from Intent Call.
I found one solution for that. if you Send money to Google pay business account (verified) then it works fine for me.
I suggest making a G-Pay business Account and Vefired by following Google Conditions. Then .appendQueryParameter("pn", name) in the name section set Your G-Pay Business UPI id. After that, it should Work Fine.
G-Pay Business Id like This -> xxxxxxxxxx@okbizaxis
I hope Your Problem solve.
Note: Sender G-Pay Normal Account is fine. But Receiver G-Pay Account Must be Business Account.