Получение информации о доступных методах
При использовании различных платёжных методов в некоторых случаях может быть полезным уточнять информацию об их доступности, в том числе для того, чтобы корректировать набор методов, доступных для выбора пользователями. В платёжной платформе ecommpay для таких целей предусмотрены возможности программного уточнения информации как по отдельным, так и по всем подключённым методам. При этом следует учитывать, что доступность метода не гарантирует отсутствие каких-либо сбоев и неполадок непосредственно при проведении платежей с его использованием.
Для получения информации о доступности методов можно использовать запросы к конечным точкам группы /v2/info/available-methods/{payment_direction}/list, где в качестве указателя payment_direction следует использовать payin для оплат (любого типа) или payout для выплат. При работе с такими запросами необходимо учитывать следующее:
В платёжной платформе поддерживается возможность получать информацию о доступности методов для проведения оплат и выплат. Для этого предусмотрены конечные точки группы /v2/info/available-methods/{payment_direction}/list, в запросах к которым в качестве указателя payment_direction следует использовать payin для оплат или payout для выплат, а также необходимо учитывать следующее:
- В каждом запросе должен указываться объект
general, включающий два параметра:project_id— идентификатор проекта, полученный от ecommpay при интеграции;signature— подпись запроса, составленная после указания целевых параметров (подробнее — в статье Работа с подписью к даннымподробнее).
- Если необходимо получить информацию для одного или нескольких конкретных платёжных методов, должен указываться массив
payment_method_list, включающий параметрыpayment_methodс кодами этих методов.
{
"general":{
"project_id": 50,
"signature": "qflDO7yiPKCFTyqCAaT+2/f9Gi20aV5woHKyf6J/CGJyuSjq1GH7BYgmil8APKojXw=="
},
"payment_method_list": [
{
"payment_method":"etoken"
},
{
"payment_method":"google-pay"
}
]
}
{
"general":{
"project_id": 50,
"signature": "qflDO7yiPKCFTyqCAaT+2/f9Gi20aV5woHKyf6J/CGJyuSjq1GH7BYgmil8APKojXw=="
}
}
Для выполнения запросов на получение информации о доступности методов используется синхронная схема взаимодействия между веб-сервисом и платёжной платформой. Это означает, что каждый такой запрос полностью выполняется на стороне платёжной платформы в течение одного HTTP-сеанса, а в ответе на корректно составленный запрос содержится HTTP-код ответа (200) и запрошенная информация без указания статуса запроса. В случаях, когда запрос некорректен или с его приёмом и обработкой возникли проблемы, в ответе на запрос содержатся HTTP-код ответа, статус обработки запроса error и описание причины обнаруженной ошибки. Информация об HTTP-кодах ответов представлена в статье Организация взаимодействия, а о кодах ошибок, используемых в платёжной платформе — в статье Работа с информацией об операциях.
Для выполнения запросов на получение информации о доступности методов используется синхронная схема взаимодействия. В ответе на корректно составленный запрос содержится HTTP-код ответа (200) и запрошенная информация без указания статуса запроса. В случаях, когда запрос некорректен или с его приёмом и обработкой возникли проблемы, — HTTP-код ответа (подробнее), статус обработки запроса error и описание причины обнаруженной ошибки (подробнее).
В теле ответа на корректно составленный запрос содержатся идентификатор проекта, подпись и массив с информацией о доступности методов.
{
"project_id": 50,
"signature": "qflDO7yiPKCFTyqCAaT+2/f9Gi20aV5woHKyf6J/CGJyuSjq1GH7BYgmil8APKojXw==",
"available_methods":[
{
"payment_method":"etoken",
"is_available": false
},
{
"payment_method":"google-pay",
"is_available": true
}]
}
{
"project_id": 50,
"signature": "qflDO7yiPKCFTyqCAaT+2/f9Gi20aV5woHKyf6J/CGJyuSjq1GH7BYgmil8APKojXw==",
"available_methods":[
{
"payment_method":"card",
"is_available": true
},
{
"payment_method":"etoken",
"is_available": false
},
{
"payment_method":"google-pay",
"is_available": true
}]
}