ommani/payment-vnpay
Composer 安装命令:
composer require ommani/payment-vnpay
包简介
Thư viện hổ trợ tích hợp cổng thanh toán VNPay.
README 文档
README
ommani: VNPay
Cài đặt
composer require ommani/payment-vnpay
Cách sử dụng
Khởi tạo gateway:
use Omnipay\Omnipay; $gateway = Omnipay::create('VNPay'); $gateway->initialize([ 'vnp_TmnCode' => 'Do VNPay cấp', 'vnp_HashSecret' => 'Do VNPay cấp', ]);
Gateway khởi tạo ở trên dùng để tạo các yêu cầu xử lý đến VNPay hoặc dùng để nhận yêu cầu do VNPay gửi đến.
Tạo yêu cầu thanh toán:
$response = $gateway->purchase([ 'vnp_TxnRef' => time(), 'vnp_OrderType' => 100000, 'vnp_OrderInfo' => time(), 'vnp_IpAddr' => '127.0.0.1', 'vnp_Amount' => 1000000, 'vnp_ReturnUrl' => 'https://github.com/phpviet', ])->send(); if ($response->isRedirect()) { $redirectUrl = $response->getRedirectUrl(); // TODO: chuyển khách sang trang VNPay để thanh toán }
Kiểm tra thông tin vnp_ReturnUrl khi khách được VNPay redirect về:
$response = $gateway->completePurchase()->send(); if ($response->isSuccessful()) { // TODO: xử lý kết quả và hiển thị. print $response->vnp_Amount; print $response->vnp_TxnRef; var_dump($response->getData()); // toàn bộ data do VNPay gửi sang. } else { print $response->getMessage(); }
Kham khảo thêm các tham trị khi VNPay trả về tại đây.
Kiểm tra thông tin IPN do VNPay gửi sang:
$response = $gateway->notification()->send(); if ($response->isSuccessful()) { // TODO: xử lý kết quả. print $response->vnp_Amount; print $response->vnp_TxnRef; var_dump($response->getData()); // toàn bộ data do VNPay gửi sang. } else { print $response->getMessage(); }
Kham khảo thêm các tham trị khi VNPay gửi sang tại đây.
Kiểm tra trạng thái giao dịch:
$response = $gateway->queryTransaction([ 'vnp_TransDate' => 20190705151126, 'vnp_TxnRef' => 1562314234, 'vnp_OrderInfo' => time(), 'vnp_IpAddr' => '127.0.0.1', 'vnp_TransactionNo' => 496558, ])->send(); if ($response->isSuccessful()) { // TODO: xử lý kết quả và hiển thị. print $response->getTransactionId(); print $response->getTransactionReference(); var_dump($response->getData()); // toàn bộ data do VNPay gửi về. } else { print $response->getMessage(); }
Kham khảo thêm các tham trị khi tạo yêu cầu và VNPay trả về tại đây.
Yêu cầu hoàn tiền:
$response = $gateway->refund([ 'vnp_Amount' => 10000, 'vnp_TransactionType' => '03', 'vnp_TransDate' => 20190705151126, 'vnp_TxnRef' => 32321, 'vnp_OrderInfo' => time(), 'vnp_IpAddr' => '127.0.0.1', 'vnp_TransactionNo' => 496558, ])->send(); if ($response->isSuccessful()) { // TODO: xử lý kết quả và hiển thị. print $response->getTransactionId(); print $response->getTransactionReference(); var_dump($response->getData()); // toàn bộ data do VNPay gửi về. } else { print $response->getMessage(); }
ommani/payment-vnpay 适用场景与选型建议
ommani/payment-vnpay 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 73 次下载、GitHub Stars 达 1, 最近一次更新时间为 2023 年 09 月 22 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「payment」 「vnpay」 「payment-gateway」 「vietnam-payment」 「vietnam-payment-gateway」 「ommani」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 ommani/payment-vnpay 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 ommani/payment-vnpay 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 ommani/payment-vnpay 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Thư viện hổ trợ tích hợp cổng thanh toán VNPay.
A PHP client for the Vnpay SOAP API
Client SDK for CyberSource REST APIs
First Atlantic Commerce (FAC) Payment Gateway Driver for Omnipay
Configuration-driven, multi-gateway payment orchestration for Laravel. Drivers expose primitives; flows compose them.
PHP client library for epayindo http://epayindo.com
统计信息
- 总下载量: 73
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 13
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2023-09-22