flowwow / cloudpayments-php-client
cloudpayments api client
Installs: 46 651
Dependents: 0
Suggesters: 0
Security: 0
Stars: 21
Watchers: 28
Forks: 17
Open Issues: 6
Requires
- php: >=7.4
- guzzlehttp/guzzle: ^6.2|^7.0
- myclabs/php-enum: ^1.6
- psr/log: ^1 || ^2 || ^3
Requires (Dev)
- phpunit/phpunit: ^9.5
- dev-main
- 3.0.11
- 3.0.10
- 3.0.9
- 3.0.8
- 3.0.7
- 3.0.6
- 3.0.5
- 3.0.4
- 3.0.3
- 3.0.2
- 3.0.1
- 3.0.0
- 2.0.13
- 2.0.12
- 2.0.11
- 2.0.10
- 2.0.9
- 2.0.8
- 2.0.7
- 2.0.6
- 2.0.5
- 2.0.4
- 2.0.3
- 2.0.2
- 2.0.1
- 2.0.0
- 1.1.3
- 1.1.2
- 1.1.1
- 1.1.0
- 1.0.2
- 1.0.1
- 1.0.0
- dev-github/fork/alex-goal/fix-type-of-sunscription-id
- dev-FB-1722
- dev-FB-1659
- dev-github/fork/proilyxa/add_new_param_in_cards_req
- dev-FB-1703
- dev-FB-1546
- dev-mkhramov
- dev-FB-569
- dev-FB-704
- dev-FB-623
- dev-FB-335
- dev-INFR_456_rector
- dev-support-idempotentcy
- dev-add-cloudkassir-support
This package is not auto-updated.
Last update: 2025-04-21 19:07:50 UTC
README
Оглавление
- Установка
- Начало работы
- Поддерживаемые методы
- Параметры запроса
- Параметры ответа
- Уведомления
- Идемпотентность
Установка
Установить библиотеку можно с помощью composer:
composer require flowwow/cloudpayments-php-client
Начало работы
$publicId = /*...*/; $pass = /*...*/; $apiClient = new \Flowwow\Cloudpayments\Library($publicId, $pass); $response = $apiClient->paymentsCardsCharge(new \Flowwow\Cloudpayments\Request\CardsPayment( 100, 'RUB', '123.123.123.123', '01492500008719030128SMfLeYdKp5dSQVIiO5l6ZCJiPdel4uDjdFTTz1UnXY' )); echo $response->success;
Поддерживаемые методы
Библиотека поддерживает большое количество методов api(https://developers.cloudpayments.ru/#api). Для параметров запроса и ответа поддерживается объект-обертка.
$apiClient = new \Flowwow\Cloudpayments\Library(\*...*\); $apiClient->paymentsCardsCharge(\*...*\);
Метод api | Метод library | Объект Request | Объект Response |
---|---|---|---|
payments/cards/charge | paymentsCardsCharge | TransactionWith3dsResponse | TransactionWith3dsResponse |
payments/cards/auth | createPaymentByCard2Step | TransactionWith3dsResponse | TransactionWith3dsResponse |
payments/tokens/charge | executePaymentByToken | TokenPayment | TransactionResponse |
payments/tokens/auth | executePaymentByToken | TokenPayment | TransactionResponse |
payments/confirm | confirmPayment | PaymentsConfirm | CloudResponse |
payments/void | cancelPayment | PaymentsVoid | CloudResponse |
payments/refund | paymentsRefund | PaymentsRefund | TransactionResponse |
payments/cards/topup | paymentsCardsTopup | CardsTopUp | TransactionResponse |
payments/token/topup | paymentsTokenTopup | TokenTopUp | TransactionResponse |
payments/get | getPaymentData | PaymentsGet | TransactionResponse |
payments/find | getPaymentDataByInvoice | PaymentsFind | TransactionResponse |
payments/list | getListPayment | PaymentsList | TransactionArrayResponse |
payments/tokens/list | paymentsTokensList | TokenList | TokenArrayResponse |
subscriptions/create | subscriptionsCreate | SubscriptionCreate | SubscriptionResponse |
subscriptions/get | subscriptionsGet | SubscriptionGet | SubscriptionResponse |
subscriptions/find | subscriptionsFind | SubscriptionFind | SubscriptionArrayResponse |
subscriptions/update | subscriptionsUpdate | SubscriptionUpdate | SubscriptionResponse |
subscriptions/cancel | subscriptionsCancel | SubscriptionCancel | CloudResponse |
orders/create | ordersCreate | OrderCreate | OrderResponse |
orders/cancel | ordersCancel | OrderCancel | CloudResponse |
site/notifications/{Type}/get | siteNotificationsGet | NotificationsGet | NotificationResponse |
site/notifications/{Type}/update | siteNotificationsUpdate | NotificationsUpdate | CloudResponse |
applepay/startsession | startSession | ApplepayStartSession | AppleSessionResponse |
Параметры запроса
Параметры запроса обернуты в dto-объект
... $validationUrl = 'https://apple-pay-gateway.apple.com/paymentservices/startSession'; $request = new \Flowwow\Cloudpayments\Request\ApplepayStartSession($validationUrl); $apiClient->startSession($request);
Библиотека может выбрасывать ошибку BadTypeException
при формировании request-объекта
try { ... $validationUrl = 'https://apple-pay-gateway.apple.com/paymentservices/startSession'; $request = new \Flowwow\Cloudpayments\Request\ApplepayStartSession($validationUrl); ... } catch (\Flowwow\Cloudpayments\Exceptions\BadTypeException $e) { var_dump($e->getMessage()); }
Параметры ответа
Параметры ответа так же обернуты в dto-объект. CloudResponse
имеет 3 свойства: success
, message
, model
В свойство model
записывается нужная сущность, в зависимости от запроса.
Список поддерживаемых сущностей:
AppleSessionModel
NotificationModel
SubscriptionModel
TokenModel
TransactionModel
TransactionWith3dsModel
Уведомления
Библиотека включает в себя dto-объекты для параметров веб хуков
$hookData = new \Flowwow\Cloudpayments\Hook\HookPay($_POST); echo $hookData->transactionId;
Список всех уведомлений - https://developers.cloudpayments.ru/#check
Webhook | Объект |
---|---|
Check | HookCheck |
Pay | HookPay |
Fail | HookFail |
Confirm | HookConfirm |
Refund | HookRefund |
Recurrent | HookRecurrent |
Cancel | HookCancel |
Идемпотентность
Библиотека поддерживает идемпотентные запросы
... $apiClient = new \Flowwow\Cloudpayments\Library(\*...*\); $apiClient->setIdempotency(true); $apiClient->createPaymentByCard2Step(\*...*\); ...
License
MIT