Как происходит платёж после сканирования QR‑кода

Когда пользователь сканирует QR‑код с помощью мобильного приложения банка или платёжного сервиса, кажется, что оплата происходит мгновенно. На самом деле за этим простым действием скрывается цепочка взаимодействия между несколькими участниками: продавцом, платёжным шлюзом, adquirer‑банком, эмитентом карты и платёжной системой. Ниже описано, что именно происходит после того, как код считался, и на какие моменты стоит обратить внимание, чтобы платёж прошёл без проблем.

Что передаёт QR‑код

QR‑код обычно содержит строку в формате, определённом платёжным стандартом (например, EMV QR, SBP QR или proprietary формат конкретного сервиса). В ней могут быть:

  • идентификатор продавца (merchant ID);
  • сумма платежа (фиксированная или переменная);
  • валюта;
  • дополнительные параметры — номер заказа, ссылка на чек, метаданные для возврата;
  • криптографическая подпись или хеш, позволяющая убедиться в подлинности кода.

При сканировании приложение распознаёт эту строку и формирует запрос на инициацию платежа.

Основные этапы обработки платежа

После того как данные из QR‑кода получены, процесс делится на несколько последовательных шагов.

1. Формирование авторизационного запроса

Приложение создаёт сообщение авторизации, включающее:

  • реквизиты карты или токен, привязанный к аккаунту пользователя (если оплата происходит с привязанной карты);
  • сумму и валюту, полученные из кода;
  • идентификатор продавца и терминала;
  • случайный номер (nonce) для защиты от повторных атак;
  • данные о устройстве и сессии (IP, тип приложения) — для антифрод‑анализа.

Этот запрос отправляется защищённым каналом (TLS) в платёжный шлюз или напрямую в adquirer‑банк продавца.

2. Передача в acquirer‑банк и платёжную систему

Acquirer‑банк получает запрос и forwards его в платёжную систему (Visa, Mastercard, Мир, СБП и т.д.). Система выполняет:

  • проверку формата и целостности данных;
  • маршрутизацию запроса к эмитент‑банку, выпустившему карту или обслуживающему счёт пользователя;
  • preliminary проверку лимитов и статуса счёта.

3. Авторизация у эмитента

Эмитент‑банк проверяет:

  • доступность средств (достаточный баланс или лимит по кредиту);
  • состояние счёта (не заблокирован, не отмечен как мошеннический);
  • соответствие транзакции типу операций, разрешённых для данной карты (например, запрет на онлайн‑оплату, если включён соответствующий лимит);
  • необходимость дополнительной аутентификации (3D Secure, биометрия, push‑уведомление).

Если всё в порядке и дополнительная аутентификация пройдена, эмитент возвращает код авторизации (approval) обратно по цепочке.

4. Завершение и формирование чека

Получив одобрение, acquirer‑банк подтверждает продавцу, что платёж принят. В этот момент:

  • формируется электронный чек или копия транзакции, которую можно сохранить в приложении;
  • резервируются средства на счёте покупателя (в случае дебетовой карты — списание, в случае кредитной — авторизация, которая позже превращается в фактическое списание при settlement);
  • запускается процесс settlement — взаимный расчёт между банками, обычно завершающийся в течение одного рабочего дня.

Безопасность и аутентификация

Чтобы защитить транзакцию от перехвата и подделки, применяются несколько уровней защиты:

  • Транспортная безопасность — все сообщения передаются по TLS 1.2/1.3;
  • Криптографическая подпись QR‑кода — позволяет терминалу убедиться, что код не был изменён после генерации;
  • Токенизация — вместо реального номера карты в запросе используется одноразовый токен, привязанный к устройству;
  • Динамические данные (nonce, timestamp) — предотвращают повторные атаки;
  • Strong Customer Authentication (SCA) — при необходимости требуется подтверждение через биометрию, пароль или push‑уведомление (3D Secure 2.0).

Эти меры делают перехват QR‑кода бесполезным без доступа к устройству пользователя и его учётным данным.

Что может пойти не так

Несмотря на высокий уровень надёжности, иногда платёж не проходит. Наиболее типичные причины:

  • Недостаточно средств или превышение лимита по карте;
  • Блокировка карты эмитентом (подозрение на мошенничество, просроченная карта);
  • Ошибка в данных QR‑кода (неверная сумма, отсутствие подписи);
  • Проблемы с соединением — потеря интернета у пользователя или у продавца на этапе передачи запроса;
  • Отказ в дополнительной аутентификации (пользователь не подтвердил push‑уведомление или ввёл неправильный код);
  • Технические сбои в платёжном шлюзе или acquirer‑банке (таймауты, внутренние ошибки).

Как проверить, что платёж прошёл успешно

После сканирования пользователь должен увидеть подтверждение в приложении:

  • Статус «Оплачено» или «Успешно» с указанием суммы, даты и времени;
  • Номер транзакции (approval code) — его можно сверить с чеком продавца;
  • Push‑уведомление или SMS от банка о списании/авторизации;
  • Электронный чек, доступный для скачивания или отправки на email.

Если подтверждение не пришло в течение нескольких секунд, стоит:

  1. Проверить подключение к интернету;
  2. Повторить сканирование (некоторые приложения позволяют выполнить повторную попытку без двойного списания благодаря идемпотентным запросам);
  3. Связаться с продавцом и уточнить, получил ли он запрос на оплату;
  4. При необходимости обратиться в службу поддержки своего банка с указанием времени попытки и суммы.

Практические рекомендации

Для снижения риска ошибок и повышения уверенности при оплате QR‑кодом следуйте этим правилам:

  • Всегда используйте официальное приложение своего банка или проверенный платёжный сервис (например, приложение СБП, Mir Pay, Google Pay, Apple Pay). Не сканируйте коды через неизвестные сторонние сканеры.
  • Перед оплатой проверьте, что сумма, отображаемая в приложении, соответствует сумме на чеке или экране терминала.
  • Если приложение запрашивает дополнительную аутентификацию, выполняйте её в том же устройстве, где установлено приложение — не переходите по ссылкам из SMS или писем.
  • Сохраняйте электронные чеки до момента подтверждения списания на счёте (обычно до конца рабочего дня).
  • При повторных неудачных попытках не вводите данные карты вручную на сайте продавца — лучше обратитесь в службу поддержки.

FAQ

Можно ли оплатить QR‑кодом без привязанной карты?

Да, если в приложении привязан банковский счёт (например, через СБП) или электронный кошелёк, средства списываются с этого счёта.

Нужен ли интернет у продавца для приёма QR‑платежа?

Продавец должен иметь терминал или решение, способное принять запрос от платёжного шлюза и отправить ответ обратно. Обычно это требует подключения к интернету, но некоторые решения используют offline‑режим с последующей синхронизацией.

Что делать, если деньги списались, а продавец не получил уведомление?

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

Безопасно ли сканировать QR‑коды с экрана чужого смартфона?

Сканирование само по себе безопасно — код лишь передаёт данные. Риск возникает, если код был подменён злоумышленником (например, наклеен поверх оригинального). Поэтому всегда проверяйте, что код расположен на официальном месте (чеке, стойке, экране кассира) и не выглядит подозрительно изменённым.

Platejigid.ru