UPI Deep Link - 无法完成交易

时间:2017-11-01 12:19:33

标签: android upi

enter image description here

尝试使用我的Android应用程序的深层链接连接UPI付款,但每次都在最后一步失败。

UPI付款电话的代码片段如下:

 button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {

            URI_URL = getUPIString("xxx@upi", "xxx xxx", "test_101", "Test Transaction", "10", "INR");

            //Creating an intent for the UPI APP
            Intent intent = new Intent();
            intent.setAction(Intent.ACTION_VIEW);
            intent.setData(Uri.parse(URI_URL));
            Intent chooser = Intent.createChooser(intent, "Pay the MSME by");
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
                startActivityForResult(chooser, 1, null);
            }
        }
    });

使用此函数构造UPI字符串:

       private String getUPIString(String payeeAddress, String payeeName, String trxnRefId,
                            String trxnNote, String payeeAmount, String currencyCode) {
    String UPI = "upi://pay?pa=" + payeeAddress + "&pn=" + payeeName
            + "&tr=" + trxnRefId
            + "&tn=" + trxnNote + "&am=" + payeeAmount + "&cu=" + currencyCode;
    return UPI.replace(" ", "+");
}

失败的可能原因是什么?欢迎任何建议或帮助。

1 个答案:

答案 0 :(得分:2)

错误 T04 意味着refId应为字母数字,minlength 1和maxlength 35 。而不是test_101使用test101。