owlookit / cloudpayments-php-client
cloudpayments API 客户端
0.9.4
2024-09-02 04:10 UTC
Requires
- php: >=8.0
- guzzlehttp/guzzle: ^7.9
- myclabs/php-enum: ^1.8
- psr/log: 3.*
Requires (Dev)
- phpunit/phpunit: ^11.3
- roave/security-advisories: dev-latest
This package is auto-updated.
Last update: 2024-09-02 04:12:27 UTC
README
目录
前言
从 flowwow/cloudpayments-php-client 分支而来
- php 8.x 支持
安装
composer require owlookit/cloudpayments-php-client
开始使用
$publicId = /*...*/; $pass = /*...*/; $apiClient = new \Owlookit\Cloudpayments\Library($publicId, $pass); $response = $apiClient->paymentsCardsCharge(new \Owlookit\Cloudpayments\Request\CardsPayment( 100, 'RUB', '123.123.123.123', '01492500008719030128SMfLeYdKp5dSQVIiO5l6ZCJiPdel4uDjdFTTz1UnXY' )); echo $response->success;
支持的方法
该库支持大量的 API 方法(https://developers.cloudpayments.ru/#api)。对于请求和响应参数,支持对象封装。
$apiClient = new \Owlookit\Cloudpayments\Library(\*...*\); $apiClient->paymentsCardsCharge(\*...*\);
请求参数
请求参数封装在 dto 对象中
... $validationUrl = 'https://apple-pay-gateway.apple.com/paymentservices/startSession'; $request = new \Owlookit\Cloudpayments\Request\ApplepayStartSession($validationUrl); $apiClient->startSession($request);
在构建请求对象时,该库可能会抛出 BadTypeException
错误
try { ... $validationUrl = 'https://apple-pay-gateway.apple.com/paymentservices/startSession'; $request = new \Owlookit\Cloudpayments\Request\ApplepayStartSession($validationUrl); ... } catch (\Owlookit\Cloudpayments\Exceptions\BadTypeException $e) { var_dump($e->getMessage()); }
响应参数
响应参数也封装在 dto 对象中。 CloudResponse
有 3 个属性:success
、message
、model
model
属性记录所需实体,具体取决于请求。
支持实体的列表
AppleSessionModel
NotificationModel
SubscriptionModel
TokenModel
TransactionModel
TransactionWith3dsModel
通知
该库包括用于参数 webhooks 的 dto 对象
$hookData = new \Owlookit\Cloudpayments\Hook\HookPay($_POST); echo $hookData->transactionId;
所有通知的列表 - https://developers.cloudpayments.ru/#check
幂等性
该库支持幂等请求
... $apiClient = new \Owlookit\Cloudpayments\Library(\*...*\); $apiClient->setIdempotency(true); $apiClient->createPaymentByCard2Step(\*...*\); ...
许可证
MIT