gdbhosale / paywitheasebuzz-php
pay.easebuzz.in 的 PHP 包集成工具
Requires
- php: >=5.5
- ext-curl: *
README
PHP Laravel 包,用于 Easebuzz 支付网关 pay.easebuzz.in
软件要求
在测试/开发/生产环境中设置 php 工具包,请安装以下软件
- PHP 5.5 或更高版本
工具包集成 Easebuzz 文档
安装
A. 通过 composer 安装
composer require gdbhosale/paywitheasebuzz-php
B. 使用方法
use Easebuzz\Easebuzz;
$MERCHANT_KEY = "10PBP71ABZ2";
$SALT = "ABC55E8IBW";
$ENV = "test"; // set enviroment name : test / development / production
$easebuzzObj = new Easebuzz($MERCHANT_KEY, $SALT, $ENV);
Easebuzz API 调用
-
启动支付 API
POST 格式和调用 initiatePaymentAPI
$postData = array ( "txnid" => "T3SAT0B5OL", "amount" => "100.0", "firstname" => "jitendra", "email" => "test@gmail.com", "phone" => "1231231235", "productinfo" => "Laptop", "surl" => "http://localhost:3000/response.php", "furl" => "http://localhost:3000/response.php", "udf1" => "aaaa", "udf2" => "aaaa", "udf3" => "aaaa", "udf4" => "aaaa", "udf5" => "aaaa", "address1" => "aaaa", "address2" => "aaaa", "city" => "aaaa", "state" => "aaaa", "country" => "aaaa", "zipcode" => "123123" ); $easebuzzObj->initiatePaymentAPI($postData);
高级参数
-
"sub_merchant_id" : - 如果您使用子聚合功能则为必填参数,否则不是必填参数。在此处输入子聚合 ID。您可以从 Easebuzz 控制台 Web 站点创建子聚合器。
-
"unique_id" : - 如果您使用客户保存卡片功能则为必填参数,否则不是必填参数。这是客户的唯一 ID。您需要从 Easebuzz 控制台 Web 站点启用保存卡片功能。
-
"split_payments" : - 如果您使用拆分支付功能则为必填参数,否则不是必填参数。您需要在此处以 JSON 格式传递支付时段,例如 {"label_HDFC": 100,"label_icici":100},请使用 Easebuzz 团队提供的标签。
e.g. "split_payments" => { "axisaccount" : 100, "hdfcaccount" : 100}
-
-
交易 API
POST 格式和调用交易 API
$postData = array ( "txnid" => "TZIF0SS24C", "amount" => "1.03", "email" => "test@gmail.com", "phone" => "1231231235" ); $result = $easebuzzObj->transactionAPI($postData);
-
按日期的交易 API
POST 格式和调用 transactionDateAPI
$postData = array( "merchant_email" => "jitendra@gmail.com", "transaction_date" => "06-06-2018" ); $result = $easebuzzObj->transactionDateAPI($postData);
-
退款 API
POST 格式和调用 refundAPI
$postData = array( "txnid" => "ASD20088", "refund_amount" => "1.03", "phone" => "1231231235", "email" => "test@gmail.com", "amount" => "1.03" ); $result = $easebuzzObj->refundAPI($postData);
-
支付 API
POST 格式和调用 payoutAPI
$postData = array( "merchant_email" => "jitendra@gmail.com", "payout_date" => "08-06-2018" ); $result = $easebuzzObj->payoutAPI($postData);
-
处理启动支付 API 响应
注意:启动支付 API 响应将在成功 URL 或失败 URL 获取
- 导入 Easebuzz 库
use Easebuzz\Easebuzz;
- 设置 $SALT
$SALT = "ABC55E8IBW";
- 创建 Easebuzz 类对象并传递 $SALT。
$easebuzzObj = new Easebuzz($MERCHANT_KEY = null, $SALT, $ENV = null);
- 调用 Easebuzz 类方法或函数
$result = $easebuzzObj->easebuzzResponse($_POST);
- 导入 Easebuzz 库
-
如果服务器不支持 header():-
注意:请按照以下步骤操作。
-
转到路径 easebuzz-lib/payment.php
-
打开 payment.php 文件
-
转到函数 _paymentResponse($result) 并取消注释以下代码。
function _paymentResponse($result){ if ($result->status === 1){ // first way (comment below line) // header( 'Location:' . $result->data ); // second way (un-comment below code) echo " <script type='text/javascript'> window.location ='".$result->data."' </script> "; exit(); }else{ //echo '<h3>'.$result['data'].'</h3>'; print_r(json_encode($result)); } }
-
-
如果需要在 php 工具包中启用 ease checkout(iframe):-
注意:请按照以下步骤操作.*
-
转到路径 easebuzz-lib/easebuzz_payment_gateway.php
-
打开 easebuzz_payment_gateway.php 文件
-
转到函数 initiatePaymentAPI($params, $redirect=False) 并更改以下代码。
public function initiatePaymentAPI($params, $redirect=False) { return initiate_payment($params, $redirect, $this->MERCHANT_KEY, $this->SALT, $this->ENV); }
-
$redirect 参数为 False 以启用 ease checkout(iframe)。
-
$redirect 参数为 True 以启用托管 checkout。
-