alegra / omnipay-klarna
Klarna支付网关用于Omnipay支付处理库
v0.0.2
2021-05-29 03:01 UTC
Requires
- php: ^7.3
- ext-dom: *
- ext-json: *
- ext-simplexml: *
- ext-soap: *
- omnipay/common: ^3
Requires (Dev)
README
Klarna支付网关用于Omnipay支付处理库
Omnipay 是一个框架无关的,多网关支付处理库,适用于PHP 7.3+。此包实现了Klarna在线支付网关对Omnipay的支持。
要求
- PHP >= 7.3.x
- Omnipay V.3 仓库
- PHPUnit以运行测试
自动加载
您必须安装Omnipay V.3
composer require league/omnipay:^3
然后您必须安装omnipay-payu包
composer require alegra/omnipay-klarna
payment-klarna
遵循PSR-4约定名称为其类,这意味着您可以轻松地将payment-klarna
类加载到自己的自动加载器中。
基本用法
- 您可以使用/examples文件夹来执行示例。此文件夹仅用于展示示例,不适用于生产使用。
- /examples文件夹中的第一个文件
composer install
授权示例
- 您可以在/examples文件夹中查看authorize.php文件。
<?php $loader = require __DIR__ . '/vendor/autoload.php'; $loader->addPsr4('Examples\\', __DIR__); use Omnipay\Klarna\Message\AuthorizeResponse; use Omnipay\Klarna\Gateway; use Examples\Helper; $gateway = new Gateway(); $helper = new Helper(); try { $params = $helper->getAuthorizeParams(); /** @var AuthorizeResponse $response */ $response = $gateway->authorize($params)->send(); $result = [ 'status' => $response->isSuccessful() ?: 0, 'message' => $response->getMessage(), 'requestParams' => $response->getServiceRequestParams(), 'response' => $response->getData() ]; } catch (Exception $e) { throw new \RuntimeException($e->getMessage()); }
购买示例
- 您可以在/examples文件夹中查看purchase.php文件。
<?php $loader = require __DIR__ . '/vendor/autoload.php'; $loader->addPsr4('Examples\\', __DIR__); use Omnipay\Klarna\Message\PurchaseResponse; use Omnipay\Klarna\Gateway; use Examples\Helper; $gateway = new Gateway(); $helper = new Helper(); try { $params = $helper->getPurchaseParams(); /** @var PurchaseResponse $response */ $response = $gateway->authorize($params)->send(); $result = [ 'status' => $response->isSuccessful() ?: 0, 'message' => $response->getMessage(), 'requestParams' => $response->getServiceRequestParams(), 'response' => $response->getData() ]; } catch (Exception $e) { throw new \RuntimeException($e->getMessage()); }
退款示例
- 您可以在/examples文件夹中查看refund.php文件。
<?php $loader = require __DIR__ . '/vendor/autoload.php'; $loader->addPsr4('Examples\\', __DIR__); use Omnipay\Klarna\Gateway; use Examples\Helper; $gateway = new Gateway(); $helper = new Helper(); try { $params = $helper->getRefundParams(); $response = $gateway->refund($params)->send(); $result = [ 'status' => $response->isSuccessful() ?: 0, 'redirect' => $response->isRedirect() ?: 0, 'message' => $response->getMessage(), 'requestParams' => $response->getServiceRequestParams(), 'response' => $response->getData() ]; print("<pre>" . print_r($result, true) . "</pre>"); } catch (Exception $e) { throw new \RuntimeException($e->getMessage()); }
requestParams
系统向Klarna API发送请求。它显示了请求信息。