如何修复Android中的Paytm Session Expired失败错误?

时间:2019-05-06 07:40:15

标签: php android payment-gateway paytm

我正在将Paytm支付网关集成到android应用程序中,我遵循了Paytm给出的所有基本要求和步骤。还从GitHub复制文件以生成校验和和verifychecksum。还要设置我的商家ID和商家密钥。但是在集成到android应用程序时,它显示了如下错误: 1)此MID在暂存环境中不可用 2)会话过期失败 3)校验和不匹配。

我已经解决了第一个错误,但无法完成已经寄给Paytm的第二个和第三个,仍然没有得到他们的任何答复。

我使用的是Android Studio,带有XAMPP和Paytm的gradle是

implementation('com.paytm:pgplussdk:1.3.3') {
        transitive = true;
    }

在这里,我也分享了一些android和php的示例代码。

Android:

 HashMap<String, String> paramMap = new HashMap<>();
    paramMap.put( "MID", paytm.getMID() );
    paramMap.put( "ORDER_ID", ordId );
    paramMap.put( "CUST_ID", "cust123" );
    paramMap.put( "MOBILE_NO", paytm.getUserPhone() );
    paramMap.put( "EMAIL", paytm.getUserEmail() );
    paramMap.put( "CHANNEL_ID", "WAP" );
    paramMap.put( "TXN_AMOUNT", "100.12" );
    paramMap.put( "WEBSITE", "WEBSTAGING" );
    paramMap.put( "INDUSTRY_TYPE_ID", "Retail" );
    paramMap.put( "CALLBACK_URL", paytm.getCallBackUrl() );
    paramMap.put( "CHECKSUMHASH", checksumHash );

后端generateChecksum.php

$paytmParams = array();
$paytmParams["MID"] = merchantMid;
$paytmParams["ORDER_ID"] = orderId;
$paytmParams["CUST_ID"] = custId;
$paytmParams["MOBILE_NO"] = mobileNo;
$paytmParams["EMAIL"] = email;
$paytmParams["CHANNEL_ID"] = channelId;
$paytmParams["TXN_AMOUNT"] = txnAmount;
$paytmParams["WEBSITE"] = website;
$paytmParams["INDUSTRY_TYPE_ID"] = industryTypeId;
$paytmParams["CALLBACK_URL"] = callbackUrl;

1 个答案:

答案 0 :(得分:0)

问题由Paytm解决。我的暂存商家ID无法正常工作,所以我遇到了这类问题。