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

Доступны следующие API:

* API для получения информации о банках участниках (см. [#servis-polucheniya-informacii-o-bankakh-uchastnikakh](#servis-polucheniya-informacii-o-bankakh-uchastnikakh "mention")). Например, его можно использовать для отображения списка банков для пользователя (например, для совершения переводов). В API по банкам возвращаются участники со статусом активности.&#x20;
* API для получения информации о статусе доступности сервисов банков участников (см. [#servis-polucheniya-statusa-api-uchastnikov](#servis-polucheniya-statusa-api-uchastnikov "mention")), которое позволяет определять возможность осуществления операций с участником в определенный момент времени. Статус доступности предоставляется по каждому API участника, так как в определенные моменты времени одно API может быть доступно, а другое недоступно по различным причинам.

{% hint style="warning" %}
Важно понимать, что статус участника и статус доступности его API являются разными понятиями: участник может быть активным, однако некоторые из его API могут быть временно недоступны из-за сбоев, технических работ и других причин.
{% endhint %}

## Сервис получения информации о банках участниках

Для получения информации о зарегистрированных на Платформе банках предназначен служебный метод Платформы GET /v1/banks (см. описание в <https://banks-openapi.npck.kz/>).

> Данный метод предоставляет такие сведения как:&#x20;
>
> * наименование банка, указанное при регистрации на Платформе
> * логотип
> * БИК, указанное при регистрации на Платформе
> * БИН, указанное при регистрации на Платформе
> * (acceptsQrV1/acceptsQrV2)  версионность QR, поддерживаемая эквайером (true/false)
> * qrUrl,
> * (provider\_id) идентификатор, присвоенный при регистрации на Платформе,
> * статус активности участника,
> * (features) список опубликованных API у данного участника.

{% hint style="info" %}
*Примечание:*&#x20;

*Для аутентификации в методе API «Получить список банков» (GET /v1/banks) используется аутентификационный токен банка, который можно получить в личном кабинете участника на Платформе.*

&#x20;*Используется* JSON Web Token (JWT) с ограниченным сроком действия, срок действия токена указывается в поле "exp", входящем в соствав JWT.&#x20;

До истечения срока действия токена его необходимо перегенерировать *в личном кабинете участника. Вызов метода с истекшим токеном недоступен (ошибка с HTTP статусом 401).*
{% endhint %}

## Сервис получения статуса API участников

Платформа непрерывно осуществляет мониторинг доступности опубликованных на ней API участников.&#x20;

Для получения списка активных API участников предназначен служебный метод Платформы GET /v1/status/providers (см. описание в <https://status-openapi.npck.kz/>).&#x20;

> Данный метод предоставляет информацию по API участников и их текущем статусе: ACTIVE, NOT\_ACTIVE,BLOCK\_DEBIT, BLOCK\_CREDIT и CLOSED.&#x20;
>
> При статусе **ACTIVE** передается список опубликованных API участников  `(features).`

В ответе метода `GET /v1/banks` будут передаваться параметры `acceptsQrV1` и `acceptsQrV2` (true/false), которые отражают, какую версию QR эквайер поддерживает для приема операций.&#x20;

<pre class="language-jsonc" data-title="Пример:" data-full-width="true"><code class="lang-jsonc">{
    "providerId": "c5e13202-1e8b-4666-a90f-1c9937b6bbff", [Идентификатор, присвоенный при регистрации на Платформе]
<strong>            "name": "Mock Bank 3", [Наименование банка, указанное при регистрации на Платформе]
</strong>            "bic": "EXKAKZKA", [БИК банка,указанное при регистрации на Платформе]
            "bin": "070940006465", [Бин банка, указанное при регистрации на Платформее]
            "acceptsQrV1": true, [Версионность QR, поддерживаемая эквайером (true/false)]
            "acceptsQrV2": true,[Версионность QR, поддерживаемая эквайером (true/false)]
            "status": "ACTIVE", [Статус активности участника]
            "features": [Список опубликованных API участника]  [
                "C2C2_TRANSFERS_SEND",
                "C2C2_TRANSFERS_RECEIVE",
                "C2CR_RETURN_TRANSFERS_SEND",
                "C2CR_RETURN_TRANSFERS_RECEIVE",
                "M2M2_TRANSFERS_SEND",
                "M2M2_TRANSFERS_RECEIVE",
                "C2B2_PAYMENTS_SEND",
                "C2B2_PAYMENTS_RECEIVE",
                "C2B2_V2_PAYMENTS_SEND",
                "C2B2_V2_PAYMENTS_RECEIVE",
                "C2B2E_PAYMENTS_SEND",
                "C2B2E_PAYMENTS_RECEIVE",
                "C2BR_RETURN_PAYMENTS_SEND",
                "C2BR_RETURN_PAYMENTS_RECEIVE",
                "C2BR_V2_RETURN_PAYMENTS_SEND",
                "C2BR_V2_RETURN_PAYMENTS_RECEIVE",
                "C2BRE_RETURN_PAYMENTS_SEND",
                "C2BRE_RETURN_PAYMENTS_RECEIVE",
                "B2C2I_PAYOUTS_SEND",
                "B2C2I_PAYOUTS_RECEIVE",
                "B2C2U_PAYOUTS_SEND",
                "B2C2U_PAYOUTS_RECEIVE"
            ],
"logoUrl": "https://api.stage.npck.kz/v1/banks-logos?logoId=294afc2d-15eb-424f-9b27-19ad7213e8b8", [URL логотипа банка, доступный через Интернет]
"qrUrl": "https://mock-bank-3.stage.npck.kz", [URL, используемый при формировании QR эквайером]
"internalLogoUrl": "https://transfers-api.stage.npck.kz/v1/banks-logos?logoId=294afc2d-15eb-424f-9b27-19ad7213e8b8" [URL логотипа банка, доступный только через выделенный канал]
        }
</code></pre>

Статус доступности предоставляется по каждому API участника.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.npck.kz/mezhbankovskaya-sistema-perevodov-i-platezhei/poluchenie-informacii-o-bankakh-i-statuse-api.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
