承接 ndps/laravel 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

ndps/laravel

Composer 安装命令:

composer require ndps/laravel

包简介

NTT DATA Payment Services Laravel Composer package

README 文档

README

Official Laravel library for NTT DATA Payment Service.

Prerequisites

  • A minimum of PHP 7.3 upto 8.1

Installation

  • If your project using composer, run the below command

    composer require ndps/laravel:dev-main
  • If you are not using composer, download the latest release from the releases section. You should download the laravel.zip file from atomlite/laravel. And place in vendor folder.

How To Use It

  • To handle the request use below function which will provide the request URL.

      public function payment()
     {
       include_once base_path('vendor/autoload.php');
       $transactionRequest = new \NDPS\TransactionRequest();
    
       /* Add your return URL */
       $ru = "http://127.0.0.1:8000/response";
    
       /*
       *Setting all values here
       */
       $transactionRequest->setLogin('192');
       $transactionRequest->setPassword("Test@123");
       $transactionRequest->setProductId("NSE");
       $transactionRequest->setAmount('50.55');
       $transactionRequest->setTransactionCurrency("INR");
       $transactionRequest->setTransactionAmount('50.55');
       $transactionRequest->setReturnUrl($ru);
       $transactionRequest->setClientCode('NAVIN');
       $transactionRequest->setTransactionId('0010');
       $transactionRequest->setCustomerName("Test Name");
       $transactionRequest->setCustomerEmailId("test@test.com");
       $transactionRequest->setCustomerMobile("9999999999");
       $transactionRequest->setCustomerBillingAddress("Mumbai");
       $transactionRequest->setCustomerAccount("639827");
       $transactionRequest->setReqHashKey("KEY123657234");
       $transactionRequest->seturl("https://paynetzuat.atomtech.in/paynetz/epi/fts");
       $transactionRequest->setRequestEncypritonKey("8E41C78439831010F81F61C344B7BFC7");
       $transactionRequest->setSalt("8E41C78439831010F81F61C344B7BFC7");
    
    
       $url = $transactionRequest->getPGUrl();
       echo "<br>url:<br>".$url;
       header("Location: $url");
      }
  • To handle the response use below function which will return the final response array.

       public function response()
         {
          include_once base_path('vendor/autoload.php');
          $transactionResponse = new \NDPS\TransactionResponse();
    
          /*
          **Enter the keys provided by NDPS
          */
          $transactionResponse->setRespHashKey("KEYRESP123657234");
          $transactionResponse->setResponseEncypritonKey("8E41C78439831010F81F61C344B7BFC7");
          $transactionResponse->setSalt("8E41C78439831010F81F61C344B7BFC7");
          $arrayofdata = $transactionResponse->decryptResponseIntoArray($_POST['encdata']);
    
    
          /*
          **Signature Verification for response and reponse verification
          */
          $verification = $transactionResponse->validateResponse($arrayofdata, "KEYRESP123657234");		
          if($verification){
    	// final logic
    	if($arrayofdata["f_code"] == "Ok"){
    	  echo "Transaction successful!";
    	}
    	elseif($arrayofdata["f_code"] == "C"){ 
    	  echo "Transaction Cancelled!";	
    	}
    	else{
    	  echo "Transaction Failed!";	
    	}	  
          }
          else{
    	echo "Transaction Failed!";
          }
    
           echo "<br><br>Response Array:<br>";
           print_r($arrayofdata);
    
        }   
  • Note: To handle above response as return URL we need defined method as post in routes/web.php file, also we need disable csrf validation for this response function edit following file app/Http/Middleware/VerifyCsrfToken.php

namespace App\Http\Middleware;
use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as Middleware;
class VerifyCsrfToken extends Middleware
{
    /**
     * Indicates whether the XSRF-TOKEN cookie should be set on the response.
     *
     * @var bool
     */
    protected $addHttpCookie = true;
    /**
     * The URIs that should be excluded from CSRF verification.
     *
     * @var array
     */
    protected $except = [
        'response/'
    ];
}

ndps/laravel 适用场景与选型建议

ndps/laravel 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 10 次下载、GitHub Stars 达 0, 最近一次更新时间为 2022 年 10 月 10 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 ndps/laravel 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 ndps/laravel 我们能提供哪些服务?
定制开发 / 二次开发

基于 ndps/laravel 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 10
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 15
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2022-10-10