lzaplata / csobpaymentgateway
为Nette框架提供的ČSOB支付网关包装器。
dev-master
2021-12-09 08:32 UTC
Requires
- php: >=5.4
- guzzlehttp/guzzle: 5.3.2
- nette/application: ~2.3
- nette/di: ~2.3
- nette/utils: 2.3.11
- tracy/tracy: ~2.3
This package is auto-updated.
Last update: 2024-09-09 13:58:44 UTC
README
这是一个为ČSOB支付网关提供的Nette框架小包装器。
安装
安装库的最简单方法是通过Composer。
$ composer require lzaplata/csobpaymentgateway: dev-master
或者在您的项目中的composer.json
文件中进行编辑
"require": { "lzaplata/csobpaymentgateway": "dev-master" }
您需要在config.neon
文件中将库注册为扩展。
extensions: csobPaymentGateway: LZaplata\CsobPaymentGateway\DI\Extension
现在您可以设置参数...
csobPaymentGateway: merchantId : * sandbox : true currency : CZK privateKey: path : * password : * publicKey : *
...并将库自动注入到展示器中
use LZaplata\CsobPaymentGateway\Service; /** @var Service @inject */ public $csobPaymentGateway;
用法
创建购物车实例并添加项目。
$cart = new Cart(); $cart->setItem( $name, $quantity, $amount, // item price * quantity in lowest currency unit (1 CZK = 100) $description );
创建支付。
$payment = $this->csobPaymentGateway->createPayment( $orderNo, $totalAmount, // payment price + transport price in lowest currency unit (1 CZK = 100) $returnUrl, $cart, // cart instace from step above $payOperation // type of payment operation - default Payment::NORMAL_PAYMENT );
发送支付。
$response = $payment->send();
获取支付ID并将其保存到数据库中。
$payId = $response->getPayId();
重定向到支付网关。
$this->sendResponse($response->getRedirectResponse());
...或获取重定向URL。
$response->getRedirectUrl();
从网关返回后
获取响应并检查支付是否成功
$response = $this->csobPaymentGateway->getReturnResponse(); if ($response->isOk()) { // do something }
撤销支付
有时您必须撤销您的支付
$response = $this->csobPaymentGateway->reversePayment($payId); if ($response->isReversed()) { // do something }