arielmejiadev / pagalogt
PagaloGT支付处理库,提供流畅的语法、测试方法和Cybersource实现。
5.0.0
2021-02-22 00:34 UTC
Requires
- php: ^7.1|^8.0
- illuminate/support: ^7.0|^8.0
Requires (Dev)
- orchestra/testbench: ^5.0|^6.0
- phpunit/phpunit: ^8.0|^9.0
README
它提供了流畅的语法,使用PagaloGT支付网关在Laravel中进行支付。
要了解更多关于此包的信息,请访问这里的文档网站
安装
您可以通过composer安装此包
composer require arielmejiadev/pagalogt
发布配置文件
这不是必需的,但您可以发布配置文件
php artisan vendor:publish --tag=pagalogt-config
用法
- 在应用的
.env
文件中添加您的PagaloGT凭证
您可以在这里获取凭证,您需要创建一个账户并按照PagaloGT的步骤进行。
PAGALO_TEST_IDEN_EMPRESA='{TestPagaloIdenEmpresa}' PAGALO_TEST_TOKEN='{TestPagaloToken}' PAGALO_TEST_KEY_PUBLIC='{TestPagaloKeyPublic}' PAGALO_TEST_KEY_SECRET='{TestPagaloKeySecret}' PAGALO_ENVIRONMENT='test'
- 开发和测试(避免真实交易)
$payment = new PagaloGT(); return $payment->add(1, 'Test transaction', 100.00) ->setClient('John', 'Doe', 'john@doe.com') ->withTestCard('John Doe') ->withTestCredentials() ->pay();
- 使用外观
return PagaloGT::add(1, 'Test transaction', 100.00) ->setClient('John', 'Doe', 'john@doe.com') ->withTestCard('John Doe') ->withTestCredentials() ->pay();
- 在生产环境中
PAGALO_IDEN_EMPRESA='{LivePagaloIdenEmpresa}' PAGALO_TOKEN='{LivePagaloToken}' PAGALO_KEY_PUBLIC='{LivePagaloKeyPublic}' PAGALO_KEY_SECRET='{LivePagaloKeySecret}' PAGALO_ENVIRONMENT='live'
return PagaloGT->add(1, 'Test transaction', 100.00) ->setClient('John', 'Doe', 'john@doe.com') ->setCard('JOHN JOSEPH DOE DULLIE', 'XXXX XXXX XXXX XXXX', 12, 2022, 742) ->pay();
验证响应
Laravel 5.5到Laravel 6.x
此包提供常量来验证响应,您可以执行类似以下操作
$response['decision'] === 'ACCEPT'; $response['reasonCode'] === 100;
为了避免魔法数字,您可以这样做
use \ArielMejiaDev\PagaloGT\PagaloGT; // ... $response = PagaloGT::add(1, 'Test transaction from Laravel 5.5', 100.00) ->setClient('John', 'Doe', 'john@doe.com') ->withTestCard('John Doe') ->withTestCredentials() ->pay(); if($response['decision'] === PagaloGT::APPROVE_DECISION && $response['reasonCode'] === PagaloGT::APPROVE_REASON_CODE ) { // do something }
Laravel 7和8
您可以使用旧验证方式(自Laravel 5.5 - 6.x以来)
在Laravel 7和8中,库更改了响应,因此您可以像这样进行验证
$response = PagaloGT::add(1, 'product', 100.00)->withTestCard()->withTestCredentials()->pay(); if($response->successful()) { // do something }
其他验证方法
$response->fail(); $response->successful(); $response->ok() $response->header('single header'); $response->headers();
支持Cybersource
此库已准备好支持Cybersource交易,只需添加一个配置变量即可。
PAGALO_USE_CYBERSOURCE=true
您需要添加一个脚本来生成您的结账表单上的deviceFingerPrint
。
在文档中,您可以找到以下脚本的现成版本
- Blade文件:Cybersource脚本用于blade文件
- VueJS文件:(待定)
测试
composer test
变更日志
请参阅CHANGELOG以获取有关最近更改的更多信息。
贡献
请参阅CONTRIBUTING以获取详细信息。
安全
如果您发现任何安全相关的问题,请通过电子邮件arielmejiadev@gmail.com报告,而不是使用问题跟踪器。
致谢
许可
MIT许可(MIT)。请参阅许可文件以获取更多信息。