Авторизация звонком для сайтов и приложений
К нам обратилось несколько клиентов, которые заказывали у нас мобильное приложение с примерно одним и тем же вопросом - как бы переделать стандартную авторизацию через СМС так, чтобы при активной раскрутке не тратить много денег на смски. Делюсь нашими наработками в этом вопросе.
Генеральный директор Bright Mobile рассказывает о новом способе авторизации.
Зачем это, вообще, нужно?
Сперва, мне показался такой запрос достаточно странным, клиенты рассчитывали на раскрутку до 100-200 тыс пользователей. Учитывая, какой нужно бюджет на такую рекламу, то затраты в 1,5р на авторизацию каждого пользователя вроде не большие деньги. С другой стороны, 150-300 тыс на дороге тоже не валяются, а учитывая, что за весь LTV человек может авторизоваться несколько раз (стёр куку, удалил и поставил приложение, был авторизован в приложении и решил авторизоваться на сайте) то сумма с 1,5р за пользователя вырастают до 8-10р. А общие затраты вырастают до 800 тыс - 2 млн.р. А это уже совсем не смешные деньги.
Получив такую обратную связь начал изучать кто ещё жалуется на неудобство авторизации СМС. Нашёл две проблемы и обе влияют на конверсию из установки в авторизацию.
Проблема №1. Куда я попал? Она чаще всего присутствует на малоизвестных проектах, которые сразу при входе просят авторизоваться по СМС. Не доверяя проекту пользователю достаточно тяжело расстаться со своим номером телефона - многие боятся, что начнут звонить спамеры.
Проблема №2. Я устал, я ухожу... Сама авторизация по СМС для человека достаточно затратная с точки зрения количества прилагаемых усилий. Все давно уже выучили, что чем меньше кликов, тем выше конверсия. Давайте посчитаем действия, которые должен выполнить пользователь, чтоб авторизоваться по СМС:
Получается, чтобы начать пользоваться сервисом, человек должен правильно выполнить все 6 действий и, при этом, мотивация получить итоговый результат должна быть крайне сильна. Многие владельцы приложений рассказывали, что из установки в регистрацию доходят всего 40% клиентов. Т.е. 3 из 5 человек, поставили приложение и передумали пользоваться, увидев авторизацию по СМС (за привлечение которых, между прочим, заплатили).
Что есть на рынке, кроме СМС
Само собой, что кроме авторизации по СМС есть куча других способов. На сайтах чаще используется регистрация по email и соцсетям, в приложениях - номер телефона и соцсети. Старый подход "придумайте логин и два раза напишите пароль" уже мало где остался и очень похож на регистрацию по email, поэтому будем считать, что это один способ.
Авторизация по соцсетям решает обе проблемы - профиль не так страшно запалить, а действий для авторизации нужно сильно меньше - тыкнуть на соцсеть, подтвердить доступ в приложении, да и всё. Но в этом подходе есть один недостаток. Чаще всего, для владельца приложения, всё-таки, важно иметь номер телефона пользователя, причём, номер подтверждённый. В случае авторизации по соцсетям часто старый номер либо утрачен, либо, вообще, использовался арендованный фейк. Проверить рабочий это номер или нет в рамках авторизации невозможно.
Регистрация / авторизация по email, отчасти, похожа на СМС-авторизацию. Так же нужно дождаться стороннюю службу, подтвердить, а потом ещё помнить логин и пароль, либо восстанавливать доступ. Номера телефона, в этом случае, у нас нет, а холодные письма давно уже воспринимаются, как спам.
Рассмотрев все эти варианты мы пришли к такому идеальному конечному результату, который ждут пользователи:
Полученное решение лежало на стыке технологий.
Техническая реализация
В авторизации, как и в случае СМС задействованы 3 звена - телефон клиента, АТС и БД сервера, где хранятся учётные записи пользователей, а usercase будет следующим:
1. Клиент вводит номер телефона
2. Жмёт кнопку "Авторизация"
3. На сервер идёт запрос, что такой-то логин хочет авторизоваться
4. Пользователь звонит на номер сервиса
5. АТС определяет его номер и сбрасывает звонок
6. АТС передаёт в БД сервиса факт звонка
7. БД сравнивает логин изначального запроса и номер, возвращённый АТС и высылает в приложение клиента подтверждение или отказ в авторизации
Схематично это выглядит так:
Получается, что пользователь делает всего три действия:
1. Вводит номер телефона
2. Жмёт кнопку авторизоваться
3. Разрешает вызов на номер сервиса
После этого, звонок сбрасывается и пользователь авторизован. Кроме того, реализовали проверку, когда кто-то может отправить Ваш номер телефона и ждать, когда вы позвоните.
Конкуренты
Удалось нагуглить несколько похожих сервисов, но авторизация звонком работает иначе и, на мой взгляд, геморройнее. Вот перечень основных:
- Call Password. Авторизация проходит в обратную сторону - сервис тебе звонит, а ты должен запомнить и ввести последние 4 цифры номера и стоит 15 коп за авторизацию
- Authentication by call. Логика, как у нас, но внедряешь сам через подключение API и на сайте нет публичной тарификации
Я думаю, что логичнее брать деньги просто за установку и передавать владельцу всю инфраструктуру (использовать его базу и АТС). При этом, у владельца будут дополнительные платежи только за АТС (600р./мес за 8-800 и 120р./мес за московский номер). Других трат нет.
Пишите мне в личку или на сайт у кого есть аналогичная задача - собрать номера, но облегчить авторизацию для клиентов.
Схема с колл пассворд выглядит лучше. Это гарантировано бесплатно, достаточно привычно (много где так регистрация в публичных вайфай происходит).
В вашей схеме пользователи могут опасаться звонить куда-то - вдруг трубку возьмут, какая будет тарификация? Вдруг мошенники и это платный номер? И т.д.
я думаю 8-800 снимет все возражения о тарификации
Спасибо, пока вижу решением такой проблемы краткий нотис в форме авторизации - мол позвони на системный номер, трубку сбросят и использование 8-800 для большей уверенности
Не раскрыта тема, зачем бизнесу номер телефона. Поди, слать такой же холодный спам?
А почему не реализовать звонок клиенту, приложение видит входящий от вашего номера, сбрасывает звонок и авторезирует пользователя.
Просто логика "пользователь не доверяет оставлять свой номер телефона" никуда не девается и в вашем случае... Я бы так же не хотел звонить куда и кому попало.
Если я на своём телефоне укажу Ваш номер и система позвонит Вам, то вы либо возьмёте, либо сбросите трубку, а я получу доступ к вашей учётке. Как будет в этом случае осуществляться персонализация?
Со вторым тезисом согласен
Да не подумал, тогда робот диктует пин
есть такие сервисы, стоят где-то 50ком за звонок. Учитывая, что используется самая дешёвая телефония, то качество звонка - Г. Приходится слушать по три раза стапливая те же 1,5р. Да и сам способ мне видится более громоздким, чем исходящий вызов без факта общения
Оставьте исходящий вызов, но рекомендую дать людям выбор. Смс или звонок, это повысит доверие, как мне кажется
Сейчас только сообразил, если вы укажите чужой номер, то приложение не увидит входящего звонка с нужного телефона, а значит не подтвердит номер телефона.
Заставлять пользователя звонить на свой номер полный бред. Используйте https://ucaller.ru
Как я понял, стоит вопрос - как подтверждать номер клиента и за это как можно меньше заплатить. СМС стоит около 1.50 руб. - 2.00 руб. CallPassword стоит 0,15 руб. это в 10-ть раз дешевле. По логике одно и тоже - пользователь сделал одинаковое действие, указал свой номер. В дальнейшем он передаёт пароль или из смс или из истории звонков.
Когда пользователю надо позвонить, это уже немного другая механика. Дополнительная точка отказа.
Самый лучший вариант, это когда приложение имеет доступ к истории звонков. Если в истории звонков есть номер-пароль, то приложение подтверждает номер самостоятельно и переходит на другой шаг.
Решение с входящим звонком CallPassword, мне кажется наиболее удачным с точки зрения механики и цены.
при > 300 000 смс цена будет около 50 копеек за смс
Зачем бизнесу номер телефона, если звонить и/или слать sms дорого?
Цена 0,5 при краткосрочном выкупе пакета. Если идёт 5-10 тыс регистраций в мес, то тариф менее демократичный.
Про дорого - это вопрос к тому для чего конкретно дорого. Просто за регистрацию - это дорого, если привлечь клиента на акцию или покупку высоко маржинального товара, то дёшево.
А почему пуши не используют для этой задачи? Иногда встречаю, но массово вроде не используются
для подтверждения железки, не нужен Push, это можно сделать без участия пользователя
пуши не дают подтверждения номера телефона. Я такое встречал у Модуль-банка, когда приложение уже прошло двух-факторную авторизацию, то для подтверждения отправки платежа используют отправку пуша с кодом
На этом этапе лично я бы ушел. Хотя, скорее всего, ушел бы еще на этапе обнаружения звонков в разрешениях приложения.
Входящее СМС бесплатно всегда. Да, теоретически это может быть подписка какая-нибудь, но это надо прям постараться. А вот звонок...откуда вы знаете какой тариф у пользователя? Может ему этот звонок выйдет платным.
Звонок сбрасывается до факта соединения. Проще говоря "трубку не берут". Планируем, что 8-800 позволит избежать этот страх.
Это вы знаете, а условный "я" не знаю и могу испугаться. Конкретно я вообще стараюсь не пользоваться приложениями, у которых есть доступ к звонкам или отправке СМС.
с разрешения пользователя само собой, обычная ссылка типа tel:
Во-первых "100-200 тысяч пользователей" - это фантазии клиентов. Они будут, видимо, удивлены, когда пользователей будет в лучшем случае 5-10% от их ожиданий.
Второй непонятный момент - откуда ценник в 1.5р? Насколько я помню, ранее в одном из сервисов мне одно смс обходилось в 20-30 копеек
видимо, это было очень давно.
Не очень давно, но я кажется понял в чем дело. У меня была стоимость за большой пакет смс для рассылок, полагаю в этом дело. Однако не думал, что разница в стоимости настолько колоссальная.
Разница будет огромной. При самых начальных объемах стоимость действительно ~1.5 руб. и это достаточно низко :)
По отдельным операторам доходит до 2,2р
А вы брали пакет у одного оператора - или у какой-то компании с телефонией?
Входящий звонок клиенту может быть платным, даже если это НЕ роуминг.
Ну и например в моем случае если ваше приложение сможет убедить что надо дать позвонить...я сменю пару настроек и дам это сделать. Номер вы получите. Виртуальный от Тинькова (https://www.tinkoff.ru/mobile-operator/form/olv/virtual/ , который меняется на раз, заставить телефон делать исходящий с него можно, у других операторов аналогичная услуга есть но там входящие сложно подключить).
В реальности - если мне как пользователю покажется что номер тут реально не нужен - вероятно в Play Store улетит жалоба на попытку обхода Call permessions policy (не факт что это пройдет - формального нарушения нет ведь).
А подтвердить номер, позвонив с сип телефонии и подставив любой caller id, можно же получается
я не нашел работающих методов это сделать
В нашей телефонии можно сделать caller id любого мобильного, подтвердив владение номером через смс. Это добросовестная компания, которая не предоставляет динамический caller id кому попало. Но есть и компании, которые могут дать доступ к динамике. В этом случае вашу авторизацию можно легко обойти, наплодив аккаунтов. Другое дело, когда абоненту совершается входящий звонок с предложением ввести последние цифры номера для подтверждения, тут уже не подделаешь, но надо защищаться от флуда.
интересно, а можете поделиться недобросовестной компанией?
Точных названий не знаю, но по моей просьбе для теста товарищ мне звонил с любого мобильного номера.
понимаю что вопрос конфиденциальный, но мне нужно удостовериться, что это реально. Написал вам в ВК.
Это реально. Нужен рабочий PBX только
Для выполнения ФЗ при авторизации в публичных сетях wi fi подойдет, но не секьюрно
В чем не_секьюрность? какие угрозы?
Угроза только в спам ботах, которые могут наплодить аккаунтов в приложении и ты не будешь знать, где живой, а где спам
А как именно они "наплодят"?
Через сип каналы с динамическим коллером. Я писал под комментарием чьим-то
Комментарий недоступен
Не знаю, насколько это распространенная модель в России, но у нас в Беларуси многие пользуются пакетами мобильных услуг, например: у меня есть месячный пакет безлимитного трафика, сколько-то смс и 100500 исходящих на все белорусские сети. Чистых денег на счету — всегда ноль (в этом нет необходимости), поэтому на короткий, зарубежный, любой другой «особенный» номер я просто не смогу позвонить, даже если он бы и сбросил в конце: мой оператор оборвёт звонок в самом начале «из-за недостатка средств».
То же самое — в роуминге. В отличие от входящих смс, которые чаще бесплатны в роуминге, любой вызов (входящий/исходящий) будет отклонён при нуле на счету.
Я уже молчу про возможность подмены номера (писали выше) и про этическую составляющую: в 2019 году кажется верхом неприличия просить пользователя позвонить куда-либо: с мессенджерами обычные звонки в принципе ушли в очень интимную зону приватной жизни, а в воздухе ещё огромное количество историй мошенничества с платными номерами и подписками — от нулевых и до наших дней.
Так что это лишь моё мнение, но я не знаю, какого уровня должна быть компания, чтобы я доверил ей исходящий вызов. Microsoft, Apple и Google? — возможно. Facebook? — уже больше сомнений. NoNameStartup? — пфф, до свидания.
Решение Нью-Тел лучше. Звонки проходят на любые номера даже иностранные, а стоимость одна и та же. Жирный плюс который делает решение callpassword лучшим.
Комментарий удален модератором