owlookit/cloudpayments-php-client

cloudpayments API 客户端

0.9.4 2024-09-02 04:10 UTC

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 个属性:successmessagemodel

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