bahiazul / redsys-virtual-pos
Redsys Virtual POS是一个用于通过西班牙支付服务Redsys处理支付的独立PHP库。
v0.5.0
2021-04-05 12:39 UTC
Requires
- php: >=5.4.0 <8.0
Requires (Dev)
- monolog/monolog: ^1.16@dev
- phpunit/php-invoker: 3.1.x-dev
- phpunit/phpunit: 9.5.x-dev
- rocket/table: dev-master
README
Redsys Virtual POS是一个非官方的独立PHP库,用于通过西班牙支付服务Redsys处理支付。
注意:这个库仍在开发中,其功能可能会发生变化。
先决条件
- PHP >=5.4.0 <8.0
安装
建议通过Composer进行安装。
$ composer require bahiazul/redsys-virtual-pos
示例
进入sample
文件夹,在终端中运行以下命令以启动PHP内置的web服务器
# install dependencies
$ composer install
# start the server
$ php -S 0.0.0.0:8000
然后打开您的浏览器并访问此处。
如果您想测试在线(异步)响应,将localhost
替换为您的公网IP或主机名,确保您的机器可以通过端口8000访问(如果您想的话,可以使用另一个端口)。
用法
基本用法
use Bahiazul\RedsysVirtualPos\Message\WebRequest; use Bahiazul\RedsysVirtualPos\Field\Currency; use Bahiazul\RedsysVirtualPos\Field\TransactionType; $secret = 'Mk9m98IfEblmPfrpsawt7BmxObt98Jev'; $merchantCode = '999008881'; $terminal = '871'; // The Environment object holds connection details $env = new Bahiazul\RedsysVirtualPos\Environment\DevelopmentEnvironment(); $env->setSecret($secret); // Setup the Parameters for the Request $params['Amount'] = '145'; // €1,45 $params['Order'] = strval(time()); $params['MerchantCode'] = $merchantCode; $params['Currency'] = Currency::EUR; $params['TransactionType'] = TransactionType::STANDARD; $params['Terminal'] = $terminal; $params['MerchantName'] = 'Test Store'; // optional $params['ProductDescription'] = 'Product Description'; // optional $params['UrlOk'] = 'https://:8000/success.php'; // optional $params['UrlKo'] = 'https://:8000/failure.php'; // optional // Generate the Request $webRequest = new WebRequest($env); $webRequest->setParams($params); // Generate the form $submitBtn = "<p><input type='submit' value='Submit'></p>"; $wrForm = $webRequest->getForm([], $submitBtn); // Render the HTML form w/ Submit button echo $wrForm;
查看sample/index.php
和sample/response.php
以获取更多详细示例。
测试
在终端中运行以下命令
# install dependencies
$ composer install
# run the tests
$ phpunit
更新日志
作者
许可
MIT