Метод request-external-payment

Описание

Создание платежа и проверка его параметров.

Входные параметры для платежа в магазин

Параметры для платежа в магазин уточняются контрагентом при подключении через Яндекс.Кассу. Дополнительная информация о параметрах платежа описана в протоколе приема платежей для магазинов и в сценариях интеграции.

Параметр Тип Описание
pattern_id string Идентификатор шаблона платежа. Соответствует номеру витрины scid магазина.
instance_id string Идентификатор экземпляра приложения.
* string Параметры шаблона платежа, требуемые магазином.

Параметры запроса для пополнения кошелька пользователя Яндекс.Денег:

Параметр Тип Описание
pattern_id string Фиксированное значение «p2p».
instance_id string Идентификатор экземпляра приложения.
to string Номер счета для пополнения.
amount amount Сумма к списанию с банковской карты (на счет поступит эта сумма минус комиссия).
amount_due amount Сумма к зачислению на ваш счет (с карты будет списана эта сумма плюс комиссия).
message string Комментарий к зачислению, отображается получателю.
Примечание. В параметрах можно указать только одно поле из двух: amount или amount_due.
Примечание.

После отправки request-payment можно показывать пользователю комиссию за платеж. В ответе на запрос придет contract_amount, для расчета комиссии подставьте его в формулу:

Комиссия = contract_amount - amount_due

Комиссия округляется математически до копеек (2 знака после запятой). Комиссия меньше копейки всегда округляется в большую сторону — до 1 копейки.

Возвращает

Поля ответа:

Параметр Тип Описание
status string Код результата выполнения операции (см. таблицу).
error string Код ошибки (пояснение к полю status). Присутствует только при ошибках (см. таблицу).
request_id string Идентификатор контекста платежа. Присутствует только при успешном выполнении.
contract_amount amount Сумма к списанию с банковской карты в рублях. Присутствует только при успешном выполнении метода.
title string Название платежа.

Код результата выполнения операции:

Код Описание
success Успешное выполнение.
refused Отказ в проведении платежа. Причина отказа возвращается в поле error. Это конечное состояние платежа.

В случае ошибки возвращается ее код:

Код Описание
illegal_param_to Недопустимое значение параметра to.
illegal_param_amount Недопустимое значение параметра amount.
illegal_param_amount_due Недопустимое значение параметра amount_due.
illegal_param_message Недопустимое значение параметра message.
payee_not_found Получатель не найден, указанный счет не существует.
payment_refused Магазин отказал в приеме платежа (например, пользователь пытался заплатить за товар, которого нет в магазине).
illegal_params или любое другое значение Обязательные параметры платежа отсутствуют, имеют недопустимые значения или логические противоречия.

Примеры

Пример запроса для проведения платежа:

POST /api/request-external-payment HTTP/1.1
Host: money.yandex.ru
Content-Type: application/x-www-form-urlencoded
Content-Length: 130

pattern_id=99999&instance_id=1234567890ABCDEF1234567890ABCDEF1234
567890ABCDEF1234567890ABCDEF1&amount=100.00&merchantArticleId=123

Пример запроса для пополнения счета:

POST /api/request-external-payment HTTP/1.1
Host: money.yandex.ru
Content-Type: application/x-www-form-urlencoded
Content-Length: 125

pattern_id=p2p&instance_id=1234567890ABCDEF1234567890ABCDEF123456
7890ABCDEF1234567890ABCDEF1&to=41001101140&amount_due=100.00

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

{
    "status": "success",
    "request_id": "3931303833373438395f34343431646631386461623661
3236363063386361663834336137386537643935383639383062635f3330363
333323938",
    "contract_amount": 100.00,
    "title": "Оплата услуг NNNN"
}

Пример документа ответа при ошибке:

{"status": "refused", "error": "illegal_params"}