gomzyakov/payture

此包已被放弃且不再维护。未建议替代包。

Payture InPay API 的 PHP 客户端

v0.5.0 2023-03-19 06:36 UTC

README

Payture InPay API 提供简单的 PHP 客户端。

InPay 是一种无需保存卡片即可轻松接受支付的方式。客户的卡信息在 Payture 网关网页中输入,所有所需的数据安全均由 Payture 提供,从而节省了商家在卡信息保护方面的努力和费用。

codecov

安装

composer require gomzyakov/payture

使用

<?php

$configuration = new \Gomzyakov\Payture\TerminalConfiguration(
    'MerchantKey',
    'MerchantPassword',
    'https://sandbox.payture.com/'
);

$transport = new \Gomzyakov\Payture\GuzzleHttp\GuzzleHttpPaytureTransport(
    new \GuzzleHttp\Client(),
    $configuration
);

$terminal = new \Gomzyakov\Payture\PaytureInPayTerminal($configuration, $transport);

$terminal->charge('ORDER_NUMBER_123', 100500);

调整

客户端配置

您可以将 \Gomzyakov\Payture\GuzzleHttp\GuzzleHttpOptionsBag 的实例作为第三个参数传递给 GuzzleHttpPaytureTransport。实例预先配置了 guzzle \GuzzleHttp\RequestOptions,包括全局(第一个构造函数参数)和按操作(以操作名称索引的第二个构造函数参数)。

日志记录

您可以将 PSR-3 LoggerInterface 的实例作为第四个参数传递给 GuzzleHttpPaytureTransport,以便记录带参数的操作。

您还可以配置通用的 Guzzle 日志中间件

测试

vendor/bin/phpunit -c phpunit.xml

您可以在运行测试时提供 PAYTURE_TEST_MERCHANT_KEYPAYTURE_TEST_MERCHANT_PASSWORD 环境变量来测试此库,以自己的测试终端进行测试。

 PAYTURE_TEST_MERCHANT_KEY=MerchantKey \
 PAYTURE_TEST_MERCHANT_PASSWORD=MerchantPassword \
 vendor/bin/phpunit -c phpunit.xml

这些测试将针对 payture 沙盒运行订单处理序列。