Яндекс.Пэй

Яндекс.Пэй — платёжный сервис Яндекса для приёма онлайн-оплаты. Нямбот интегрирован с Яндекс.Пэй: покупатели оплачивают заказы прямо в мини-приложении, а возврат денег гостю ты делаешь кнопкой в СРМ (как это устроено).

Яндекс.Пэй — альтернатива ЮКассе. На одной торговой точке используется только один онлайн-эквайринг: либо ЮКасса, либо Яндекс.Пэй. Для гостя в мини-приложении разницы нет — он просто видит кнопку «Онлайн».


Что потребуется#

  • ИП или ООО (организация должна существовать в базе ФНС не менее 2 дней)
  • Расчётный счёт в банке (для выплат)
  • Одобренная заявка на сервис «Яндекс Пэй и Сплит» (формат «Онлайн»)
  • Решение, кто пробивает чек гостю (54-ФЗ): онлайн-касса, подключённая в консоли Яндекс.Пэй, или твоя собственная касса — см. Шаг 5

Шаг 1: Регистрация в Яндекс.Пэй#

  1. Войди или создай Яндекс ID на passport.yandex.ru (лучше на рабочую почту)
  2. Открой консоль console.pay.yandex.ru — форма регистрации откроется автоматически
  3. Нажми «Добавить», введи ИНН организации и выбери её из списка
  4. Проверь данные организации, подтверди телефон и почту
  5. В разделе Сервисы выбери «Яндекс Пэй и Сплит», формат «Онлайн»; укажи название, сайт, вид деятельности, БИК и реквизиты счёта, контактное лицо
  6. Отправь заявку и дождись одобрения — после этого появится доступ к API и тестированию

Шаг 2: Получение Merchant ID и Merchant API key#

Нямботу для подключения нужны два значения из консоли Яндекс.Пэй:

  • Merchant ID — идентификатор магазина
  • Merchant API key — ключ для авторизации запросов

Найти их можно в консоли Яндекс.Пэй в разделе настроек магазина.

Тестовый режим (песочница)#

Чтобы проверить оплату без реальных списаний, включи в консоли режим «Тестовые данные». В тестовом режиме значение Merchant API key совпадает с Merchant ID, а оплата проходит в песочнице Яндекса без реальной карты.

Боевой ключ включается отдельно после успешной проверки в тесте — это другое значение Merchant API key.


Шаг 3: Настройка в СРМ#

  1. Открой раздел Интеграции → таб «Оплата»
  2. Нажми на карточку «Яндекс.Пэй» → откроется форма
  3. Заполни:
    • Merchant ID — идентификатор магазина из консоли
    • Merchant API key — ключ из консоли (в тесте = Merchant ID)
    • Переключатель Боевой / Тест — поставь Тест для проверки в песочнице, Боевой для реальных платежей
    • Чеки через Яндекс.Пэй — включи, если в консоли Яндекс.Пэй подключена онлайн-касса (Шаг 5)
    • Ставка НДС — появляется, когда чеки включены, и тогда обязательна
    • Торговые точки — выбери одну или несколько ТТ (на каждую создаётся своя запись)
  4. Нажми «Добавить»

После сохранения в колонке «OAuth» будет «Подключено», а режим показан отдельным тегом — «Тест» или «Боевой». OAuth-подтверждение, как у ЮКассы, для Яндекс.Пэй не требуется — авторизация идёт по Merchant API key.

Одна ТТ — один эквайринг. Если на торговой точке уже подключена ЮКасса, Яндекс.Пэй на неё добавить нельзя (точка будет недоступна в списке). Сначала отвяжи прежний эквайринг.

⚠️ Вводи ключ аккуратно, без лишних пробелов и символов. Если ключ сохранён неверно, оплата вернёт ошибку «Не удалось создать платеж».


Шаг 4: Адрес уведомлений (Callback URL)#

Чтобы заказ подтверждался автоматически (даже если покупатель закрыл мини-приложение), пропиши адрес уведомлений в консоли Яндекс.Пэй.

Куда вводить: консоль Яндекс.Пэй → настройки магазина → Callback URL

Адрес (вводить ровно так):

https://api.nyambot.ru/api/webhooks/yandexpay-order

⚠️ Важно: указывай только базовый адрес выше. Яндекс.Пэй сам дописывает в конце /v1/webhook и шлёт уведомления на https://api.nyambot.ru/api/webhooks/yandexpay-order/v1/webhook. Не добавляй /v1/webhook вручную — иначе адрес задвоится и уведомления перестанут приходить.

Подробнее обо всех адресах → Адреса и URL.


Шаг 5: Чеки (54-ФЗ)#

По закону при онлайн-оплате гость должен получить кассовый чек. У ЮKassa облачная касса встроена, а Яндекс.Пэй сам чеки не пробивает. Выбери один из двух путей: онлайн-касса в консоли Яндекс.Пэй (5.1) или твоя собственная касса (5.2).

Состав заказа Яндекс.Пэй получает всегда. В корзину платежа Нямбот передаёт те же строки, что и в чек ЮKassa: блюда, доставку и приборы по цене, которую видел гость. Скидки и баллы разложены по блюдам, подарки по 0 ₽ в корзину не попадают. Итог корзины равен сумме оплаты до копейки. Если суммы не сошлись, Нямбот платёж не создаёт, и гость видит «Не удалось создать платёж. Попробуй ещё раз».

5.1. Чек пробивает онлайн-касса Яндекс.Пэй#

  1. Подключи онлайн-кассу (например, Атол Онлайн или CloudKassir) в консоли Яндекс.Пэй.
  2. В СРМ открой Интеграции → «Оплата» → карандаш в строке Яндекс.Пэй и включи «Чеки через Яндекс.Пэй». Подсказка под переключателем: «Включи, если в консоли Яндекс.Пэй подключена онлайн-касса: Нямбот передаст состав заказа и ставку НДС, и Яндекс.Пэй пробьёт чек гостю. Выключено — чек пробивает твоя касса».
  3. Выбери «Ставку НДС» — ту же, что стоит в онлайн-кассе в консоли Яндекс.Пэй: «Без НДС», «НДС 5%», «НДС 7%», «НДС 10%» или «НДС 22%». Пока ставка не выбрана, запись с включёнными чеками не сохранится. Кому какая ставка обычно подходит — таблица в шаге 5.2 ЮKassa. Не уверен — спроси бухгалтера.

С включёнными чеками Нямбот добавляет к каждой строке корзины ставку НДС и признак расчёта, а почту гостя передаёт как адрес для чека. Онлайн-касса Яндекс.Пэй пробивает чек и отправляет его гостю.

Узнать у Яндекс.Пэй, подключена ли онлайн-касса, Нямбот не может — такого запроса у Яндекс.Пэй нет, поэтому переключатель ставишь ты. Включишь чеки без подключённой кассы — чек никто не пробьёт.

Что видит гость. Пока чеки включены и гость выбрал «Онлайн», на оформлении есть поле «Почта для чека» — так же, как у ЮKassa. Без почты заказ не оформить: «Укажи почту — без неё не получится отправить чек». При оплате наличными или картой при получении почту не спрашиваем.

5.2. Чек пробивает твоя касса#

Если чеки по онлайн-оплате пробивает твоя собственная касса, «Чеки через Яндекс.Пэй» оставь выключенным. Корзина Яндекс.Пэй всё равно уйдёт с составом заказа, но без ставки НДС, и почту для чека гость не указывает.

Важно: без чека онлайн-оплата нарушает 54-ФЗ. Реши, кто пробивает чек, до приёма реальных платежей.

5.3. Касса iiko: не пробей чек второй раз#

Если чек пробивает Яндекс.Пэй, а у тебя iiko, проверь тип оплаты «Онлайн» в iikoOffice (Розничные продажи → Типы оплат → «Онлайн»): галка «Является фискальным» должна быть снята. Иначе касса при закрытии заказа пробьёт второй чек на те же деньги. Подробнее — Частые проблемы iiko.


Тестирование оплаты#

В тестовом режиме (песочница):

  • Оформи заказ в мини-приложении и выбери «Онлайн» — откроется тестовая страница оплаты Яндекс.Пэй
  • Любая сумма по умолчанию завершается успешной оплатой; заказ автоматически переходит в статус оплачен
  • Проверь возврат: отмени заказ, затем открой его карточку в СРМ и нажми «Вернуть деньги гостю». Убедись, что в консоли Яндекс.Пэй в разделе «Возвраты» появилась запись

После успешной проверки в тесте переключи запись в СРМ в режим Боевой, введи боевой Merchant API key и проведи контрольную оплату на минимальную сумму с последующим возвратом.


Возвраты#

  • Автоматических возвратов нет. Отмена заказа — на кассе или в «Команде» — деньги не двигает: она заводит задачу на возврат, а деньги возвращает владелец кнопкой в СРМ.
  • Через Нямбот заказ возвращается только целиком. Часть суммы возвращается в личном кабинете Яндекс.Пэй → Возвраты.
  • Чек возврата онлайн-касса Яндекс.Пэй строит сама — по тем же строкам, что были в корзине платежа.
  • Если заказ оплачен онлайн частично баллами лояльности, на карту возвращается только онлайн-часть; баллы возвращает касса iiko.
  • Возврат у Яндекс.Пэй подтверждается уведомлением (Callback URL), поэтому Шаг 4 обязателен и для возвратов.

Часто встречающиеся проблемы#

ПроблемаРешение
«Не удалось создать платеж»Проверь, что Merchant API key введён без лишних символов и соответствует режиму (Тест/Бой)
Заказ оплачен, но не подтверждается самПроверь Callback URL: только базовый адрес, без /v1/webhook вручную (Шаг 4)
Карта не списывается в тестеЭто нормально — в тестовом режиме оплата идёт в песочнице, без реального списания
Покупатель не получил чекПроверь, что онлайн-касса подключена в консоли Яндекс.Пэй, а в СРМ включены «Чеки через Яндекс.Пэй» и выбрана ставка НДС (Шаг 5). Если чеки пробивает твоя касса — чек выдаёт она

Связь с другими разделами#