PHPackages                             bank-131/php-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. bank-131/php-sdk

ActiveLibrary[API Development](/categories/api)

bank-131/php-sdk
================

Bank131 PHP SDK

0.14.1(4y ago)03MITPHPPHP ^8.0

Since Jun 30Pushed 4y agoCompare

[ Source](https://github.com/ChirkovDanil/php-sdk)[ Packagist](https://packagist.org/packages/bank-131/php-sdk)[ RSS](/packages/bank-131-php-sdk/feed)WikiDiscussions master Synced today

READMEChangelogDependencies (5)Versions (22)Used By (0)

Bank131 SDK
===========

[](#bank131-sdk)

Библиотека для работы с API Bank131 в приложениях написанных на языке PHP.

Требования
----------

[](#требования)

- PHP 7.3 или выше

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

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

Рекомендуемый способ установки Bank 131 SDK - установка с помощью пакетного менеджера Composer.

Для включения данной библиотеки в ваш проект необходимо выполнить следующие команды в консоли:

```
cd /path/to/your/project
composer require 131/php-sdk
```

Документация
------------

[](#документация)

Более подробные примеры в документации [API Банк 131](https://developer.131.ru)

Быстрый старт
-------------

[](#быстрый-старт)

### Инициализация клиента:

[](#инициализация-клиента)

```
use Bank131\SDK\Client;
use Bank131\SDK\Config;

$config = new Config(
    'https://demo.bank131.ru',
    'test_project',
    file_get_contents('/path/to/your/private_key.pem'),
    file_get_contents('/path/to/bank131/public_key.pem')
);
$client = new Client($config);
```

### Выпуск публичного токена для создания виджета:

[](#выпуск-публичного-токена-для-создания-виджета)

```
use Bank131\SDK\API\Request\Builder\RequestBuilderFactory;

$request = RequestBuilderFactory::create()
    ->issuePublicTokenBuilder()
    ->setTokenizeWidget()                   // публичный токен с доступом к виджету токенизации
    ->setSelfEmployedWidget('111111111111') // публичный токен с доступом к виджету для работы с самозанятыми
    ->setAcquiringWidget('session_id')      // публичный токен с доступом к виджету эквайринга
    ->build();

$response = $this->client->widget()->issuePublicToken($request);
```

### Создание и старт эквайринг сессии:

[](#создание-и-старт-эквайринг-сессии)

```
use Bank131\SDK\API\Request\Builder\RequestBuilderFactory;
use Bank131\SDK\Client;
use Bank131\SDK\DTO\Customer;
use Bank131\SDK\DTO\Card\BankCard;

$request = RequestBuilderFactory::create()
    ->createPaymentSession()
    ->build();

/** @var Client $client */
$createSessionResponse = $client->session()->create($request);

$request = RequestBuilderFactory::create()
    ->startPaymentSession($createSessionResponse->getSession()->getId())
    ->setCard(new BankCard('4242424242424242', '12', '22', '123', 'CARDHOLDER NAME'))
    ->setAmount(10000, 'rub')
    ->setCustomer(new Customer('reference'))
    ->setMetadata('your metadata here')
    ->build();

$sessionStartResponse = $this->client->session()->startPayment($request);
```

### Создание и старт сессии для осуществления выплаты:

[](#создание-и-старт-сессии-для-осуществления-выплаты)

```
use Bank131\SDK\API\Request\Builder\RequestBuilderFactory;
use Bank131\SDK\DTO\Card\EncryptedCard;
use Bank131\SDK\DTO\Customer;
use Bank131\SDK\DTO\Participant;
use Bank131\SDK\Client;

$request = RequestBuilderFactory::create()
    ->createPayoutSession()
    ->build();

/** @var Client $client */
$createSessionResponse = $client->session()->create($request);

$recipient = new Participant();
$recipient->setFullName('John Doe');

$request = RequestBuilderFactory::create()
    ->startPayoutSession($createSessionResponse->getSession()->getId())
    ->setCard(new EncryptedCard('number_hash_here'))
    ->setRecipient($recipient)
    ->setAmount(10000, 'rub')
    ->setCustomer(new Customer('reference'))
    ->setMetadata('your metadata here')
    ->build();

$sessionStartResponse = $this->client->session()->startPayout($request);
```

### Запрос статуса сессии:

[](#запрос-статуса-сессии)

```
use Bank131\SDK\Client;

/** @var Client $client */
$response = $this->client->session()->status('session_id');
```

### Возврат:

[](#возврат)

```
use Bank131\SDK\API\Request\Builder\RequestBuilderFactory;

$request = RequestBuilderFactory::create()
    ->refundSession('session_id')
    ->setAmount(1000, 'rub')
    ->setMetadata('your metadata here')
    ->build();

$response = $this->client->session()->refund($request);
```

### Запрос баланса кошелька:

[](#запрос-баланса-кошелька)

```
use Bank131\SDK\Client;

/** @var Client $client */
$response = $client->wallet()->balance();
```

### Обработка веб-хуков:

[](#обработка-веб-хуков)

```
use Bank131\SDK\Client;
use Bank131\SDK\Services\WebHook\Hook\WebHookTypeEnum;

/** @var Client $client */
$hook = $client->handleWebHook('sign from headers', 'request body');

switch ($hook->getType()) {
    case WebHookTypeEnum::READY_TO_CONFIRM:
        $client->session()->confirm($hook->getSession()->getId());
        break;
    case WebHookTypeEnum::READY_TO_CAPTURE:
        $client->session()->capture($hook->getSession()->getId());
        break;
    case WebHookTypeEnum::ACTION_REQUIRED:
        //do some logic
        break;
    case WebHookTypeEnum::PAYMENT_FINISHED:
        //do some logic
        break;
    case WebHookTypeEnum::PAYMENT_REFUNDED:
        //do some logic
        break;
}
```

###  Health Score

25

—

LowBetter than 35% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity3

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity60

Established project with proven stability

 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 ~36 days

Recently: every ~82 days

Total

21

Last Release

1464d ago

PHP version history (2 changes)0.1.0PHP ^7.3

0.14.1PHP ^8.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/2597b07009e19d463ed15e1bb697320693f710ea165b8b6b34aa4c7ff466c618?d=identicon)[ChirkovDanil](/maintainers/ChirkovDanil)

---

Top Contributors

[![ChirkovDanil](https://avatars.githubusercontent.com/u/108474337?v=4)](https://github.com/ChirkovDanil "ChirkovDanil (1 commits)")

---

Tags

apisdkpayment processingbank131131

###  Code Quality

TestsPHPUnit

Static AnalysisPsalm

Type Coverage Yes

### Embed Badge

![Health badge](/badges/bank-131-php-sdk/health.svg)

```
[![Health](https://phpackages.com/badges/bank-131-php-sdk/health.svg)](https://phpackages.com/packages/bank-131-php-sdk)
```

###  Alternatives

[aws/aws-sdk-php

AWS SDK for PHP - Use Amazon Web Services in your PHP project

6.3k543.5M2.6k](/packages/aws-aws-sdk-php)[tempest/framework

The PHP framework that gets out of your way.

2.2k34.4k15](/packages/tempest-framework)[sylius/sylius

E-Commerce platform for PHP, based on Symfony framework.

8.5k5.9M736](/packages/sylius-sylius)[neuron-core/neuron-ai

The PHP Agentic Framework.

2.0k656.1k38](/packages/neuron-core-neuron-ai)[algolia/algoliasearch-client-php

API powering the features of Algolia.

69735.1M159](/packages/algolia-algoliasearch-client-php)[theodo-group/llphant

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

1.7k409.0k6](/packages/theodo-group-llphant)

PHPackages © 2026

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