PHPackages                             justcommunication-ru/paykeeper-sdk - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. justcommunication-ru/paykeeper-sdk

ActiveLibrary[API Development](/categories/api)

justcommunication-ru/paykeeper-sdk
==================================

paykeeper.ru acquiring PHP SDK

v0.1.7(9mo ago)2145MITPHP

Since Apr 9Pushed 1mo ago2 watchersCompare

[ Source](https://github.com/JustCommunication-ru/paykeeper-sdk)[ Packagist](https://packagist.org/packages/justcommunication-ru/paykeeper-sdk)[ RSS](/packages/justcommunication-ru-paykeeper-sdk/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (6)Versions (9)Used By (0)

paykeeper.ru PHP SDK
====================

[](#paykeeperru-php-sdk)

[![Latest Stable Version](https://camo.githubusercontent.com/8653b1798112c9d772b026a5c55c88bdeaa65adef97b0b46bd65cc00a94ed60b/68747470733a2f2f706f7365722e707567782e6f72672f6a757374636f6d6d756e69636174696f6e2d72752f7061796b65657065722d73646b2f76)](//packagist.org/packages/justcommunication-ru/paykeeper-sdk)[![Latest Unstable Version](https://camo.githubusercontent.com/3951ea3b5d3a03b2c2876a2cc7766ab5c06bd7d4a0826d102ab43e03c00d583d/687474703a2f2f706f7365722e707567782e6f72672f6a757374636f6d6d756e69636174696f6e2d72752f7061796b65657065722d73646b2f762f756e737461626c65)](https://packagist.org/packages/justcommunication-ru/paykeeper-sdk)[![Total Downloads](https://camo.githubusercontent.com/f89a33c50f6a7b2b7cffcb06977ca0a0e7339879fe17e8278c3ff6556124c8bd/68747470733a2f2f706f7365722e707567782e6f72672f6a757374636f6d6d756e69636174696f6e2d72752f7061796b65657065722d73646b2f646f776e6c6f616473)](//packagist.org/packages/justcommunication-ru/paykeeper-sdk)[![License](https://camo.githubusercontent.com/9111a94b5eb70abcdaafa53de380150d6446968be074f45d32606dfdf9fe9709/687474703a2f2f706f7365722e707567782e6f72672f6a757374636f6d6d756e69636174696f6e2d72752f7061796b65657065722d73646b2f6c6963656e7365)](https://packagist.org/packages/justcommunication-ru/paykeeper-sdk)

PHP SDK для сервиса

- [Установка](#%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0)
- [Использование](#%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)
- [Методы](#%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B)
- [Настройка HTTP клиента](#%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0-http-%D0%BA%D0%BB%D0%B8%D0%B5%D0%BD%D1%82%D0%B0)
- [Логирование](#%D0%BB%D0%BE%D0%B3%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)
- [Тесты](#%D1%82%D0%B5%D1%81%D1%82%D1%8B)

Установка
---------

[](#установка)

`composer require justcommunication-ru/paykeeper-sdk`

Использование
-------------

[](#использование)

```
use JustCommunication\PaykeeperSDK\PaykeeperAPIClient;

$client = new PaykeeperAPIClient($url, $username, $password, $tokenHandler);
```

`$url` — Адрес вашего кабинета Paykeeper. Выдается каждому клиенту индивидуально. Например: `https://somename.server.paykeeper.ru`

`$username` — имя пользователя

`$password` — пароль пользователя

`$tokenHandler` — необязательный аргумент – хендлер токена.

### Хендлеры токена

[](#хендлеры-токена)

Токен безопасности выдается на ограниченное время, не лишним будет сохранять и обновлять его автоматически. В случае, если API выдало ошибку проверки токена, то будет произведена попытка обновить этот токен и повторить запрос автоматически.

Данный аргумент является необязательным, если его не передавать, то будет использоваться InMemory хендлер.

#### Доступные хендлеры:

[](#доступные-хендлеры)

##### InMemoryTokenHandler

[](#inmemorytokenhandler)

Хранит хендлер в памяти со всеми вытекающими последствиями. Если php скрипт завершил работу, то при новом запросе будет запрошен новый токен.

##### FileTokenHandler

[](#filetokenhandler)

Хранит токен на файловой системе

```
use JustCommunication\PaykeeperSDK\TokenHandler\FileTokenHandler;

$tokenHandler = new FileTokenHandler('/path/to/token.txt');
```

##### CallbackTokenHandler

[](#callbacktokenhandler)

Хендлер, который позволяет читать и сохранять токен по колбэкам

```
use JustCommunication\PaykeeperSDK\TokenHandler\CallbackTokenHandler;

$tokenHandler = new CallbackTokenHandler(function () use ($db) {
    return $db->fetchColumn('SELECT token FROM tokens WHERE name = "paykeeper"');
}, function ($new_token) {
    $db->update('UPDATE tokens SET token = :token WHERE name = "paykeeper"', [
        'token' => $new_token
    ]);
});
```

##### Свой хендлер

[](#свой-хендлер)

Для реализации своего хендлера реализуйте интерфейс `TokenHandlerInterface`

Методы
------

[](#методы)

[Подготовка счета](#%D0%BF%D0%BE%D0%B4%D0%B3%D0%BE%D1%82%D0%BE%D0%B2%D0%BA%D0%B0-%D1%81%D1%87%D0%B5%D1%82%D0%B0)

[Получение информации о счете](#%D0%BF%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5-%D0%B8%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D0%B8%D0%B8-%D0%BE-%D1%81%D1%87%D0%B5%D1%82%D0%B5)

[История счетов](#%D0%B8%D1%81%D1%82%D0%BE%D1%80%D0%B8%D1%8F-%D1%81%D1%87%D0%B5%D1%82%D0%BE%D0%B2)

### Подготовка счета

[](#подготовка-счета)

```
use JustCommunication\PaykeeperSDK\API\Invoice\InvoicePreviewRequest;

$invoicePreviewRequest = new InvoicePreviewRequest();
$invoicePreviewRequest
    ->setOrderId(123)
    ->setServiceName('Test service')
    ->setAmount(100)
;

try {
    $response = $client->sendInvoicePreviewRequest($invoicePreviewRequest);

    header('Location: ' . $response->getInvoiceUrl()); // перенаправляем пользователя на страницу оплаты
    exit;
} catch (PaykeeperAPIException $e) {
    // обработка ошибки
}
```

### Получение информации о счете

[](#получение-информации-о-счете)

```
$invoice = $client->getInvoice($invoice_id);

$invoice->getId();
$invoice->getStatus();
$invoice->getCreatedAt();
$invoice->getPaidAt();
$invoice->getPayAmount();
```

### История счетов

[](#история-счетов)

```
use JustCommunication\PaykeeperSDK\API\Invoice\InvoiceListRequest;

$invoiceListRequest = new InvoiceListRequest();
$invoiceListRequest->setStatuses([
    $invoiceListRequest::STATUS_SENT,
    $invoiceListRequest::STATUS_PAID,
    $invoiceListRequest::STATUS_EXPIRED
])
    ->setStartDate(new \DateTime('-10 days'))
    ->setEndDate(new \DateTime('+10 days'))
;

$response = $client->sendInvoiceListRequest($invoiceListRequest);

foreach ($response->getInvoices() as $invoice) {
    $invoice->getId();
    $invoice->getStatus();
    $invoice->getCreatedAt();
    $invoice->getPaidAt();
    $invoice->getPayAmount();
}
```

Настройка HTTP клиента
----------------------

[](#настройка-http-клиента)

### Способ №1: передача массива параметров

[](#способ-1-передача-массива-параметров)

```
use JustCommunication\PaykeeperSDK\PaykeeperAPIClient;

$client = new PaykeeperAPIClient($url, $username, $password, $tokenHandler, [
    'proxy' => 'tcp://localhost:8125',
    'timeout' => 6,
    'connect_timeout' => 4
]);
```

Список доступных параметров:

### Способ №2: передача своего `\GuzzleHttp\Client`

[](#способ-2-передача-своего-guzzlehttpclient)

Настройте своего http клиента:

```
// Http клиент с логгированием всех запросов

$stack = HandlerStack::create();
$stack->push(Middleware::log($logger, new MessageFormatter(MessageFormatter::DEBUG)));

$httpClient = new \GuzzleHttp\Client([
    'handler' => $stack,
    'timeout' => 6
]);
```

и передайте его аргументом конструктора:

```
use JustCommunication\PaykeeperSDK\PaykeeperAPIClient;

$client = new PaykeeperAPIClient($url, $username, $password, $tokenHandler, $httpClient);
```

либо сеттером:

```
use JustCommunication\PaykeeperSDK\PaykeeperAPIClient;

$client = new PaykeeperAPIClient($url, $username, $password, $tokenHandler);
$client->setHttpClient($httpClient);
```

Логирование
-----------

[](#логирование)

В `$client` можно передать свой `Psr\Logger`.

```
$client->setLogger($someLogger);
```

По-умолчанию логирование отключено (NullLogger)

Тесты
-----

[](#тесты)

Запустить тесты можно командой:

`vendor/bin/phpunit`

###  Health Score

37

—

LowBetter than 82% of packages

Maintenance81

Actively maintained with recent releases

Popularity15

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity36

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~69 days

Recently: every ~27 days

Total

8

Last Release

274d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/2c85524bc58444ab554ec47663bd1716ef1db841d7e245a4569f67c7da8e2d0c?d=identicon)[wiistriker](/maintainers/wiistriker)

---

Top Contributors

[![wiistriker](https://avatars.githubusercontent.com/u/967817?v=4)](https://github.com/wiistriker "wiistriker (20 commits)")

---

Tags

apisdkacquiringpaykeeper

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StylePHP\_CodeSniffer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/justcommunication-ru-paykeeper-sdk/health.svg)

```
[![Health](https://phpackages.com/badges/justcommunication-ru-paykeeper-sdk/health.svg)](https://phpackages.com/packages/justcommunication-ru-paykeeper-sdk)
```

###  Alternatives

[theodo-group/llphant

LLPhant is a library to help you build Generative AI applications.

1.5k311.5k5](/packages/theodo-group-llphant)[mailchimp/transactional

458.9M16](/packages/mailchimp-transactional)[resend/resend-php

Resend PHP library.

564.7M21](/packages/resend-resend-php)[justcommunication-ru/tinkoff-acquiring-api-client

Tinkoff Acquiring API PHP Client

102.5k](/packages/justcommunication-ru-tinkoff-acquiring-api-client)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
