【问题标题】:How to integrate Paytm with Codeigniter如何将 Paytm 与 Codeigniter 集成
【发布时间】:2016-01-26 12:53:41
【问题描述】:

我想在我的网站的 codeigniter 中集成 paytm 支付网关,我搜索了很多,但我只在 PHP 中找到。我尝试使用 php 库,但在验证校验和时它不起作用。任何人都可以建议任何库整合 paytm。

【问题讨论】:

    标签: php codeigniter paytm


    【解决方案1】:

    我今天也在寻找同样的选项,最后不得不调整他们提供的库here

    1. 将他们的工具包克隆到不同的文件夹
    2. 将文件夹 lib 的内容移动到 application/third_party/paytmlib
    3. 在移动的路径中,根据我的站点设置配置config_paytmp.php
    4. 从他们的工具包路径中将此文件 TxnTest.php 移动到 views 文件夹并更改表单 post 标签,如下所示<form method="post" action="paytmpost">
    5. 已添加如下控制器方法

      function paytm()
      {
        $this->load->view('TxnTest');
      }
      
      
      function paytmpost()
      {
       header("Pragma: no-cache");
       header("Cache-Control: no-cache");
       header("Expires: 0");
      
       // following files need to be included
       require_once(APPPATH . "/third_party/paytmlib/config_paytm.php");
       require_once(APPPATH . "/third_party/paytmlib/encdec_paytm.php");
      
       $checkSum = "";
       $paramList = array();
      
       $ORDER_ID = $_POST["ORDER_ID"];
       $CUST_ID = $_POST["CUST_ID"];
       $INDUSTRY_TYPE_ID = $_POST["INDUSTRY_TYPE_ID"];
       $CHANNEL_ID = $_POST["CHANNEL_ID"];
       $TXN_AMOUNT = $_POST["TXN_AMOUNT"];
      
      // Create an array having all required parameters for creating checksum.
       $paramList["MID"] = PAYTM_MERCHANT_MID;
       $paramList["ORDER_ID"] = $ORDER_ID;
       $paramList["CUST_ID"] = $CUST_ID;
       $paramList["INDUSTRY_TYPE_ID"] = $INDUSTRY_TYPE_ID;
       $paramList["CHANNEL_ID"] = $CHANNEL_ID;
       $paramList["TXN_AMOUNT"] = $TXN_AMOUNT;
       $paramList["WEBSITE"] = PAYTM_MERCHANT_WEBSITE;
      
       /*
       $paramList["MSISDN"] = $MSISDN; //Mobile number of customer
       $paramList["EMAIL"] = $EMAIL; //Email ID of customer
       $paramList["VERIFIED_BY"] = "EMAIL"; //
       $paramList["IS_USER_VERIFIED"] = "YES"; //
      
       */
      
      //Here checksum string will return by getChecksumFromArray() function.
       $checkSum = getChecksumFromArray($paramList,PAYTM_MERCHANT_KEY);
       echo "<html>
      <head>
      <title>Merchant Check Out Page</title>
      </head>
      <body>
          <center><h1>Please do not refresh this page...</h1></center>
              <form method='post' action='".PAYTM_TXN_URL."' name='f1'>
      <table border='1'>
       <tbody>";
      
       foreach($paramList as $name => $value) {
       echo '<input type="hidden" name="' . $name .'" value="' . $value .         '">';
       }
      
       echo "<input type='hidden' name='CHECKSUMHASH' value='". $checkSum . "'>
       </tbody>
      </table>
      <script type='text/javascript'>
       document.f1.submit();
      </script>
      </form>
      </body>
      </html>";
       } 
      

    注意:paytmpost() 是从他们工具包中的 pgRedirect.php 修改而来的。 pgResponse.php 也可以调整为控制器功能以处理来自支付网关的输出。

    【讨论】:

    • 这有助于我将 paytm 集成到我的网站中。但是当我从支付页面(https://pguat.paytm.com/oltp-web/processTransaction)点击返回按钮时,它只是刷新了页面。点击后退按钮可以返回上一页吗
    • 抱歉延迟回复。您可以设置推送状态,以便返回页面相应地返回。我猜你现在可能已经做到了。
    • @Rajesh github.com/Paytm-Payments/Paytm_Web_Sample_Kit_PHP 这是不可用的,请你帮忙
    • @MrCoder 抱歉,刚刚看到您的消息。该存储库来自 Paytm,当时我没有分叉它。请联系他们的支持。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-04
    • 1970-01-01
    • 2017-12-04
    • 2019-07-26
    • 2012-03-07
    • 2010-11-18
    相关资源
    最近更新 更多