payyo / omnipay-payyo
为 Omnipay 支付处理库的 Payyo 网关
3.0.1
2020-09-10 11:43 UTC
Requires
- php: ^7.2
- omnipay/common: ^3.0
- payyo/php-sdk: ^5.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.16
- http-interop/http-factory-guzzle: ^1.0
- omnipay/tests: ^3.1
- phpstan/phpstan: ^0.12.42
README
为 Omnipay PHP 支付处理库提供的 Payyo 网关。
Omnipay 是一个不依赖于框架、多网关的 PHP 5.3+ 支付处理库。
Payyo Omnipay 库需要 PHP 7.0+。
安装
可以使用 Composer 安装 Omnipay。请参阅 安装说明。
运行以下命令以安装 omnipay 和 Payyo 网关
composer require payyo/omnipay-payyo
基本用法
以下参数是必需的
apiKey
您的 Payyo API/公开密钥secretKey
您的 Payyo 秘密密钥merchantId
您的 Payyo 商户 ID
$gateway = Omnipay::create('Payyo');
$gateway->setApiKey('api_...');
$gateway->setSecretKey('sec_...');
$gateway->setMerchantId('1234');
$gateway->setTestMode(true);
// Send purchase request
$response = $gateway->purchase([
'transactionId' => '123456',
'description' => '1x Book',
'amount' => '10.00',
'currency' => 'USD',
'paymentMethods' => ['credit_card'],
'returnUrl' => 'https://example.org/success',
'cancelUrl' => 'https://example.org/abort',
])->send();
// This is a redirect gateway, so redirect right away
$response->redirect();
请求
购买
- purchase() 调用
paymentPage.initialize
,然后您应该进行重定向 - completePurchase() 调用
transaction.getNextAction
和(如果需要)transaction.capture
授权 + 捕获
- authorize() 调用
paymentPage.initialize
,然后您应该进行重定向 - completeAuthorize() 调用
transaction.getDetails
- capture() 调用
transaction.getNextAction
和(如果需要)transaction.capture
作废/退款
- void() 调用
transaction.void
- refund() 调用
transaction.refund
测试
您可以通过运行 docker-compose up
并然后访问 http://localhost:8086/
来针对沙盒进行测试支付。