Payment.Systems.Get
Возвращает каталог платёжных систем и контракты доступных для них операций. Текущая версия схемы — 3.
Входные параметры
Метод не принимает параметров. Передавайте пустой объект params.
{
"jsonrpc": "2.0",
"method": "Payment.Systems.Get",
"params": {},
"auth": "a2Fzc2E6a2FzMTIzNDU2",
"id": 1
}
Выходные параметры
| Название | Тип данных | Описание |
|---|---|---|
| schema_version | int32 | Версия схемы каталога |
| systems | array | Платёжные системы VCR |
Поля элемента systems:
| Название | Тип данных | Описание |
|---|---|---|
| payment_system_id | int32 | Значение payment_system_id для платёжных методов |
| code | string | Стабильный машинный код системы |
| name | string | Название платёжной системы |
| supported | bool | Сценарий поддерживается VCR |
| enabled | bool | Система включена в настройках |
| configured | bool | Обязательные настройки заполнены |
| available | bool | Система включена и настроена |
| sort_order | int32 | Рекомендуемый порядок отображения |
| field_options | object | Допустимые значения параметров операции, если применимо |
| operations | array | Контракты поддерживаемых методов; отсутствие метода означает, что система его не поддерживает |
Элемент field_options содержит value — передаваемое значение и code — его машинное имя.
Поля элемента operations:
| Название | Тип данных | Описание |
|---|---|---|
| method | string | Имя метода VCR |
| completion | string | synchronous или asynchronous |
| required_fields | array | Обязательные поля params |
| optional_fields | array | Необязательные поля params |
| result_fields | array | Поля результата |
| deprecated | bool | Признак устаревшего метода |
| replacement | string | Метод, заменяющий устаревший |
| amount_mode | string | Ограничение суммы; full — только полная сумма |
| customer_action | string | Машинный код действия покупателя |
| polling | object | Правила опроса асинхронной операции |
Поля объекта polling:
| Название | Тип данных | Описание |
|---|---|---|
| method | string | Метод получения состояния |
| id_source | string | Поле, из которого берётся идентификатор |
| request_field | string | Поле запроса для идентификатора |
| status_field | string | Поле статуса в ответе |
| interval_seconds | int32 | Рекомендуемый интервал опроса в секундах |
| timeout_seconds | int32 | Тайм-аут в секундах; 0 означает отсутствие заданного тайм-аута |
| pending_statuses | array | Статусы выполнения |
| success_statuses | array | Успешные конечные статусы |
| failure_statuses | array | Неуспешные конечные статусы |
| unknown_statuses | array | Статусы с неопределённым результатом, если применимо |
Сокращённый пример ответа
{
"jsonrpc": "2.0",
"result": {
"schema_version": 3,
"systems": [
{
"payment_system_id": -3,
"code": "posretail",
"name": "POSRetail",
"supported": true,
"enabled": true,
"configured": true,
"available": true,
"sort_order": 10,
"operations": [
{
"method": "Payment.Start",
"completion": "asynchronous",
"required_fields": ["payment_system_id", "amount", "card_type", "external_id"],
"optional_fields": ["description"],
"result_fields": [
"id", "datetime", "payment_system_id", "payment_id", "status", "amount",
"receipt_id", "phone", "rrn", "slip", "card_type_id", "card_number",
"external_id", "invoice_id", "qr_text", "provider_status",
"fiscal_module", "receipt_send_status", "receipt_send_error",
"receipt_sent_at", "refund",
"confirmation", "poll_after"
],
"polling": {
"method": "Payment.Get",
"id_source": "result.id",
"request_field": "payment_id",
"status_field": "status",
"interval_seconds": 2,
"timeout_seconds": 0,
"pending_statuses": [1, 2, 4, 6, 9],
"success_statuses": [3],
"failure_statuses": [-1, 5]
}
}
]
}
]
},
"ok": true,
"id": 1
}