EMV QR MPM (merchant-presented)
Международный стандарт EMVCo, при котором QR-код для оплаты генерирует мерчант — магазин или ресторан, — а покупатель сканирует его банковским приложением.
Определение EMV QR MPM
EMV QR MPM — это аббревиатура из двух частей. EMV (Europay, Mastercard, Visa) — международный стандарт, который разрабатывает и поддерживает консорциум EMVCo. MPM расшифровывается как Merchant-Presented Mode: QR-код формирует мерчант (продавец), а покупатель подносит смартфон, чтобы его отсканировать.
Это противоположность CPM (Consumer-Presented Mode) — формата, при котором QR показывает покупатель, а терминал продавца считывает. MPM проще в развёртывании: достаточно распечатать наклейку или отобразить код на экране кассы. CPM требует, чтобы у продавца был сканер, а у покупателя — платёжное приложение с поддержкой CPM.
Стандарт описан в спецификации EMVCo QR Code Specification for Payment Systems — Merchant-Presented Mode (версия 1.1, 2020). Именно на него опирается СБП при формировании QR-кодов QR-эквайринга в России: структура data объектов C2B-QR в СБП совместима с EMV MPM, хотя и расширена НСПК-специфичными полями.
Статический vs динамический MPM-код
Внутри MPM-модели существуют два сценария, и разница принципиальная.
Статический MPM — один QR на длительное время. Содержит реквизиты продавца и, опционально, фиксированную сумму. Покупатель сам вводит или подтверждает сумму в банковском приложении. Подходит для постоянных услуг с неменяющейся ценой (парковка, благотворительный сбор, постоянный тариф), а также для малого бизнеса с небольшим потоком: наклейка на кассе — и готово. Срок действия у статического кода не ограничен, его не нужно генерировать повторно.
Динамический MPM — уникальный код под каждую транзакцию. Содержит сумму, идентификатор заказа и, при необходимости, срок действия. Касса генерирует код автоматически — на экране эквайринг-терминала, в интерфейсе мобильного приложения или на электронном чеке. Покупателю не нужно ничего вводить, риск ошибки минимален, а сверка с фискальным документом автоматическая. Динамические QR-коды в СБП C2B-сценарии — это именно динамический MPM.
Разница в нагрузке на инфраструктуру: статический не требует бэкенда, динамический — требует сервиса генерации с привязкой к платёжной системе.
Где применяется EMV QR MPM
Стандарт принят де-факто для QR-платежей в розничной торговле и сфере услуг по всему миру:
- Азиатско-Тихоокеанский регион: Alipay, WeChat Pay, PROMPT Pay (Таиланд), PayNow (Сингапур) — все совместимы с EMV MPM или построены на базе схожей структуры данных.
- Индия: UPI QR (NPCI) формально независим, но структурно близок.
- Россия: СБП C2B — практически EMV MPM с расширением. Генератор QR на странице динамических QR также формирует MPM-совместимые коды для платёжных сценариев.
- Европа: схемы EPI и региональные инициативы используют EMV MPM как базу.
С технической точки зрения MPM-код содержит TLV-объекты (Type-Length-Value): идентификатор формата, версия спецификации, реквизиты получателя, сумма, валюта, CRC-16 контрольная сумма в последнем объекте. Лимит данных — стандартный QR Version 10–25 в зависимости от заполненности.
Частые вопросы
Чем EMV MPM отличается от обычного платёжного QR?
«Обычный платёжный QR» — это разговорное название без строгой структуры. EMV MPM задаёт конкретный формат данных: набор TLV-объектов, обязательные и опциональные поля, правило CRC-16 в конце. Это позволяет банковским приложениям разных стран разбирать один и тот же код без предварительной договорённости о формате. Произвольный QR со ссылкой на оплату — не MPM.
Все ли QR для СБП соответствуют EMV MPM?
QR-коды для C2B-платежей в СБП построены на основе EMV MPM, но содержат дополнительные поля под НСПК-инфраструктуру (идентификатор банка, тип операции, статус). Базовая совместимость с EMV MPM соблюдается: структура TLV, CRC-16, порядок обязательных объектов. Иностранное приложение с поддержкой EMV MPM теоретически разберёт структуру, но не проведёт платёж — для этого нужно подключение к НСПК.
Что такое CRC-16 в EMV QR MPM?
Контрольная сумма CRC-16/CCITT-FALSE вычисляется по всем данным кода, включая идентификатор самого CRC-объекта. Это защита от случайного повреждения при передаче или распечатке. Банковское приложение при сканировании верифицирует CRC: если не совпадает — код отклоняется. Это не криптографическая подпись, а только проверка целостности.
Можно ли использовать статический MPM для нескольких касс?
Да, один статический QR-код привязан к реквизитам юрлица или ИП, а не к конкретной кассе. Его можно разместить на нескольких точках. Ограничение — покупатель вводит сумму вручную, что замедляет расчёты и затрудняет автоматическую сверку. Для высокого потока клиентов и точной идентификации операций лучше подключить динамический MPM через кассовый софт.
Есть ли ограничение на объём данных в MPM-коде?
Спецификация EMVCo допускает до 99 объектов (TLV-контейнеров) с суммарным лимитом около 4000 символов. На практике типичный C2B-QR занимает 300–600 символов. QR-символ Version 10–15 при коррекции ошибок M справляется без проблем. При добавлении расширенных полей (локальный язык, дополнительные реквизиты) объём растёт — но до лимита далеко.