lamoda / payture-inpay-bundle
Payture InPay API 客户端包
1.2
2024-02-01 12:36 UTC
Requires
- php: ^7.1
- lamoda/payture-inpay-client: ^1.2
- symfony/config: ^3.4 || ^4.0
- symfony/dependency-injection: ^3.4 || ^4.0
- symfony/http-kernel: ^3.4 || ^4.0
- symfony/yaml: ^3.4 || ^4.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.14
- phpunit/phpunit: ^7.5
- symfony/framework-bundle: ^3.4 || ^4.0
This package is auto-updated.
Last update: 2024-08-30 13:52:02 UTC
README
包装 lamoda/payture-inpay-php-client 的包
安装
composer require lamoda/payture-inpay-bundle
<?php // Kernel /// ... $bundles[] = new \Lamoda\Payture\InPayBundle\PaytureInPayBundle(); ///
# services.yaml payture_inpay: terminals: TestTerminal: auth: key: MerchantKey password: MerchantPassword url: https://sandbox.payture.com
使用
<?php $container->get(\Lamoda\Payture\InPayBundle\Terminal\TerminalRegistry::class)->get('TestTerminal')->charge('ORDER_NUMBER_123', 100500);
调整
自定义 Guzzle 客户端
您可以使用 payture_inpay.guzzle_client
选项键配置每个终端使用的 Guzzle 客户端,将您自己的 Guzzle 客户端服务 ID 放在那里。如果没有提供,则会为您实例化新客户端,即
default_options: operations: Init: timeout: 2 connect_timeout: 0.5
客户端配置
目前,您可以使用 payture_inpay.default_options.operations
为全局设置或 payture_inpay.terminals.<TerminalName>.operations
为终端级别设置来配置每个操作的超时。
日志记录
您可以使用带日志服务 ID 的 payture_inpay.logging
配置,以便传递给包的所有内部服务。
您还可以配置通用的 Guzzle 日志中间件。
配置参考
payture_inpay: terminals: # Prototype name: name: ~ # Terminal authentication data auth: # Required # Terminal operation URL url: ~ # Required, Example: https://sandbox.payture.com/ # Terminal identification Key key: ~ # Required, Example: Merchant # Terminal identification Password password: ~ # Required, Example: Secret operations: Init: # Operation timeout, seconds timeout: null # Connection timeout for operation, seconds connect_timeout: null Charge: # Operation timeout, seconds timeout: null # Connection timeout for operation, seconds connect_timeout: null Unblock: # Operation timeout, seconds timeout: null # Connection timeout for operation, seconds connect_timeout: null Refund: # Operation timeout, seconds timeout: null # Connection timeout for operation, seconds connect_timeout: null PayStatus: # Operation timeout, seconds timeout: null # Connection timeout for operation, seconds connect_timeout: null default_options: operations: Init: # Operation timeout, seconds timeout: 30 # Required # Connection timeout for operation, seconds connect_timeout: 5 # Required Charge: # Operation timeout, seconds timeout: 30 # Required # Connection timeout for operation, seconds connect_timeout: 5 # Required Unblock: # Operation timeout, seconds timeout: 30 # Required # Connection timeout for operation, seconds connect_timeout: 5 # Required Refund: # Operation timeout, seconds timeout: 30 # Required # Connection timeout for operation, seconds connect_timeout: 5 # Required PayStatus: # Operation timeout, seconds timeout: 30 # Required # Connection timeout for operation, seconds connect_timeout: 5 # Required # Guzzle client service ID. New one will be created if none provided guzzle_client: null # Logger service ID. No logger by default logger: null