Сценарий платежа через терминал немного отличается от основного. Пользователь в процессе оплаты получает код, по которому может внести нужную сумму наличными — в любом пункте приема платежей.
Деньги можно внести в любом платежном сервисе, который принимает оплату по коду ЮMoney или ЮKassa. Это может быть сеть терминалов, салонов связи, сервис электронных платежей, касса банка или интернет-банк.
В параметре
paymentType
передаются разные коды оплаты:GP
— оплата наличными в России, Азербайджане, Армении, Грузии, Казахстане, Кыргызстане, Латвии, Молдове, Таджикистане, Украине;EP
— оплата через ЕРИП (система «Расчет») в Беларуси.
Процесс оплаты
Шаг 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-уведомлений