来自 Ionic3 的 UPI 深度链接在 Android 上不起作用
UPI deep linking from Ionic3 is not working on Android
我正在使用这个:
options=
{ action:this.webIntent.ACTION_VIEW,
url:"upi://pay?pa=xxx@upi&pn=Name&tid=TID4587445785&tr=Product
Purchase&am=100&cu=INR&tn=Purchase&mc=< my mc code >" };
this.webIntent.startActivityForResult(options)
但是,它因以下错误而失败:
Google 支付错误 limit exceed
paytm 错误 payee-mcc length invalid
Bhim 错误 Payee.code numeric of length 4
找不到解决方案。感谢任何帮助。
@rajib ,
仅提供 4 位商户代码。这就是导致问题的原因
如下所示创建您的 uri :
val paymentUri = Uri.Builder().apply {
with(payment) {
scheme("upi").authority("pay")
appendQueryParameter("pa", vpa)
appendQueryParameter("pn", name)
appendQueryParameter("tid", txnId)
appendQueryParameter("mc", merchantId)
appendQueryParameter("tr", txnRefId)
appendQueryParameter("tn", description)
appendQueryParameter("am", amount)
appendQueryParameter("cu", currency)
appendQueryParameter("mcc", payeeMerchantCode)
}
}.build()
// Set Data Intent
val paymentIntent = Intent(Intent.ACTION_VIEW).apply {
data = paymentUri
}
val appChooser = Intent.createChooser(paymentIntent, "Pay using")
if (paymentIntent.resolveActivity(packageManager) != null) {
startActivityForResult(appChooser, PAYMENT_REQUEST)
} else {
Toast.makeText(
this,
"No UPI app found! Please Install to Proceed!",
Toast.LENGTH_SHORT).show()
throwOnAppNotFound()
}
这里的 mc 或 merchantId 必须是 4 位数字,而 payeeMerchantCode 是你在这些 psps 上的帐户时得到的
我正在使用这个:
options=
{ action:this.webIntent.ACTION_VIEW, url:"upi://pay?pa=xxx@upi&pn=Name&tid=TID4587445785&tr=Product Purchase&am=100&cu=INR&tn=Purchase&mc=< my mc code >" };this.webIntent.startActivityForResult(options)
但是,它因以下错误而失败:
Google 支付错误 limit exceed
paytm 错误 payee-mcc length invalid
Bhim 错误 Payee.code numeric of length 4
找不到解决方案。感谢任何帮助。
@rajib ,
仅提供 4 位商户代码。这就是导致问题的原因
如下所示创建您的 uri :
val paymentUri = Uri.Builder().apply {
with(payment) {
scheme("upi").authority("pay")
appendQueryParameter("pa", vpa)
appendQueryParameter("pn", name)
appendQueryParameter("tid", txnId)
appendQueryParameter("mc", merchantId)
appendQueryParameter("tr", txnRefId)
appendQueryParameter("tn", description)
appendQueryParameter("am", amount)
appendQueryParameter("cu", currency)
appendQueryParameter("mcc", payeeMerchantCode)
}
}.build()
// Set Data Intent
val paymentIntent = Intent(Intent.ACTION_VIEW).apply {
data = paymentUri
}
val appChooser = Intent.createChooser(paymentIntent, "Pay using")
if (paymentIntent.resolveActivity(packageManager) != null) {
startActivityForResult(appChooser, PAYMENT_REQUEST)
} else {
Toast.makeText(
this,
"No UPI app found! Please Install to Proceed!",
Toast.LENGTH_SHORT).show()
throwOnAppNotFound()
}
这里的 mc 或 merchantId 必须是 4 位数字,而 payeeMerchantCode 是你在这些 psps 上的帐户时得到的