yahrdy/sslcommerz
Composer 安装命令:
composer require yahrdy/sslcommerz
包简介
Laravel package for sslcommerz popup checkout with Vue.js
README 文档
README
SSL Commerz laravel integration (Popup)
Install the package
composer require yahrdy/sslcommerz
Define initiate and success method in a controller. Additionally, you can call checkout method to load front end.
<?php
namespace App\Http\Controllers;
use Hridoy\SslCommerz\SslCommerzPay;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Log;
class SslCommerzController extends Controller
{
public function checkout()
{
return view('sslcommerz::checkout');
}
public function initiate(Request $request)
{
return (new SslCommerzPay())->initiate($request);
}
public function success(Request $request): string
{
$data = $request->all();
$trxId = $data['tran_id'];
$amount = $data['amount'];
$currency = $data['currency'];
if ((new SslCommerzPay())->validate($request, $trxId, $amount, $currency)) {
// (new SslCommerzPay())->validate($request, $trxId, $amount, $currency) will return validated respone from the SSL. Use this information to confirm the payment and update database.
return "Payment successful and validated";
} else {
return "Payment is not verified";
}
}
}
Call the api from front end. Example front end code-
<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body class="bg-light">
<div class="container">
<button class="btn btn-primary btn-lg btn-block" id="sslczPayBtn"
postdata=""
order="#"
endpoint="api/initiate"> Pay Now
</button>
</div>
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"
integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo"
crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"
integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1"
crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"
integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM"
crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/0.11.10/vue.min.js"></script>
<!-- If you want to use the popup integration, -->
<script>
(function (window, document) {
var loader = function () {
var script = document.createElement("script"), tag = document.getElementsByTagName("script")[0];
// script.src = "https://seamless-epay.sslcommerz.com/embed.min.js?" + Math.random().toString(36).substring(7); // USE THIS FOR LIVE
script.src = "https://sandbox.sslcommerz.com/embed.min.js?" + Math.random().toString(36).substring(7); // USE THIS FOR SANDBOX
tag.parentNode.insertBefore(script, tag);
};
window.addEventListener ? window.addEventListener("load", loader, false) : window.attachEvent("onload", loader);
})(window, document);
</script>
<script>
new Vue({
el: '#container',
data: {
value: '',
},
created() {
const obj = {};
obj.cus_name = "Customer Name"
obj.cus_phone = "01*********"
obj.cus_email = 'example@email.com'
obj.product_name = 'Product Name'
obj.total_amount = "100"
$('#sslczPayBtn').prop('postdata', obj);
}
});
</script>
</body>
</html>
yahrdy/sslcommerz 适用场景与选型建议
yahrdy/sslcommerz 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 1.89k 次下载、GitHub Stars 达 0, 最近一次更新时间为 2021 年 11 月 24 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 yahrdy/sslcommerz 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 yahrdy/sslcommerz 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 1.89k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 10
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2021-11-24