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

«Но ведь можно просто скопировать контакт? Или показать QR из банка. Зачем вообще что-то ещё?»

Проблема в том, что в инженерных рассуждениях мы часто видим идеальные сценарии, а в реальной жизни всё намного менее стерильно.

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

Здесь нет рекламы и нет призывов пользоваться каким-то конкретным инструментом.
Это исследование проблемы, которая всплывает каждый день у людей вне IT-пузыря.


🔍 1. Ошибки при вводе номера: статистика, которую обычно не замечают

Перевод по номеру — банальная операция. Но она остаётся удивительно хрупкой:

✔ Почему так?

  1. В номерах телефонов нет контрольной суммы.
    Ошибиться в одной цифре — значит отправить деньги незнакомому человеку.

  2. Ввод идёт вручную или через копирование из чата, и тут начинаются нюансы:

    • номер в сообщении без форматирования (+71234567890)

    • номер, разбитый пробелами

    • номер с префиксами/скобками

    • номер в скриншоте (!)

  3. Пожилые пользователи, которые:

    • переспрашивают номер несколько раз,

    • теряют его в переписке,

    • случайно отправляют перевод не тому контакту.

  4. Сценарий групповых чатов:
    в беседе несколько людей бросают свои номера, кто-то путает сообщения, кто-то отправляет «старый номер».


🔢 2. Почему «просто vCard/контакт» — не всегда решение

В комментариях под первой статьёй логично звучала мысль:

«Зачем какие-то визитки, если можно просто отправить контакт?»

В идеальных условиях — да.
Но вот что происходит в реальности:

1) Контакт → не номер

Контакт — это не банковский реквизит.
У пользователя может быть:

  • два номера (личный / рабочий),

  • разные банки привязаны к разным номерам,

  • старая SIM картa, которая ещё в списке контактов.

2) Контакт не показывает, к какому банку привязан номер

А у отправителя часто принципиально важно платить в свой банк — иначе улетает комиссия.

3) Контакт ≠ гарантия актуальности

Люди меняют номера. Чаще, чем кажется.
Контакт остаётся старым → перевод улетает не туда.

4) Контакт невозможно разместить в офлайне

На стойке с кофе, на шкафчике в спортзале, на визитке курьера нельзя разместить «контакт» — нужен QR.


🔳 3. Почему QR от банков тоже работает не всегда

Некоторые комментаторы писали:

«Открой Сбер → Платежи → Получить → QR — и всё»

Да, но на практике это ломается в нескольких местах:

1) QR из банка — статичен и привязан к конкретному банку

Если у получателя Сбер, а у отправителя ВТБ или Россельхоз —
ссылка часто просто не откроется.

2) Технология QR C2C от НСПК пока в неоднородном состоянии

Несмотря на анонсы, между банками всё ещё нет единой реализации.
Где-то QR поддерживается частично, где-то реализован не полностью, где-то не работает deeplink.

3) В офлайне такой QR не всегда удобно использовать

Человек может открыть камеру → распознать QR → попасть в банкомат → получить ошибку → вернуться → спросить номер вручную.

4) QR-код банков не универсален

Он работает только в том приложении, для которого создан.


🔗 4. Разнородность deeplink’ов: техническая причина хаоса

В банковском UX одна проблема остаётся системной:

У каждого банка — свой deeplink

  • у Сбера можно передать номер в ссылке,

  • у Тинькоффа — через копирование,

  • у Альфы deeplink не принимает телефон напрямую,

  • у Газпрома deeplink открывает приложение, но номер не подставляет.

Нет стандарта.

И это ключевая причина, почему не существует одной универсальной схемы «нажал → открылся нужный банк → перевёл».

Технически перевод по номеру — прост.
Но переход в конкретный банк сделан так по-разному, что «универсального» UX нет.


👥 5. Групповые и бытовые сценарии — самые тяжёлые

Если спросить людей, где чаще всего происходят ошибки, вы услышите одно и то же:

✔ общие сборы (дни рождения, офис, подарки)
✔ поездки (кто оплатил бензин, кто потом переводит)
✔ ремонтники / частные услуги
✔ репетиторы / няни
✔ старшие родственники
✔ пересылаемые номера из старых чатов

Во всех этих сценариях есть общая черта:

отправитель почти никогда не знает, какой банк стоит у получателя.

И здесь снова начинается игра в угадывания, переписки, дублирование номера.


🧩 6. Почему простые советы вроде “копируйте номер вручную” — не решают проблему

Звучит просто:
Вставил → перевёл → готово.
Но давайте перечислим, что может пойти не так:

  • нет интернета в момент копирования (часто в транспорте);

  • копирует старый номер из другого чата;

  • вставляет в поле “комментарий” вместо поля “номер”;

  • случайно очищает буфер (банально копируя другую фразу);

  • на iOS иногда не работает auto-copy из мессенджеров;

  • у банка нет deeplink из браузера (в некоторых приложениях до сих пор так).

Перевод по номеру выглядит простым, но UX-путь у него длиннее и более ломкий, чем кажется.


🛡 7. Безопасность: главный скепсис и главный источник ошибок

На Хабре этот вопрос поднимают чаще всего:

«Я не доверяю никакому стороннему сервису. Бот может менять номер, собирать статистику, быть взломанным.»

И это оправданная позиция.

Но важно подчеркнуть фундаментальную вещь:

Пересылка номера в открытых мессенджерах тоже небезопасна.

Почему?

  • номер лежит в истории чата,

  • его можно подменить ботами/экстеншнами,

  • его можно случайно отредактировать,

  • система не защищает от MITM в web-превью,

  • нет механизма проверки подлинности.

В некоторых сценариях контакт в мессенджере уязвим не меньше, чем сторонняя визитка.


🧭 8. Итог: проблема не в переводах, а в UX между людьми

Переводы по номеру работают отлично.
Проблема — в том, как люди обмениваются номером, как они его копируют, как открывают банк и как записывают его в интерфейс.

СБП прекрасно решает транспорт денег, но не решает:

  • человеческие ошибки,

  • разный UX банков,

  • сценарии «в группе несколько номеров»,

  • старые номера в контактах,

  • пожилых людей,

  • офлайн-сценарии,

  • динамичную замену реквизитов,

И любой инструмент (от vCard до QR) — это попытка упростить повседневное взаимодействие, а не заменить банковскую инфраструктуру.


📌 В следующей статье

Если вам интересно, в следующем материале я разберу:

«Как защитить бытовые денежные переводы от подмены номера: архитектура, угрозы, решения»

Там будут:

  • модель угроз,

  • варианты атак,

  • рекомендации по защите,

  • сравнение безопасности разных механизмов передачи номера (контакты, QR, ссылки, deeplink),

  • и пример архитектуры, которая минимизирует риск подмены данных.


Предыдущая статья про это решение здесь https://habr.com/ru/articles/968372/

Only registered users can participate in poll. Log in, please.
Насколько безопаснее этот инструмент для переводов чем обычная пересылка и копирование номера?
10%Этот инструмент безопаснее чем обычная пересылка и копирование номера1
50%Такой же небезопасный/безопасный5
40%Более уязвимый4
10 users voted. 2 users abstained.