Оплата наличными через терминалы
Это старая версия API. Переходите на API ЮKassa.
Сценарий платежа через терминал немного отличается от основного. Пользователь в процессе оплаты получает код, по которому может внести нужную сумму наличными — в любом пункте приема платежей.
Деньги можно внести в любом платежном сервисе, который принимает оплату по коду ЮMoney или ЮKassa. Это может быть сеть терминалов, салонов связи, сервис электронных платежей, касса банка или интернет-банк.
В параметре
paymentType
передаются разные коды оплаты:
  • GP
     — оплата наличными в России, Азербайджане, Армении, Грузии, Казахстане, Кыргызстане, Латвии, Молдове, Таджикистане, Украине;
  • EP
     — оплата через ЕРИП (система «Расчет») в Беларуси.
Схема взаимодействия
Процесс оплаты
Шаги 1 и 2 проходят так же, как в основном сценарии.
Шаг 1. Пользователь выбирает способ оплаты (на сайте магазина или на стороне ЮKassa) и нажимает Оплатить.
Шаг 2. Данные, которые вводит пользователь, передаются в платежный сервис ЮKassa.
Шаги 3-4. Пользователя просят указать телефон и email.
Если магазин передает телефон (
cps_phone
) и/или email (
cps_email
) пользователя вместе с другими параметрами платежной формы, пользователь видит в форме подтверждения платежа заполненные поля.
Шаг 5. Пользователь получает специальный код и инструкцию по оплате. Этот же код, а также сумма платежа приходит в смс на телефон, который он указал на предыдущем шаге.
По ссылке Вернуться в магазин на странице выдачи кода пользователь может перейти на страницу, адрес который передается в параметре
shopDefaultUrl
в платежной форме. Если этот параметр не передается, в ссылку подставляется адрес главной страницы магазина (см. Параметры подключения магазина). Страница ошибки и страница успешного платежа в данном случае не используются. Можно задать постоянный
shopDefaultUrl
в настройках магазина (по запросу).
Шаг 6. Пользователь вносит деньги в любом терминале или банкомате, где можно пополнять кошельки ЮMoney. При этом он указывает код, который получил на шаге 5, в поле Номер счета.
Если терминал может сообщить ЮKassa о внесении денег в режиме реального времени, на этом шаге будет выполнен дополнительный запрос Проверка заказа (
checkOrder
). Если магазин откажется проводить платеж, терминал не примет деньги у пользователя.
Шаги 7-11. Проверка заказа (вызов
checkOrder
) может проводиться до выдачи пользователю кода платежа или в процессе платежа. Во втором случае ЮKassa получает от терминальной сети информацию о том, что пользователь внес деньги, и выполняет последовательные запросы Проверка заказа (
checkOrder
) и Уведомление о переводе (
paymentAviso
).
Особенности:
  • Если магазин отказывается принимать перевод, ЮKassa самостоятельно возвращает деньги пользователю.
  • Если пользователь вносит в терминал больше, чем нужно, сдача автоматически перечисляется на счет мобильного телефона, который пользователь указал в процессе платежа.
  • Если пользователь вносит в терминал меньше, чем нужно, ему приходит смс о том, сколько не хватает. Чтобы платеж прошел, пользователю нужно внести недостающую сумму.
  • Если пользователь вносит деньги через терминал на территории России, в запросах и реестрах переводов ЮKassa будет указан один способ оплаты (
    paymentType=GP
    ). Если за пределами РФ, способ оплаты будет другой (
    paymentType=OP
    ).
Шаг 11. После того как сервис ЮKassa получает ответ магазина на запрос Уведомление о переводе, на электронную почту пользователя приходит письмо с данными платежа.
Что почитать еще
Платежная формаОбщее описание взаимодействияОбработка HTTP-уведомлений