lamoda / payture-inpay-client
Payture InPay API 客户端
1.2
2024-02-01 11:49 UTC
Requires
- php: ^7.1
- ext-libxml: *
- ext-mbstring: *
- ext-simplexml: *
- guzzlehttp/guzzle: ^6.3
- paillechat/php-enum: ^1.2
- psr/log: ^1.1
Requires (Dev)
- ext-dom: *
- ext-json: *
- friendsofphp/php-cs-fixer: ^2.14
- phpunit/phpunit: ^7.5
This package is auto-updated.
Last update: 2024-08-30 13:32:55 UTC
README
这是一个为 Payture InPay API 定制的简单 PHP 客户端。此 API 允许在 Payture 端管理用户敏感的支付数据(例如卡片)的同时处理支付交易。
安装
composer require lamoda/payture-inpay-client
使用
<?php # Minimal initialization $configuration = new \Lamoda\Payture\InPayClient\TerminalConfiguration( 'MerchantKey', 'MerchantPassword', 'https://sandbox.payture.com/' ); $transport = new \Lamoda\Payture\InPayClient\GuzzleHttp\GuzzleHttpPaytureTransport( new \GuzzleHttp\Client(), $configuration ); $terminal = new \Lamoda\Payture\InPayClient\PaytureInPayTerminal($configuration, $transport); $terminal->charge('ORDER_NUMBER_123', 100500);
调整
客户端配置
您可以将 \Lamoda\Payture\InPayClient\GuzzleHttp\GuzzleHttpOptionsBag
的实例作为第三个参数传递给 GuzzleHttpPaytureTransport。实例预先配置了 guzzle \GuzzleHttp\RequestOptions
,包括全局(第一个构造函数参数)和按操作(按操作名称索引的第二个构造函数参数)。
日志记录
您可以将 PSR-3 LoggerInterface
的实例作为第四个参数传递给 GuzzleHttpPaytureTransport,以记录带有参数的操作。
您还可以配置通用的 Guzzle 日志中间件。
测试
vendor/bin/phpunit -c phpunit.xml
您可以在运行测试时提供环境变量 PAYTURE_TEST_MERCHANT_KEY
和 PAYTURE_TEST_MERCHANT_PASSWORD
,以在您的测试终端测试此库。
PAYTURE_TEST_MERCHANT_KEY=MerchantKey \ PAYTURE_TEST_MERCHANT_PASSWORD=MerchantPassword \ vendor/bin/phpunit -c phpunit.xml
这些测试将在 payture 沙盒上运行订单处理流程。