Онлайн-оплата заказов витрины
Покупатель платит напрямую вам — на ваш терминал в Т‑Банке, ЮKassa, Робокассе, Сбере или по вашему статическому QR/ссылке. Меркурий не принимает деньги на свой счёт: программа создаёт ссылку (или отправляет QR) и, где возможно, узнаёт от платёжной системы, что платёж прошёл.
Как это работает
- Покупатель оформляет заказ в боте (WebApp витрины) или на сайте витрины с привязкой к Telegram/MAX.
- Вы собираете заказ (на KDS или в ERP) и при необходимости правите состав — сумма берётся текущая.
- Нажимаете «Оплата» (KDS) или «Отправить ссылку на оплату» (заявка) — покупателю в бот уходит ссылка выбранной платёжной системы (карта и СБП, если доступны у провайдера).
- Покупатель платит. Платёжная система шлёт уведомление на ваш URL в Меркурии — в заявке и на KDS статус становится «Оплачено».
Важно: деньги идут на ваш эквайринг. Ключи вводит каждый магазин в своих настройках витрины. Платформа Меркурий этими платежами не распоряжается.
Что нужно заранее
- Договор и кабинет в одной из систем: Т‑Банк, ЮKassa, Робокасса или Сбер.
- Включённая и опубликованная интернет-витрина.
- Включённая дисконтная программа и подключённый бот Telegram и/или MAX — ссылка на оплату уходит в бот.
- Заказы оформляются через WebApp в боте (чтобы в заявке был chat_id / max_id). Заказ «только с сайта без бота» ссылку в мессенджер не получит.
Выбор платёжной системы
В блоке онлайн-оплаты выберите одну систему. Одновременно активна только она: ключи остальных можно хранить, но ссылка создаётся у выбранного провайдера.
- Т‑Банк — интернет-эквайринг банка (бывший Тинькофф).
- ЮKassa — платежи ЮMoney / ЮKassa (shopId + секретный ключ).
- Робокасса — логин магазина и пароли #1 / #2.
- Сбер — платёжный шлюз Сбера (логин и пароль API, ссылка formUrl).
- Статический QR — ваша постоянная ссылка и картинка QR; покупатель вводит сумму сам; «Оплачено» ставит оператор.
Т‑Банк
- Войдите в личный кабинет Т‑Банка для бизнеса.
- Откройте раздел Интернет-эквайринг.
- Скопируйте Terminal Key и пароль терминала (не пароль входа в банк).
- В Меркурии выберите провайдер «Т‑Банк», вставьте ключи и сохраните.
- Скопируйте URL уведомлений и при необходимости укажите его в кабинете банка как Notification URL.
Режим «СБП — своя страница»
Если на стандартной странице Т‑Банка клиенту показываются карты и другие способы с высокой комиссией, переключите в Меркурии способ оплаты на «СБП — своя страница». Клиент получит ссылку на страницу Меркурий с QR-кодом СБП — без редиректа на форму банка.
- Напишите в Т‑Банк на acq_help@tbank.ru с просьбой подключить «Свою платежную форму» для вашего терминала.
- В личном кабинете эквайринга включите на терминале только СБП (остальные способы отключите).
- В Меркурии: Витрина → Оплаты → Т‑Банк → способ оплаты «СБП — своя страница» → сохраните.
- URL уведомлений (NotificationURL) тот же — webhook не меняется.
ЮKassa
- Войдите в кабинет ЮKassa.
- Скопируйте shopId и секретный ключ (из настроек магазина / API).
- В Меркурии выберите «ЮKassa», вставьте ключи и сохраните.
- В кабинете ЮKassa добавьте HTTP-уведомления на URL из настроек витрины (событие успешного платежа).
Секретный ключ после сохранения в Меркурии не показывается — чтобы сменить, введите новый и сохраните снова.
Если в ЮKassa включена онлайн-касса, Меркурий при создании платежа передаёт чек (позиции заказа и телефон/email покупателя). Телефон обязателен при оформлении на витрине и в боте. Ставка НДС в чеке по умолчанию — без НДС. Для другой ставки согласуйте настройки кассы в кабинете ЮKassa.
Робокасса
- Войдите в кабинет Робокассы.
- Скопируйте идентификатор магазина (MerchantLogin), пароль #1 (для формирования ссылки) и пароль #2 (для ResultURL).
- В Меркурии выберите «Робокасса», вставьте данные и сохраните.
- В настройках технического магазина укажите ResultURL из блока онлайн-оплаты (тот же адрес Меркурий передаёт в платёжной ссылке).
Сбер — как подключить
Нужен договор интернет-эквайринга Сбера и доступ к платёжному шлюзу (ПШ). Это отдельный логин/пароль API, не пароль от СберБизнес Онлайн.
1. Договор и доступ к шлюзу
- Оформите интернет-эквайринг Сбера (через менеджера или заявку в банке).
- После подключения банк выдаёт доступы к ПШ:
- userName — логин API Партнёра;
- password — пароль API Партнёра.
- Уточните у банка: боевой или тестовый контур. В Меркурии контур выбирается в настройках оплаты (поле «Контур API»): боевой —
ecommerce.sberbank.ru, тестовый —ecomtest.sberbank.ru.
2. Настройка в Меркурии
- Откройте Розница → Интернет-витрина.
- Блок «Онлайн-оплата заказов»: включите галочку оплаты.
- В списке «Платёжная система» выберите Сбер.
- Вставьте Логин API (userName) и Пароль API.
- Выберите Контур API — боевой или тестовый (как сказал банк) → Сохранить.
- После сохранения (витрина должна быть включена) появится поле «URL callback Сбера» — скопируйте его.
3. Callback в кабинете шлюза
- В личном кабинете / настройках ПШ укажите URL уведомлений о платеже (callback) — тот же адрес, что показал Меркурий.
- Адрес выглядит так:
…/api/public/index.php?route=public/vitrina/sber/notification/ВАШ_ТОКЕНи должен открываться из интернета по HTTPS. - Меркурий дополнительно передаёт этот URL в каждый платёж как
dynamicCallbackUrl, поэтому даже если в кабинете забыли прописать URL, уведомление всё равно уйдёт на нужный адрес (если шлюз поддерживает динамический callback).
4. Как работает оплата
- На KDS или в заявке нажимаете «Оплата» / «Отправить ссылку на оплату».
- Меркурий вызывает
register.doв шлюзе Сбера и получает formUrl — ссылку на платёжную страницу. - Ссылка уходит покупателю в Telegram/MAX.
- После успешной оплаты шлюз шлёт callback (
operation=deposited). Меркурий сверяет статус черезgetOrderStatusExtendedи ставит заявке «Оплачено»; бонусы начисляются автоматически.
5. Возврат денег
- В Расходы → Заявки покупателей откройте заявку → вкладка «Интернет-заказ».
- Кнопка «Вернуть оплату Сбер» доступна, если оплата шла по ссылке Сбера (есть orderId шлюза) и статус «ожидает» или «оплачено».
- Меркурий сам выбирает операцию:
- ещё холд / незавершённое списание →
reverse.do(отмена); - деньги уже списаны →
refund.do(возврат).
- ещё холд / незавершённое списание →
- После успеха статус заявки становится «отменено / возвращено», признак «Оплачено» снимается.
Важно: пароль API после сохранения в Меркурии не показывается снова — чтобы сменить, введите новый и сохраните. Сертификат НУЦ Минцифры на сервере (для TLS к шлюзу) обычно уже есть на современных системах; если банк пишет про сертификат — уточните у поддержки хостинга.
Статический QR
Вариант без эквайрингового API: у вас уже есть постоянная ссылка или QR (СБП в приложении банка, «платёж по реквизитам» и т.п.). Покупатель сам вводит сумму.
- В Меркурии выберите провайдер «Статический QR».
- Вставьте ссылку на оплату (http/https).
- Загрузите картинку QR-кода (PNG/JPG) — её увидит покупатель в боте.
- Сохраните настройки. URL уведомлений для этого режима не нужен.
При нажатии «Оплата» на KDS покупатель получает в бот:
- ссылку и картинку QR;
- по умолчанию — финальную сумму заказа и инструкцию оплатить её и прислать чек;
- если в настройках включена галочка «Не указывать сумму в сообщении бота» — сумма в тексте не пишется (её можно сказать в чате).
Заказ помечается как «Ожидает оплаты». Оператор после проверки платежа нажимает «Оплачено» — бонусы начислятся автоматически.
Настройка в Меркурии
- Откройте Розница → Интернет-витрина.
- Прокрутите до блока «Онлайн-оплата заказов».
- Включите галочку «Включить оплату заказов витрины».
- Выберите платёжную систему и заполните её поля.
- Нажмите Сохранить.
- После сохранения (и если витрина уже опубликована) появится поле с URL уведомлений — скопируйте его.
URL уведомлений
После оплаты провайдер должен сообщить Меркурию: «платёж прошёл». Адрес зависит от выбранной системы:
- Т‑Банк:
…/public/vitrina/tbank/notification/… - ЮKassa:
…/public/vitrina/yookassa/notification/… - Робокасса:
…/public/vitrina/robokassa/result/… - Сбер:
…/public/vitrina/sber/notification/…
Для статического QR webhook не используется — поле URL уведомлений скрыто.
Он уже формируется программой и показывается в настройках витрины после сохранения. Адрес должен быть доступен из интернета по HTTPS.
Рабочий процесс: заказ → сборка → оплата
- Заказ. Покупатель оформляет заказ в боте.
- Кухня / сборка. Заказ появляется на KDS. Можно править состав — сумма обновится.
- Готовность. Когда заказ готов, покупателю уйдёт «Заказ собран».
- Оплата. Нажмите «Оплата» на карточке KDS (или в ERP — «Отправить ссылку на оплату»). В бот уйдёт ссылка на сумму текущей заявки (для статического QR — ещё QR, сумма и инструкция).
- Факт оплаты. После успешной оплаты бейдж на KDS станет зелёным «Оплачено» (для статического QR — после ручной кнопки «Оплачено»).
Ссылку можно отправить повторно, пока заказ не оплачен (создастся новая ссылка на актуальную сумму).
Что видно на KDS
Если онлайн-оплата включена в витрине, на карточке заказа:
- бейдж «Не оплачено» / «Ожидает оплаты» / «Оплачено»;
- кнопка «Оплата» — пока не оплачено и заказ из бота;
- при статическом QR — ещё кнопка «Оплачено» (после проверки платежа оператором).
Кнопка в заявке покупателя
- Откройте Расходы → Заявки покупателей → нужную заявку.
- Вкладка «Интернет-заказ».
- Кнопка «Отправить ссылку на оплату» — если оплата настроена, заказ с витрины и привязан к боту.
- Кнопка «Вернуть оплату» (Т‑Банк или Сбер) — если платёж создан по ссылке и ещё не отменён: деньги возвращаются через API банка, статус заявки снимается.
Сообщения покупателю в боте
- После оформления: «Заказ успешно получен».
- После готовности: «Заказ собран».
- После отправки ссылки: сумма и ссылка «Оплатить картой или СБП».
Бонусы после оплаты
Если онлайн-оплата подключена, бонусы начисляются автоматически после подтверждения платежа — кнопку «Начислить бонусы» / «Бонусы» не показываем. Без платёжной системы бонусы по-прежнему начисляются вручную кнопкой в ERP или на KDS. Признак «Оплачено» виден на KDS и в журнале заявок: без ПС его ставят на KDS, в карточке заявки правят всегда.
Типичные проблемы
- «Онлайн-оплата не настроена» — нет галочки или не заполнены ключи выбранного провайдера.
- Кнопки «Оплата» нет — заказ без привязки к боту или оплата выключена.
- Оплатили, а статус «Не оплачено» — проверьте URL уведомлений в кабинете провайдера и доступность сервера из интернета.
- Ошибка при создании платежа — неверный ключ/пароль, терминал не активен, сумма меньше минимума. Текст ошибки покажет Меркурий.
- ЮKassa: «Receipt is missing or illegal» — в кабинете включена онлайн-касса; после обновления Меркурий передаёт чек автоматически. Нужен телефон покупателя в заявке (обязателен на витрине и в WebApp бота).
Частые вопросы
- Можно ли принимать оплату на счёт Меркурия? — Нет, используются только ваши ключи выбранного провайдера.
- Можно ли подключить сразу Т‑Банк и ЮKassa? — Ключи можно сохранить у нескольких, но активен один выбранный провайдер.
- Карта и СБП? — Зависят от настроек вашего терминала/магазина у провайдера.
- Чеки 54‑ФЗ? — Для ЮKassa при включённой онлайн-кассе Меркурий передаёт состав чека в платёж; пробитие выполняет касса, подключённая в кабинете ЮKassa. Для остальных провайдеров фискализацию настраивайте у них.