Оплата наличными через терминалы

Attention. Это старая версия API. Переходите на API Яндекс.Кассы.

Сценарий платежа через терминал немного отличается от основного. Пользователь в процессе оплаты получает код, по которому может внести нужную сумму наличными — в любом пункте приема платежей.

Деньги можно внести в любом платежном сервисе, который принимает оплату по коду Яндекс.Денег или Яндекс.Кассы. Это может быть сеть терминалов, салонов связи, сервис электронных платежей, касса банка или интернет-банк.

В параметре paymentType передаются разные коды оплаты:

  • GP — оплата наличными в России, Азербайджане, Армении, Грузии, Казахстане, Кыргызстане, Латвии, Молдове, Таджикистане, Украине;
  • EP — оплата через ЕРИП (система «Расчет») в Беларуси.

Схема взаимодействия

Шаги 1 и 2 проходят так же, как в основном сценарии.

1. Пользователь выбирает способ оплаты (на сайте магазина или на стороне Яндекс.Кассы) и нажимает «Оплатить».

2. Данные, которые вводит пользователь, передаются в платежный сервис Яндекс.Денег.

3-4. Пользователя просят указать телефон и email.

Если магазин передает телефон (cps_phone) и/или email (cps_email) пользователя вместе с другими параметрами платежной формы, пользователь видит в форме подтверждения платежа заполненные поля.

5. Пользователь получает специальный код и инструкцию по оплате. Этот же код, а также сумма платежа приходит в смс на телефон, который он указал на предыдущем шаге.

Note.

Если в параметрах платежной формы не передана сумма заказа (sum), код платежа становится многоразовым. По такому коду пользователь сможет многократно переводить произвольные суммы конкретному магазину. Например, чтобы пополнять баланс своего счета или вносить погашения по займу.

По ссылке Вернуться в магазин на странице выдачи кода пользователь может перейти на страницу, адрес который передается в параметре shopDefaultUrl в платежной форме. Если этот параметр не передается, в ссылку подставляется адрес главной страницы магазина (см. Параметры подключения магазина). Страница ошибки и страница успешного платежа в данном случае не используются. Можно задать постоянный shopDefaultUr l в настройках магазина (по запросу).

6. Пользователь вносит деньги в любом терминале или банкомате, где можно пополнять кошельки в Яндекс.Деньгах. При этом он указывает код, который получил на шаге 5, в поле Номер счета.

Note.

Eсли терминал может сообщить Яндекс.Деньгам о внесении денег в режиме реального времени, на этом шаге будет выполнен дополнительный запрос Проверка заказа (checkOrder). Если магазин откажется проводить платеж, терминал не примет деньги у пользователя.

7-11. Проверка заказа (вызов checkOrder) может проводиться до выдачи пользователю кода платежа или в процессе платежа. Во втором случае Яндекс.Деньги получают от терминальной сети информацию о том, что пользователь внес деньги, и выполняют последовательные запросы Проверка заказа (checkOrder) и Уведомление о переводе (paymentAviso).

Note.
  • Если магазин отказывается принимать перевод, Яндекс.Деньги самостоятельно возвращают деньги пользователю.
  • Если пользователь вносит в терминал больше, чем нужно, сдача автоматически перечисляется на счет мобильного телефона, который пользователь указал в процессе платежа.
  • Если пользователь вносит в терминал меньше, чем нужно, ему приходит смс о том, сколько не хватает. Чтобы платеж прошел, пользователю нужно внести недостающую сумму.
  • Если пользователь вносит деньги через терминал на территории России, в запросах и реестрах переводов Яндекс.Денег будет указан один способ оплаты (paymentType=GP). Если за пределами РФ, способ оплаты будет другой (paymentType=OP).

11. После того, как сервис Яндекс.Денег получает ответ магазина на запрос Уведомление о переводе, на электронную почту пользователя приходит письмо с данными платежа.

Смотрите также