Download the PHP package parazeet/paymaster_api_php_sdk without Composer
On this page you can find all versions of the php package parazeet/paymaster_api_php_sdk. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package paymaster_api_php_sdk
paymaster_api_php_sdk
PHP SDK для PayMaster API v2.
Requirements
- PHP ^8.1
guzzlehttp/guzzle^7.0
Installation
Setup
Создайте клиент с API-ключом (токены в кабинете).
Для POST-запросов рекомендуется передавать Idempotency-Key (например через ramsey/uuid).
Базовый URL: https://paymaster.ru/api/v2/.
Available methods
| Method | HTTP | Returns |
|---|---|---|
$api->post($request) |
POST /{resource}/ |
Response |
$api->getId($request, $id) |
GET /{resource}/{id} |
Response |
$api->getQuery($request, $query) |
GET /{resource}/?... |
Response (list items) |
$api->put($request, $id, $type?) |
PUT /{resource}/{id}[/{type}] |
Response или true |
Поведение put()
| Вызов | Endpoint | Успешный ответ |
|---|---|---|
put($payment, $id, 'complete') |
PUT /payments/{id}/complete |
PaymentResponse (JSON body) |
put($payment, $id, 'confirm') |
PUT /payments/{id}/confirm |
true (пустой HTTP 200) |
put($payment, $id, 'cancel') |
PUT /payments/{id}/cancel |
true |
put($token, $id, 'complete') |
PUT /paymenttokens/{id}/complete |
PaymentTokenResponse |
put($token, $id, 'revoke') |
PUT /paymenttokens/{id}/revoke |
true |
put($sticker->active(false), $id) |
PUT /stickers/{id} |
true |
$type опциональный: если null, вызывается PUT /{resource}/{id} без суффикса (для активации стикеров).
Request classes
| Class | Resource | Typical operations |
|---|---|---|
InvoiceRequest |
invoices |
создание ссылки на оплату |
PaymentRequest |
payments |
create / get / list / complete / confirm / cancel |
RefundRequest |
refunds |
create / get / list |
TokenizationRequest |
tokenization |
ссылка на привязку карты |
PaymentTokenRequest |
paymenttokens |
create / get / complete / revoke |
ReceiptRequest |
receipts |
create / get / list |
StickerRequest |
stickers |
create / get / list / activate |
Examples
Invoice (ссылка на оплату)
Payment — создание
Payment — get / list
Payment — complete (3DS) / confirm (capture) / cancel
Для
complete/confirmвtoArray()попадает только соответствующий action-payload (completeData/confirmData), не create-тело платежа.
Tokenization (ссылка на привязку)
Payment token — создание / get / complete / revoke
Receipt (чеки)
Resource: receipts (POST/GET /api/v2/receipts).
Sticker — создание / активация
Не передавайте третьим аргументом
'active'— согласно API путь без суффикса:PUT /stickers/{id}.Свойство ответа:
$response->sticker(раньше ошибочно называлось$receipt).
Refund
Error handling
При ошибке API SDK выбрасывает исключения из parazeet\PayMaster\Exceptions\*
(например ErrorContentFormatException, ErrorUnauthorizedException,
UnknownCodeException, EmptyResponseException, PayMasterHttpException,
ErrorSyntaxException).
Валидация ошибок срабатывает только для error-envelope {code, message, errors?} —
успешный платёж/refund с полем resultCode (без верхнего code) исключения не бросает.
Известные коды ошибок API (validation_error, not_authorized,
idempotency_key_violation, invalid_operation, payment_token_revoked,
payment_token_blocked) и коды авторизации — мапятся в ResponseValidator.
HTTP-статус вне 2xx → PayMasterHttpException (доступны statusCode(), responseBody()).
Пустой body на GET/POST или невалидный JSON → PayMasterHttpException / ErrorSyntaxException.
Notes
- SSL verification включён (
verify => true). - Таймауты по умолчанию:
timeout = 10s,connect_timeout = 5s. Idempotency-Keyпередаётся только в POST (черезConfig); GET/PUT — без этого заголовка.- Для POST/PUT всегда выставляется
Content-Type: application/json. - Булевы флаги (
testMode,dualMode,cashlink,active) сериализуются черезisset— явноеfalseпопадает в JSON. - В
receiptподдерживается опциональный блокsettlements(cashless,advance,loan,consideration) — вInvoiceRequest/PaymentRequest/RefundRequest/ReceiptRequest::settlements(). - Списки (
getQuery): ответ содержитitemsи опциональныйcursor—$response->cursor; следующую страницу запрашивайте с'cursor' => $response->cursor. - Поля list-ответов парсятся null-safe (
?? null) — отсутствие опциональных ключей не падает.