[{"data":1,"prerenderedAt":1741},["ShallowReactive",2],{"blog-registraciya-po-zvonku-bez-koda":3,"blog-related-registraciya-po-zvonku-bez-koda":422,"mdc--s59uh-key":1677,"mdc-n8julj-key":1689,"mdc-epuq7t-key":1698,"mdc--3pfri6-key":1707,"mdc--2j1pwh-key":1716,"mdc-2rfakb-key":1732},{"id":4,"title":5,"body":6,"category":383,"cta":384,"description":389,"draft":390,"extension":391,"faq":392,"h1":408,"meta":409,"navigation":410,"order":411,"path":412,"published":413,"related":414,"seo":418,"stem":419,"summary":420,"updated":413,"__hash__":421},"blog\u002Fblog\u002Fregistraciya-po-zvonku-bez-koda.md","Регистрация по звонку — подтверждение номера без SMS",{"type":7,"value":8,"toc":373},"minimark",[9,13,18,21,28,34,37,76,80,87,95,99,102,185,192,195,199,202,259,274,277,281,284,316,319,323,351],[10,11,12],"p",{},"SMS-код стал стандартом регистрации не потому, что он удобен, а потому что долго не было альтернативы. Сегодня она есть: пользователь может подтвердить номер сам, совершив короткий вызов. Разбираем, как выглядит такая форма, что происходит с конверсией и где сценарий не подходит.",[14,15,17],"h2",{"id":16},"kak-vyglyadit-forma-registracii-bez-sms-koda","Как выглядит форма регистрации без SMS-кода",[10,19,20],{},"Сравним два экрана.",[10,22,23,27],{},[24,25,26],"strong",{},"С SMS-кодом."," Поле для номера → кнопка «Получить код» → экран ожидания → поле для кода → кнопка «Подтвердить». Пользователь вводит номер, ждёт, переключается в приложение сообщений, читает или копирует код, возвращается, вводит, подтверждает. Пять действий, два переключения между приложениями и одно ожидание непредсказуемой длительности.",[10,29,30,33],{},[24,31,32],{},"Со звонком."," Поле для номера → кнопка «Продолжить» → экран с номером и кнопкой «Позвонить» → автоматический переход дальше. Пользователь вводит номер и нажимает вызов. Два действия, ноль ввода, ноль ожидания сообщения.",[10,35,36],{},"Ключевые элементы второго экрана:",[38,39,40,52,58,64,70],"ul",{},[41,42,43,46,47,51],"li",{},[24,44,45],{},"Номер крупно и кликабельно."," На мобильном — ссылка ",[48,49,50],"code",{},"tel:",", чтобы набор открывался в одно касание. Заставлять переписывать номер руками — значит вернуть в сценарий тот самый ручной ввод, ради избавления от которого всё затевалось.",[41,53,54,57],{},[24,55,56],{},"Понятная формулировка."," «Позвоните на этот номер. Трубку брать не нужно, вызов оборвётся сам» — этого достаточно. Слова «верификация» и «flash call» пользователю ничего не объясняют.",[41,59,60,63],{},[24,61,62],{},"Таймер на 60 секунд."," Показывает, что процесс не завис, и задаёт рамку ожидания.",[41,65,66,69],{},[24,67,68],{},"Автоматический переход."," Как только проверка подтверждена, экран меняется сам — нажимать ничего не нужно.",[41,71,72,75],{},[24,73,74],{},"Запасной способ."," Небольшая ссылка «Подтвердить другим способом» рядом с таймером.",[14,77,79],{"id":78},"kak-eto-rabotaet-pod-kapotom","Как это работает под капотом",[10,81,82,83,86],{},"Коротко: ваш бэкенд создаёт проверку и получает выделенный номер, пользователь звонит, система сопоставляет вызов с проверкой по паре «выделенный номер + номер звонящего», ваш код опрашивает статус и завершает регистрацию по ",[48,84,85],{},"CONFIRMED",".",[10,88,89,90,86],{},"Важная деталь: выделенный номер ни за кем не закрепляется — один номер одновременно обслуживает проверки разных людей, поэтому всплеск регистраций не упирается в размер пула. Подробный разбор механизма — в статье про ",[91,92,94],"a",{"href":93},"\u002Fblog\u002Fpodtverzhdenie-nomera-zvonkom","подтверждение номера телефона звонком",[14,96,98],{"id":97},"chto-eto-daet-konversii-registracii","Что это даёт конверсии регистрации",[10,100,101],{},"Разберём, где именно теряются пользователи в SMS-сценарии. Каждая из этих точек в сценарии со звонком либо исчезает, либо становится безобидной.",[103,104,107],"div",{"className":105},[106],"md-table",[108,109,110,126],"table",{},[111,112,113],"thead",{},[114,115,116,120,123],"tr",{},[117,118,119],"th",{},"Точка потери",[117,121,122],{},"Что происходит",[117,124,125],{},"Со звонком",[127,128,129,141,152,163,174],"tbody",{},[114,130,131,135,138],{},[132,133,134],"td",{},"Ожидание сообщения",[132,136,137],{},"пользователь ждёт, отвлекается, закрывает вкладку",[132,139,140],{},"ожидания нет, вызов идёт сразу",[114,142,143,146,149],{},[132,144,145],{},"Переключение в приложение сообщений",[132,147,148],{},"часть пользователей не возвращается",[132,150,151],{},"переключения нет",[114,153,154,157,160],{},[132,155,156],{},"Ручной ввод кода",[132,158,159],{},"опечатки, просроченный код, исчерпанные попытки",[132,161,162],{},"вводить нечего",[114,164,165,168,171],{},[132,166,167],{},"Сообщение не пришло вовсе",[132,169,170],{},"регистрация невозможна, пользователь уходит",[132,172,173],{},"доставлять нечего",[114,175,176,179,182],{},[132,177,178],{},"Повторный запрос кода",[132,180,181],{},"второй и третий запрос обычно не помогают",[132,183,184],{},"повторный вызов бесплатен",[10,186,187,188,86],{},"Последняя строка самая дорогая. Пользователь, не получивший код, редко пишет в поддержку — он просто уходит, а в аналитике это выглядит как необъяснимый провал между шагами. Причины, по которым сообщения не доходят, разобраны в материале ",[91,189,191],{"href":190},"\u002Fblog\u002Fne-prihodit-kod-podtverzhdeniya","не приходит код подтверждения",[10,193,194],{},"Насколько вырастет именно ваша конверсия, заранее не скажет никто: это зависит от аудитории, региона и текущей доставляемости. Честный способ узнать — включить звонок части пользователей и сравнить две воронки.",[14,196,198],{"id":197},"chto-napisat-na-ekrane-chtoby-polzovatel-ponyal","Что написать на экране, чтобы пользователь понял",[10,200,201],{},"Сценарий новый для большинства людей, и провалить его можно одной формулировкой. Разница между работающим и неработающим текстом на этом экране больше, чем разница между двумя способами подтверждения.",[103,203,205],{"className":204},[106],[108,206,207,217],{},[111,208,209],{},[114,210,211,214],{},[117,212,213],{},"Не работает",[117,215,216],{},"Работает",[127,218,219,227,235,243,251],{},[114,220,221,224],{},[132,222,223],{},"«Пройдите верификацию номера»",[132,225,226],{},"«Позвоните на этот номер»",[114,228,229,232],{},[132,230,231],{},"«Инициируйте вызов на указанный номер»",[132,233,234],{},"«Нажмите кнопку — откроется набор»",[114,236,237,240],{},[132,238,239],{},"«Ожидайте подтверждения»",[132,241,242],{},"«Трубку брать не нужно, вызов оборвётся сам»",[114,244,245,248],{},[132,246,247],{},"«Звонок будет отклонён»",[132,249,250],{},"«Звонок бесплатный»",[114,252,253,256],{},[132,254,255],{},"«Используется технология flash call»",[132,257,258],{},"ничего, это лишнее",[10,260,261,262,265,266,269,270,273],{},"Три вещи, которые обязательно должны быть на экране словами: что звонить нужно ",[24,263,264],{},"с того самого телефона",", что ",[24,267,268],{},"отвечать не надо",", и что ",[24,271,272],{},"это ничего не стоит",". Первое снимает самую частую причину неудачных проверок — звонок с рабочего аппарата. Второе успокаивает тех, кто ждёт разговора с роботом. Третье закрывает опасение, что вызов окажется платным.",[10,275,276],{},"Отдельно про подтверждение бесплатности: оператор тарифицирует вызов по тарифу абонента, но соединение сбрасывается до ответа, а неотвеченные вызовы не тарифицируются. Формулировка «звонок бесплатный, соединение не устанавливается» и точна, и понятна.",[14,278,280],{"id":279},"kogda-zvonok-ne-podhodit","Когда звонок не подходит",[10,282,283],{},"Раздел, без которого материал был бы рекламой.",[38,285,286,292,298,304,310],{},[41,287,288,291],{},[24,289,290],{},"Зарубежные абоненты."," Пул состоит из российских номеров; для иностранных SIM сценарий не работает.",[41,293,294,297],{},[24,295,296],{},"Скрытый номер."," Антиопределитель или корпоративная АТС с подменой исходящего номера делают сопоставление невозможным.",[41,299,300,303],{},[24,301,302],{},"Нет голосовой связи."," Интернет есть, сети оператора нет — сценарий не пройдёт.",[41,305,306,309],{},[24,307,308],{},"Нужен именно текстовый код."," Например, если код должен остаться у пользователя в переписке как подтверждение операции.",[41,311,312,315],{},[24,313,314],{},"Регистрация с чужого устройства."," Пользователь заполняет форму на компьютере коллеги, а телефон дома. Впрочем, в SMS-сценарии он тоже не получит код.",[10,317,318],{},"Вывод практический: звонок ставится основным способом, а SMS остаётся запасным. Это снимает и перечисленные случаи, и главное возражение — «а если не сработает».",[14,320,322],{"id":321},"kak-podklyuchit","Как подключить",[324,325,326,329,332,338,348],"ol",{},[41,327,328],{},"Зарегистрируйтесь и создайте проект — он получит собственный ключ.",[41,330,331],{},"В форме регистрации после ввода номера вызывайте создание проверки на своём бэкенде. Ключ проекта хранится только на сервере.",[41,333,334,335,337],{},"Покажите пользователю выделенный номер ссылкой ",[48,336,50],{}," и таймер.",[41,339,340,341,343,344,347],{},"Опрашивайте статус: ",[48,342,85],{}," — завершайте регистрацию, ",[48,345,346],{},"EXPIRED"," — предлагайте позвонить ещё раз.",[41,349,350],{},"Добавьте запасной способ подтверждения.",[10,352,353,354,358,359,363,364,368,369,86],{},"Детали реализации отличаются в зависимости от площадки: для веба — в материале про ",[91,355,357],{"href":356},"\u002Fblog\u002Fpodtverzhdenie-nomera-na-sayte","подтверждение номера на сайте",", для мобильных — про ",[91,360,362],{"href":361},"\u002Fblog\u002Fpodtverzhdenie-nomera-v-prilozhenii","подтверждение в приложении",". Запросы и примеры кода — в статье про ",[91,365,367],{"href":366},"\u002Fblog\u002Fapi-podtverzhdeniya-nomera","API подтверждения номера",". Цены — на странице ",[91,370,372],{"href":371},"\u002Fpricing","тарифов",{"title":374,"searchDepth":375,"depth":375,"links":376},"",2,[377,378,379,380,381,382],{"id":16,"depth":375,"text":17},{"id":78,"depth":375,"text":79},{"id":97,"depth":375,"text":98},{"id":197,"depth":375,"text":198},{"id":279,"depth":375,"text":280},{"id":321,"depth":375,"text":322},"Продукт",{"title":385,"text":386,"label":387,"href":388},"Соберите форму регистрации без кода","Ключ проекта выдаётся сразу после регистрации — тестовую проверку можно прогнать в тот же день.","Начать бесплатно","\u002Fregister","Как устроена регистрация с подтверждением номера звонком: пользователь звонит на выделенный номер вместо ввода SMS-кода. Форма, конверсия, ограничения и стоимость.",false,"md",[393,396,399,402,405],{"q":394,"a":395},"Пользователь точно поймёт, что от него хотят?","Если формулировать действием, а не термином — да. Работает «Позвоните на этот\nномер, трубку брать не нужно» и крупная кнопка вызова. Не работает «пройдите\nверификацию методом обратного flash call»: пользователю не нужно название\nтехнологии, ему нужно понятное указание.\n",{"q":397,"a":398},"Что делать с теми, у кого звонок не проходит?","Оставить в форме вторую кнопку — «Подтвердить другим способом». Скрытый номер,\nзарубежная SIM и корпоративная АТС встречаются редко, но такие пользователи\nбез запасного варианта не зарегистрируются вообще.\n",{"q":400,"a":401},"Можно ли внедрить не для всех сразу?","Да, и так правильнее. Включите звонок части аудитории, оставив остальным\nпрежний сценарий, и сравните две воронки на своих данных — от «ввёл номер»\nдо «завершил регистрацию».\n",{"q":403,"a":404},"Сколько стоит неудачная попытка?","Ноль. Если пользователь не позвонил, проверка через 60 секунд становится\n`EXPIRED` и не тарифицируется. Повторные попытки тоже бесплатны, пока\nзвонок не состоялся.\n",{"q":406,"a":407},"Нужно ли для этого мобильное приложение?","Нет, сценарий работает и в обычном браузере. В приложении он чуть удобнее —\nнабор открывается одним касанием, — но принципиально ничего не меняется.\n","Регистрация по звонку: подтверждение номера без SMS и ввода кода",{},true,6,"\u002Fblog\u002Fregistraciya-po-zvonku-bez-koda","2026-08-08",[415,416,417],"podtverzhdenie-nomera-zvonkom","podtverzhdenie-nomera-na-sayte","avtorizaciya-po-zvonku",{"title":5,"description":389},"blog\u002Fregistraciya-po-zvonku-bez-koda","Регистрация по звонку — сценарий, в котором пользователь подтверждает телефон\nисходящим вызовом, а не полученным кодом. Форма показывает номер, пользователь нажимает\n«Позвонить», вызов сбрасывается — регистрация завершена. Вместо пяти шагов остаётся два,\nиз воронки уходит ожидание сообщения и ручной ввод цифр. Подтверждение стоит 0,20 ₽,\nнесостоявшаяся проверка не тарифицируется.\n","cxAeS5elkut53Op9fW9Di8s2TVkAKZyxsvMmTuk3BAc",[423,938,1272],{"id":424,"title":425,"body":426,"category":904,"cta":905,"description":908,"draft":390,"extension":391,"faq":909,"h1":928,"meta":929,"navigation":410,"order":930,"path":93,"published":413,"related":931,"seo":934,"stem":935,"summary":936,"updated":413,"__hash__":937},"blog\u002Fblog\u002Fpodtverzhdenie-nomera-zvonkom.md","Подтверждение номера телефона звонком — верификация без SMS",{"type":7,"value":427,"toc":895},[428,431,434,438,441,444,447,532,535,539,542,585,592,595,599,602,608,611,617,700,707,711,714,717,720,726,729,733,740,746,799,802,812,816,819,855,862,864,867,889],[10,429,430],{},"Способ выглядит непривычно ровно один раз — пока не увидишь его в деле. Пользователь не ждёт SMS, не переключается в приложение сообщений, не копирует шесть цифр и не возвращается обратно в форму. Он нажимает одну кнопку, телефон начинает набор, через мгновение вызов обрывается — и регистрация продолжается сама.",[10,432,433],{},"Ниже — что происходит под капотом, чем это отличается от обычного flash call, почему звонок доходит там, где SMS теряется, и сколько всё это стоит.",[14,435,437],{"id":436},"chto-takoe-proverka-telefona-zvonkom","Что такое проверка телефона звонком",[10,439,440],{},"Задача любой телефонной верификации одна: убедиться, что человек, который вводит номер в форму, действительно имеет к этому номеру доступ. Классическое решение — отправить на него одноразовый код и попросить ввести обратно. Раз код дошёл и был введён, значит, телефон у пользователя в руках.",[10,442,443],{},"Проверка номера звонком решает ту же задачу с другой стороны. Вместо того чтобы отправлять что-то абоненту и ждать, что он это получит и перепечатает, сервис просит его сделать исходящий вызов. Телефонная сеть передаёт номер вызывающего абонента вместе с вызовом — это тот же механизм, благодаря которому вы видите, кто вам звонит. Сервис сравнивает определившийся номер с тем, который пользователь ввёл в форму. Совпало — номер подтверждён.",[10,445,446],{},"Разница принципиальная. В SMS-сценарии доказательством служит доставленное сообщение, а его доставка зависит от цепочки посредников. В сценарии со звонком доказательством служит сам факт исходящего вызова с проверяемого номера, и никакого содержимого передавать не требуется.",[103,448,450],{"className":449},[106],[108,451,452,464],{},[111,453,454],{},[114,455,456,458,461],{},[117,457],{},[117,459,460],{},"SMS-код",[117,462,463],{},"Звонок на выделенный номер",[127,465,466,477,488,499,510,521],{},[114,467,468,471,474],{},[132,469,470],{},"Что делает пользователь",[132,472,473],{},"ждёт сообщение, открывает его, запоминает или копирует код, возвращается в форму, вводит",[132,475,476],{},"нажимает кнопку вызова и сбрасывает",[114,478,479,482,485],{},[132,480,481],{},"Число действий",[132,483,484],{},"пять",[132,486,487],{},"два",[114,489,490,493,496],{},[132,491,492],{},"Что подтверждает факт",[132,494,495],{},"что сообщение дошло и было прочитано",[132,497,498],{},"что вызов совершён с проверяемого номера",[114,500,501,504,507],{},[132,502,503],{},"Где ломается",[132,505,506],{},"сообщение не дошло, пришло с задержкой, код введён с ошибкой",[132,508,509],{},"номер вызывающего не определяется, звонок с другого телефона",[114,511,512,515,518],{},[132,513,514],{},"За что списываются деньги",[132,516,517],{},"за отправку, независимо от доставки",[132,519,520],{},"за состоявшийся звонок",[114,522,523,526,529],{},[132,524,525],{},"Ввод кода",[132,527,528],{},"обязателен",[132,530,531],{},"не нужен",[10,533,534],{},"У способа есть и обратная сторона, о ней честно в разделе про ограничения: он работает, только пока номер вызывающего абонента передаётся сетью, и только для российских номеров.",[14,536,538],{"id":537},"kak-prohodit-podtverzhdenie-chetyre-shaga","Как проходит подтверждение: четыре шага",[10,540,541],{},"Со стороны интеграции всё сводится к двум запросам к API — на создание проверки и на получение её результата.",[324,543,544,554,563,569],{},[41,545,546,549,550,553],{},[24,547,548],{},"Ваша система создаёт проверку."," Отправляет ключ проекта и номер пользователя в формате E.164 (",[48,551,552],{},"+79161234567","). В ответ приходит идентификатор проверки и выделенный номер, на который нужно позвонить.",[41,555,556,559,560,562],{},[24,557,558],{},"Вы показываете этот номер пользователю."," На мобильных — ссылкой ",[48,561,50],{},", чтобы набор открывался в одно касание и номер не пришлось переписывать руками. Рядом полезен таймер: у проверки есть срок.",[41,564,565,568],{},[24,566,567],{},"Пользователь звонит."," Отвечать на вызов не нужно и невозможно — сервис фиксирует входящий и сбрасывает соединение. Звонок сопоставляется с проверкой по паре «выделенный номер + номер вызывающего абонента».",[41,570,571,574,575,578,579,581,582,584],{},[24,572,573],{},"Ваша система забирает результат."," Опрашивает статус проверки по её идентификатору: ",[48,576,577],{},"PENDING"," — звонка ещё не было, ",[48,580,85],{}," — номер подтверждён, ",[48,583,346],{}," — 60 секунд истекли, звонка не поступило.",[10,586,587,588,591],{},"Важная деталь, которую часто понимают неправильно: ",[24,589,590],{},"выделенный номер не закрепляется за пользователем",". Один и тот же номер из пула одновременно обслуживает проверки разных людей — уникальной должна быть только пара «номер плюс звонящий». Поэтому пул не «заканчивается» при всплеске регистраций и не требует запаса номеров под пиковую нагрузку: сервис сам подбирает свободную комбинацию и распределяет вызовы по пулу.",[10,593,594],{},"Вторая деталь — про 60 секунд. Это срок жизни проверки, а не срок аренды номера. Если пользователь отвлёкся и позвонил через две минуты, вызов уже ни к чему не привяжется: проверка к тому моменту помечена как истёкшая. Правильная реакция интерфейса — не «ошибка», а кнопка «Позвонить ещё раз», создающая новую проверку.",[14,596,598],{"id":597},"chem-eto-otlichaetsya-ot-obychnogo-flash-call","Чем это отличается от обычного flash call",[10,600,601],{},"Термин flash call описывает два зеркальных сценария, и путаница между ними — главный источник недопонимания при выборе провайдера.",[10,603,604,607],{},[24,605,606],{},"Обычный flash call."," Звонит сервис. Пользователь видит входящий вызов, который тут же обрывается, а приложение читает номер входящего и подставляет его последние цифры как код подтверждения. Пользователю иногда даже не нужно ничего делать — но только если приложение получило доступ к журналу вызовов.",[10,609,610],{},"Здесь и находится слабое место. Доступ к журналу вызовов — чувствительное разрешение: в Google Play его выдача ограничена и требует обоснования, в iOS публичного API для чтения журнала нет вообще, а в браузере такой сценарий недоступен по определению. На практике обычный flash call — это история про Android-приложение с одобренным разрешением, и больше почти нигде.",[10,612,613,616],{},[24,614,615],{},"Обратный (reverse) flash call."," Звонит пользователь. Сервису не нужен доступ ни к журналу вызовов, ни к SMS — он видит вызов на своей стороне, потому что вызов пришёл к нему. Отсюда следует, что сценарий одинаково работает и в мобильном приложении, и на обычном сайте в браузере, и никаких особых разрешений не требует.",[103,618,620],{"className":619},[106],[108,621,622,634],{},[111,623,624],{},[114,625,626,628,631],{},[117,627],{},[117,629,630],{},"Обычный flash call",[117,632,633],{},"Обратный flash call",[127,635,636,647,658,669,678,689],{},[114,637,638,641,644],{},[132,639,640],{},"Кто звонит",[132,642,643],{},"сервис пользователю",[132,645,646],{},"пользователь сервису",[114,648,649,652,655],{},[132,650,651],{},"Разрешения в приложении",[132,653,654],{},"доступ к журналу вызовов",[132,656,657],{},"не нужны",[114,659,660,663,666],{},[132,661,662],{},"Работает на сайте",[132,664,665],{},"нет",[132,667,668],{},"да",[114,670,671,674,676],{},[132,672,673],{},"Работает на iOS",[132,675,665],{},[132,677,668],{},[114,679,680,683,686],{},[132,681,682],{},"Что вводит пользователь",[132,684,685],{},"цифры из номера (или автоподстановка)",[132,687,688],{},"ничего",[114,690,691,694,697],{},[132,692,693],{},"Что может помешать",[132,695,696],{},"отказ в разрешении, ограничения магазинов приложений",[132,698,699],{},"номер вызывающего не определяется",[10,701,702,703,86],{},"FlashCall работает по второй схеме. Подробный разбор терминологии — включая написания «флеш колл» и синоним call to auth — в отдельном материале ",[91,704,706],{"href":705},"\u002Fblog\u002Fchto-takoe-flash-call","что такое flash call и обратный flash call",[14,708,710],{"id":709},"pochemu-zvonok-dohodit-tam-gde-sms-ne-doshla","Почему звонок доходит там, где SMS не дошла",[10,712,713],{},"Чтобы SMS с кодом оказалась на экране, она проходит цепочку: ваш сервис → агрегатор → оператор получателя → устройство. На каждом переходе есть очередь, фильтр и возможность потерять сообщение. Массовые рассылки фильтруются как спам, роуминг и запрет на приём международных сообщений отсекают часть абонентов, переполненная память устройства не даёт сообщение принять, а задержка на стороне агрегатора превращает код в бесполезный — к моменту доставки он уже истёк.",[10,715,716],{},"Для бизнеса это не абстрактная проблема, а прямые потери: недоставленная SMS — это не отправленный впустую рубль, а несостоявшаяся регистрация. Причём отправка тарифицируется независимо от того, дошло сообщение или нет.",[10,718,719],{},"Исходящий вызов идёт по голосовой сети напрямую. Там нет ни фильтрации массовых рассылок, ни очереди на доставку, ни спам-папки — соединение либо устанавливается, либо нет, и результат виден мгновенно. Отдельно важно, что инициатива на стороне пользователя: он не ждёт, пока до него что-то доедет, а сам совершает действие и сразу видит результат.",[10,721,722,723,86],{},"Подробный разбор причин, по которым коды не доходят, и что с этим делать пользователю — в материале ",[91,724,725],{"href":190},"почему не приходит код подтверждения",[10,727,728],{},"Обещать стопроцентную доставляемость было бы нечестно, поэтому назовём и границы. Верификация телефона звонком не сработает в трёх случаях: у абонента скрыт номер, звонок идёт через корпоративную АТС с подменой исходящего номера, или пользователь находится за пределами России — пул состоит из российских номеров. Разумная архитектура оставляет запасной способ подтверждения: звонок как основной сценарий, SMS как резервный для тех, у кого он не прошёл.",[14,730,732],{"id":731},"skolko-stoit-podtverzhdenie-nomera","Сколько стоит подтверждение номера",[10,734,735,736,739],{},"Одно подтверждение — ",[24,737,738],{},"0,20 ₽",". Абонентской платы нет, минимального ежемесячного объёма нет, за подключение платить не нужно.",[10,741,742,743,745],{},"Ключевое отличие от SMS — в модели списания. Деньги списываются в момент, когда звонок зафиксирован, то есть за результат. Проверка, по которой звонка не было и которая ушла в ",[48,744,346],{},", не тарифицируется вообще. Вы не платите за попытки, за недоставку и за пользователей, которые передумали на середине формы.",[103,747,749],{"className":748},[106],[108,750,751,764],{},[111,752,753],{},[114,754,755,758,761],{},[117,756,757],{},"Подтверждений в месяц",[117,759,760],{},"Стоимость при 100 % дозвона",[117,762,763],{},"При 80 % дозвона",[127,765,766,777,788],{},[114,767,768,771,774],{},[132,769,770],{},"1 000",[132,772,773],{},"200 ₽",[132,775,776],{},"160 ₽",[114,778,779,782,785],{},[132,780,781],{},"10 000",[132,783,784],{},"2 000 ₽",[132,786,787],{},"1 600 ₽",[114,789,790,793,796],{},[132,791,792],{},"100 000",[132,794,795],{},"20 000 ₽",[132,797,798],{},"16 000 ₽",[10,800,801],{},"Второй столбец — не скидка, а прямое следствие модели: если из десяти тысяч запущенных проверок звонком завершились восемь тысяч, платить вы будете за восемь. В SMS-сценарии заплатить пришлось бы за все десять тысяч отправок.",[10,803,804,805,807,808,86],{},"Проверка не создастся, если на балансе меньше стоимости одного подтверждения — API вернёт ошибку о недостатке средств. Это стоит обработать в коде заранее и завести оповещение о низком балансе. Актуальные цены и условия — на странице ",[91,806,372],{"href":371},"; подробнее о том, как вообще выбирать провайдера и на что смотреть кроме цены, — в разборе ",[91,809,811],{"href":810},"\u002Fblog\u002Fservis-podtverzhdeniya-nomera","сервисов подтверждения номера",[14,813,815],{"id":814},"gde-primenyayut-verifikaciyu-nomera-zvonkom","Где применяют верификацию номера звонком",[10,817,818],{},"Сценариев ровно столько же, сколько у SMS-кода, — способ подтверждения меняется, задача остаётся.",[38,820,821,827,837,843,849],{},[41,822,823,826],{},[24,824,825],{},"Регистрация."," Отсечь фейковые аккаунты и получить рабочий контакт. Здесь короткий сценарий даёт больше всего: чем меньше шагов между «ввёл номер» и «зарегистрирован», тем меньше отвалов.",[41,828,829,832,833,86],{},[24,830,831],{},"Вход в аккаунт."," Замена SMS-кода при авторизации, в том числе полностью без пароля. Как это устроено — в материале про ",[91,834,836],{"href":835},"\u002Fblog\u002Favtorizaciya-po-zvonku","авторизацию по звонку",[41,838,839,842],{},[24,840,841],{},"Подтверждение операции."," Смена пароля, изменение реквизитов, подтверждение заказа — там, где нужно доказать, что действие совершает владелец аккаунта.",[41,844,845,848],{},[24,846,847],{},"Оформление заказа и доставка."," Проверка контактного номера до того, как заказ уйдёт в сборку, а курьер — по адресу с неверным телефоном.",[41,850,851,854],{},[24,852,853],{},"Объявления и маркетплейсы."," Верификация продавца, борьба с мультиаккаунтами и фейковыми регистрациями.",[10,856,857,858,86],{},"Разбор по отраслям с конкретными задачами — в статье ",[91,859,861],{"href":860},"\u002Fblog\u002Fgde-nuzhna-verifikaciya-telefona","где нужна верификация телефона",[14,863,322],{"id":321},[10,865,866],{},"Интеграция занимает несколько часов и не требует SDK: это два HTTP-запроса к REST API.",[324,868,869,871,874,880],{},[41,870,328],{},[41,872,873],{},"На бэкенде вызовите создание проверки, передав ключ проекта и номер пользователя. Ключ хранится только на сервере: во фронтенде его размещать нельзя.",[41,875,876,877,879],{},"Отдайте выделенный номер во фронтенд и покажите его пользователю ссылкой ",[48,878,50],{}," с таймером на 60 секунд.",[41,881,882,883,885,886,888],{},"Опрашивайте статус проверки, пока он не станет ",[48,884,85],{}," или ",[48,887,346],{},", и обработайте оба исхода.",[10,890,891,892,894],{},"Пошаговое описание запросов, форматов и типичных ошибок интеграции — в материале про ",[91,893,367],{"href":366},". Инструкция с вашим собственным ключом открывается в кабинете на странице проекта сразу после регистрации.",{"title":374,"searchDepth":375,"depth":375,"links":896},[897,898,899,900,901,902,903],{"id":436,"depth":375,"text":437},{"id":537,"depth":375,"text":538},{"id":597,"depth":375,"text":598},{"id":709,"depth":375,"text":710},{"id":731,"depth":375,"text":732},{"id":814,"depth":375,"text":815},{"id":321,"depth":375,"text":322},"Как это работает",{"title":906,"text":907,"label":387,"href":388},"Попробуйте на своём проекте","Регистрация занимает минуту, ключ проекта выдаётся сразу. Тестовую проверку можно запустить с первого же запроса.","Разбираем, как подтвердить номер телефона звонком вместо SMS-кода: схема проверки, отличие от обычного flash call, стоимость и порядок подключения.",[910,913,916,919,922,925],{"q":911,"a":912},"Что будет, если пользователь позвонит с другого номера?","Проверка не подтвердится. Совпадение ищется по паре «выделенный номер + номер\nвызывающего абонента», и звонок с телефона, который не был указан при создании\nпроверки, к ней не привяжется. Через 60 секунд она перейдёт в статус `EXPIRED`,\nи деньги за неё списаны не будут.\n",{"q":914,"a":915},"Звонок платный для пользователя?","Оператор тарифицирует его как обычный вызов на российский номер, по тарифу абонента.\nНо соединение сбрасывается до ответа, а неотвеченные вызовы операторы не тарифицируют —\nна практике подтверждение обходится пользователю бесплатно.\n",{"q":917,"a":918},"Сработает ли проверка, если у вызывающего скрыт номер?","Нет. Определение номера вызывающего абонента — основа всего способа: если номер\nне передаётся, сопоставить звонок с проверкой не с чем. Так бывает при включённом\nантиопределителе и на корпоративных АТС, которые подменяют исходящий номер.\nДля таких пользователей нужен запасной способ подтверждения.\n",{"q":920,"a":921},"Что делать, если звонка так и не было?","Через 60 секунд после создания проверка сама переходит в `EXPIRED` — опрос статуса\nвернёт его вместо `PENDING`. Это штатная ситуация: покажите пользователю кнопку\n«Позвонить ещё раз» и создайте новую проверку. Тарифицируется только состоявшийся\nзвонок, поэтому повторные попытки ничего не стоят.\n",{"q":923,"a":924},"Сколько проверок можно запускать одновременно?","Ограничения на общее число параллельных проверок в проекте нет. Единственное\nтребование — уникальность пары «выделенный номер + номер звонящего» среди\nожидающих. Сервис сам подбирает подходящий номер из пула и распределяет по нему\nнагрузку, так что со стороны интеграции об этом думать не нужно.\n",{"q":926,"a":927},"Что произойдёт, если на балансе закончатся деньги?","Проверка просто не создастся: запрос на выдачу номера вернёт ошибку о недостатке\nсредств. Уже созданные проверки при этом дорабатывают штатно. Обработайте эту\nошибку в коде заранее — иначе форма регистрации молча перестанет работать,\nкогда баланс дойдёт до нуля.\n","Подтверждение номера телефона звонком: как это работает",{},1,[417,932,933],"servis-podtverzhdeniya-nomera","chto-takoe-flash-call",{"title":425,"description":908},"blog\u002Fpodtverzhdenie-nomera-zvonkom","Подтверждение номера звонком — способ проверить телефон без SMS и без одноразового кода.\nСервис выдаёт выделенный номер, пользователь звонит на него со своего телефона, вызов\nсбрасывается, а система по номеру вызывающего абонента понимает, что телефон принадлежит\nименно ему. Вводить ничего не нужно, отвечать на звонок тоже. Проверка живёт 60 секунд\nи стоит 0,20 ₽, причём списание происходит только за состоявшийся звонок.\n","Vs3hHENdsOH5tdu4ypInD_PfVG5qPC2vwutGGv1h_7s",{"id":939,"title":940,"body":941,"category":1244,"cta":1245,"description":1248,"draft":390,"extension":391,"faq":1249,"h1":1262,"meta":1263,"navigation":410,"order":1264,"path":356,"published":413,"related":1265,"seo":1268,"stem":1269,"summary":1270,"updated":413,"__hash__":1271},"blog\u002Fblog\u002Fpodtverzhdenie-nomera-na-sayte.md","Подтверждение номера телефона на сайте — как реализовать",{"type":7,"value":942,"toc":1237},[943,946,950,980,985,989,1053,1056,1066,1070,1110,1115,1119,1122,1171,1174,1178,1181,1184],[10,944,945],{},"Форма с подтверждением телефона нужна в трёх местах почти любого сайта: при регистрации, при оформлении заказа и при публикации объявления. Разбираем, какие есть варианты реализации, сколько они стоят и как собрать сценарий со звонком.",[14,947,949],{"id":948},"gde-na-sayte-nuzhno-podtverzhdat-nomer","Где на сайте нужно подтверждать номер",[38,951,952,957,963,969,975],{},[41,953,954,956],{},[24,955,825],{}," Отсечь фейковые аккаунты и получить рабочий контакт.",[41,958,959,962],{},[24,960,961],{},"Оформление заказа."," Убедиться, что курьер дозвонится, и отсечь ложные заказы — особенно при оплате при получении.",[41,964,965,968],{},[24,966,967],{},"Публикация объявления."," Подтверждённый контакт продавца снижает долю мошеннических размещений.",[41,970,971,974],{},[24,972,973],{},"Восстановление доступа."," Телефон как доказательство, что аккаунт принадлежит вам.",[41,976,977,979],{},[24,978,841],{}," Смена реквизитов, крупная покупка, изменение доставки.",[10,981,982,983,86],{},"Разбор задач по отраслям — в статье ",[91,984,861],{"href":860},[14,986,988],{"id":987},"varianty-realizacii-i-chto-oni-stoyat","Варианты реализации и что они стоят",[103,990,992],{"className":991},[106],[108,993,994,1010],{},[111,995,996],{},[114,997,998,1001,1004,1007],{},[117,999,1000],{},"Вариант",[117,1002,1003],{},"Срок внедрения",[117,1005,1006],{},"За что платите",[117,1008,1009],{},"Что ломается",[127,1011,1012,1025,1039],{},[114,1013,1014,1017,1020,1022],{},[132,1015,1016],{},"Своя интеграция с SMS-агрегатором",[132,1018,1019],{},"от недели",[132,1021,517],{},[132,1023,1024],{},"доставляемость, фильтры операторов, роуминг",[114,1026,1027,1030,1033,1036],{},[132,1028,1029],{},"Готовый виджет с кодом",[132,1031,1032],{},"день-два",[132,1034,1035],{},"по тарифу виджета, обычно за попытку",[132,1037,1038],{},"чужой интерфейс на вашем сайте, ограниченная кастомизация",[114,1040,1041,1044,1047,1050],{},[132,1042,1043],{},"Подтверждение звонком",[132,1045,1046],{},"день",[132,1048,1049],{},"только за состоявшийся звонок",[132,1051,1052],{},"не проходит при скрытом номере и у зарубежных SIM",[10,1054,1055],{},"У первых двух вариантов общая слабость: результат зависит от доставки сообщения, на которую вы не влияете. У третьего зависимость другая — от того, передаётся ли номер вызывающего абонента. Она затрагивает меньшую долю аудитории и, в отличие от доставляемости, предсказуема.",[10,1057,1058,1059,1061,1062,1065],{},"Как именно устроена проверка звонком — в статье про ",[91,1060,94],{"href":93},". Если ваш продукт живёт не только в вебе, посмотрите отличия мобильного сценария в материале про ",[91,1063,1064],{"href":361},"подтверждение номера в приложении",": там набор открывается одним касанием, и экран ожидания строится иначе.",[14,1067,1069],{"id":1068},"kak-vstroit-podtverzhdenie-zvonkom-5-shagov","Как встроить подтверждение звонком: 5 шагов",[324,1071,1072,1078,1084,1092,1098],{},[41,1073,1074,1077],{},[24,1075,1076],{},"Зарегистрируйтесь и создайте проект."," Он получит собственный ключ. Ключ живёт в переменных окружения на сервере — не в репозитории и не во фронтенде.",[41,1079,1080,1083],{},[24,1081,1082],{},"Добавьте эндпоинт «начать проверку» на своём бэкенде."," Он принимает номер от фронтенда, валидирует его, вызывает создание проверки и возвращает во фронтенд только идентификатор и выделенный номер.",[41,1085,1086,1089,1090,86],{},[24,1087,1088],{},"Покажите номер пользователю."," Крупно, с таймером на 60 секунд, на мобильных — ссылкой ",[48,1091,50],{},[41,1093,1094,1097],{},[24,1095,1096],{},"Добавьте эндпоинт «статус проверки»."," Фронтенд опрашивает его, а он проксирует запрос с ключом. Наружу отдавайте только статус — ни ключ, ни лишние поля клиенту не нужны.",[41,1099,1100,1103,1104,1106,1107,1109],{},[24,1101,1102],{},"Обработайте результат на бэкенде."," По ",[48,1105,85],{}," — помечайте номер подтверждённым и продолжайте сценарий, по ",[48,1108,346],{}," — предлагайте повторить.",[10,1111,1112,1113,86],{},"Запросы, форматы ответов и примеры кода — в материале про ",[91,1114,367],{"href":366},[14,1116,1118],{"id":1117},"chto-pokazat-polzovatelyu-v-forme","Что показать пользователю в форме",[10,1120,1121],{},"Экран ожидания звонка решает больше, чем кажется: именно на нём пользователь либо делает нужное действие, либо закрывает вкладку.",[38,1123,1124,1134,1140,1148,1154,1159,1165],{},[41,1125,1126,1129,1130,1133],{},[24,1127,1128],{},"Номер — самый крупный элемент экрана."," С разделителями, в привычном виде: ",[48,1131,1132],{},"+7 495 000-00-00",". Его будут набирать руками с другого устройства.",[41,1135,1136,1139],{},[24,1137,1138],{},"Кнопка копирования"," рядом с номером — на десктопе она нужнее, чем кажется.",[41,1141,1142,1147],{},[24,1143,1144,1145],{},"Ссылка ",[48,1146,50],{}," на мобильных: одно касание вместо переписывания.",[41,1149,1150,1153],{},[24,1151,1152],{},"Понятная инструкция."," «Позвоните на этот номер с телефона, который подтверждаете. Трубку брать не нужно — вызов оборвётся сам». Без слова «верификация».",[41,1155,1156,1158],{},[24,1157,62],{}," Показывает, что процесс идёт, и задаёт рамку ожидания.",[41,1160,1161,1164],{},[24,1162,1163],{},"Автопереход при подтверждении."," Пользователь не должен нажимать «Проверить» — экран меняется сам.",[41,1166,1167,1170],{},[24,1168,1169],{},"После истечения таймера"," — «Позвонить ещё раз» и ссылка «Подтвердить другим способом».",[10,1172,1173],{},"Отдельно про звонок с того же номера: предупредите об этом заранее, одной строкой под номером. Иначе часть пользователей позвонит с рабочего телефона, проверка не подтвердится, и причина будет неочевидна.",[14,1175,1177],{"id":1176},"kak-obrabotat-rezultat-na-bekende","Как обработать результат на бэкенде",[10,1179,1180],{},"Вебхуков в сервисе нет — результат забирается опросом статуса. Это упрощает интеграцию: не нужен публично доступный обработчик, не нужна проверка подписи, не нужно думать о повторных доставках.",[10,1182,1183],{},"Что учесть:",[38,1185,1186,1192,1204,1210,1219,1225,1231],{},[41,1187,1188,1191],{},[24,1189,1190],{},"Интервал опроса."," Раз в одну-две секунды достаточно. Чаще — бессмысленно, реже — заметная задержка на экране.",[41,1193,1194,1197,1198,1200,1201,1203],{},[24,1195,1196],{},"Условия остановки."," Три штуки: ",[48,1199,85],{},", ",[48,1202,346],{},", истёк локальный таймер. Без явных условий опрос продолжится после ухода пользователя со страницы.",[41,1205,1206,1209],{},[24,1207,1208],{},"Доверять только своему серверу."," Решение «номер подтверждён» принимается на бэкенде по ответу API, а не по тому, что прислал фронтенд.",[41,1211,1212,1215,1216,1218],{},[24,1213,1214],{},"Идемпотентность на своей стороне."," Один и тот же ",[48,1217,85],{}," может быть увиден несколькими запросами подряд — привязка номера должна отрабатывать один раз.",[41,1220,1221,1224],{},[24,1222,1223],{},"Проверка баланса."," Если средств не хватает, проверка не создастся и API вернёт ошибку. Обработайте её явно и заведите оповещение о низком балансе: иначе форма молча перестанет работать.",[41,1226,1227,1230],{},[24,1228,1229],{},"Ограничение частоты на своём эндпоинте."," Создание проверок стоит денег, поэтому лимит на число попыток с одного адреса или сессии нужен обязательно.",[41,1232,1233,1236],{},[24,1234,1235],{},"Валидация номера до отправки."," Приведите введённое к формату E.164 на своей стороне — так вы не потратите запрос на заведомо некорректный номер и покажете пользователю понятную ошибку сразу в форме.",{"title":374,"searchDepth":375,"depth":375,"links":1238},[1239,1240,1241,1242,1243],{"id":948,"depth":375,"text":949},{"id":987,"depth":375,"text":988},{"id":1068,"depth":375,"text":1069},{"id":1117,"depth":375,"text":1118},{"id":1176,"depth":375,"text":1177},"Реализация",{"title":1246,"text":1247,"label":387,"href":388},"Добавьте подтверждение на свой сайт","Два запроса к REST API, без SDK и лишних зависимостей. Ключ проекта выдаётся сразу после регистрации.","Как добавить на сайт подтверждение номера телефона: варианты реализации и их цена, сценарий со звонком, что показывать в форме и как обработать результат.",[1250,1253,1256,1259],{"q":1251,"a":1252},"Пользователь на десктопе — как он позвонит?","С телефона, глядя на экран компьютера. Поэтому номер нужно показывать крупно\nи с разделителями, чтобы его было легко набрать вручную, а не мелким шрифтом\nв одну строку. На мобильных браузерах номер должен быть ссылкой `tel:`.\n",{"q":1254,"a":1255},"Можно ли обойтись без бэкенда?","Нет. Ключ проекта нельзя размещать во фронтенде — из браузера его заберёт кто\nугодно и начнёт тратить ваш баланс. Создание проверки и опрос статуса должны\nидти через ваш собственный сервер.\n",{"q":1257,"a":1258},"Как часто опрашивать статус?","Достаточно раза в пару секунд: сценарий укладывается в 60 секунд, и более\nчастый опрос ничего не ускоряет. Прекращать опрос нужно по `CONFIRMED`,\nпо `EXPIRED` и по истечении таймера, иначе запросы будут идти вечно.\n",{"q":1260,"a":1261},"Что делать с пользователями, у которых звонок не проходит?","Оставить в форме ссылку «Подтвердить другим способом». Скрытый номер,\nзарубежная SIM и корпоративная АТС встречаются нечасто, но без запасного\nварианта такие пользователи не пройдут дальше.\n","Как сделать подтверждение номера телефона на сайте",{},7,[415,1266,1267],"podtverzhdenie-nomera-v-prilozhenii","api-podtverzhdeniya-nomera",{"title":940,"description":1248},"blog\u002Fpodtverzhdenie-nomera-na-sayte","Подтверждение номера на сайте делается тремя способами: своя интеграция с SMS-агрегатором,\nготовый виджет или проверка звонком. Последний вариант не требует доставки сообщения —\nпользователь сам звонит на выделенный номер, и вводить ему нечего. На бэкенде это два\nHTTP-запроса и три статуса, во фронтенде — кликабельный номер и таймер на 60 секунд.\nПодтверждение стоит 0,20 ₽, несостоявшееся не тарифицируется.\n","E4A1c-OYXZBIRTAoVrLxmuUT_fr8E9_Q658zLnHCN8E",{"id":1273,"title":1274,"body":1275,"category":383,"cta":1649,"description":1652,"draft":390,"extension":391,"faq":1653,"h1":1669,"meta":1670,"navigation":410,"order":375,"path":835,"published":413,"related":1671,"seo":1673,"stem":1674,"summary":1675,"updated":413,"__hash__":1676},"blog\u002Fblog\u002Favtorizaciya-po-zvonku.md","Авторизация звонком вместо SMS — как настроить вход",{"type":7,"value":1276,"toc":1639},[1277,1280,1283,1287,1290,1366,1369,1372,1376,1379,1409,1416,1421,1425,1428,1431,1451,1454,1458,1461,1464,1471,1475,1478,1489,1498,1502,1505,1511,1520,1571,1584,1586,1589,1612,1615,1617,1636],[10,1278,1279],{},"Вход по SMS-коду выглядит устоявшимся стандартом, но состоит из пяти отдельных шагов, на каждом из которых пользователь может отвалиться. Ввести номер, дождаться сообщения, переключиться в мессенджер или приложение SMS, запомнить или скопировать код, вернуться и ввести его — и всё это при условии, что сообщение вообще дошло.",[10,1281,1282],{},"Авторизация по звонку убирает четыре шага из пяти. Разбираем, как она устроена, где применима и что даёт по цифрам.",[14,1284,1286],{"id":1285},"sposoby-avtorizacii-po-nomeru-telefona","Способы авторизации по номеру телефона",[10,1288,1289],{},"Телефон как идентификатор давно вытеснил логин: он уникален, его не надо придумывать и его сложнее забыть. Различаются не идентификаторы, а способы доказать, что телефон ваш.",[103,1291,1293],{"className":1292},[106],[108,1294,1295,1310],{},[111,1296,1297],{},[114,1298,1299,1302,1304,1307],{},[117,1300,1301],{},"Способ",[117,1303,470],{},[117,1305,1306],{},"Что подтверждает",[117,1308,1309],{},"Слабое место",[127,1311,1312,1326,1339,1353],{},[114,1313,1314,1317,1320,1323],{},[132,1315,1316],{},"Пароль",[132,1318,1319],{},"вспоминает и вводит",[132,1321,1322],{},"знание секрета",[132,1324,1325],{},"забывают, переиспользуют, подбирают по утечкам",[114,1327,1328,1330,1333,1336],{},[132,1329,460],{},[132,1331,1332],{},"ждёт, читает, вводит",[132,1334,1335],{},"получение сообщения",[132,1337,1338],{},"доставляемость, задержки, ошибки ввода",[114,1340,1341,1344,1347,1350],{},[132,1342,1343],{},"Push в приложение",[132,1345,1346],{},"подтверждает нажатием",[132,1348,1349],{},"доступ к установленному приложению",[132,1351,1352],{},"требует приложения и работающих пушей",[114,1354,1355,1357,1360,1363],{},[132,1356,463],{},[132,1358,1359],{},"нажимает вызов",[132,1361,1362],{},"исходящий вызов с этого номера",[132,1364,1365],{},"нужен определяемый номер",[10,1367,1368],{},"У способов с телефоном общий принцип: подтверждается не знание, а владение. Разница в том, что именно считается доказательством владения — принятое сообщение или совершённый вызов.",[10,1370,1371],{},"Отдельно стоит сказать, чего в этом списке нет. Телефонная авторизация не заменяет и не отменяет пароль в сценариях, где нужен доступ без связи, и не превращает сервис в защищённый сам по себе. Это один слой из нескольких.",[14,1373,1375],{"id":1374},"kak-ustroen-vhod-po-zvonku","Как устроен вход по звонку",[10,1377,1378],{},"Со стороны пользователя всё выглядит как две кнопки. Со стороны системы — как короткий жизненный цикл проверки с тремя состояниями.",[324,1380,1381,1384,1389,1395,1400],{},[41,1382,1383],{},"Пользователь вводит номер и нажимает «Войти».",[41,1385,1386,1387,86],{},"Ваш бэкенд создаёт проверку: передаёт ключ проекта и номер в формате E.164. В ответ приходит идентификатор проверки и выделенный номер. Проверка получает статус ",[48,1388,577],{},[41,1390,1391,1392,1394],{},"Фронтенд показывает выделенный номер ссылкой ",[48,1393,50],{}," и таймер на 60 секунд.",[41,1396,1397,1398,86],{},"Пользователь звонит. Отвечать не нужно — сервис фиксирует вызов и сбрасывает соединение. Звонок сопоставляется с проверкой по паре «выделенный номер + номер вызывающего абонента», проверка переходит в ",[48,1399,85],{},[41,1401,1402,1403,1405,1406,1408],{},"Бэкенд опрашивает статус проверки. Увидел ",[48,1404,85],{}," — открывает сессию и выдаёт токен. Увидел ",[48,1407,346],{}," — предлагает позвонить ещё раз.",[10,1410,1411,1412,1415],{},"Ключевой момент для проектирования: ",[24,1413,1414],{},"сессия создаётся только на вашей стороне и только после подтверждения",". Сервис проверки не выдаёт токенов и ничего не знает о вашей модели пользователей — он отвечает ровно на один вопрос, звонил ли этот номер. Поэтому вход по звонку встраивается в существующую аутентификацию как ещё один провайдер, а не как её замена.",[10,1417,1418,1419,86],{},"Подробный разбор самого механизма проверки — в статье про ",[91,1420,94],{"href":93},[14,1422,1424],{"id":1423},"avtorizaciya-bez-parolya","Авторизация без пароля",[10,1426,1427],{},"Passwordless-сценарий — тот случай, когда пароля у пользователя нет вообще. При регистрации он оставляет номер, при каждом входе подтверждает владение им. Хранить в базе нечего: нет хеша пароля, нет процедуры восстановления, нет писем со ссылкой сброса.",[10,1429,1430],{},"Это снимает целый класс задач:",[38,1432,1433,1439,1445],{},[41,1434,1435,1438],{},[24,1436,1437],{},"Восстановление доступа исчезает как отдельный сценарий."," Вход и восстановление становятся одним и тем же действием — подтвердить номер.",[41,1440,1441,1444],{},[24,1442,1443],{},"Нечего утекать."," База без паролей не представляет ценности для перебора по другим сервисам.",[41,1446,1447,1450],{},[24,1448,1449],{},"Нет поддержки по забытым паролям."," По статистике любой службы поддержки это заметная доля обращений.",[10,1452,1453],{},"Взамен появляется жёсткая зависимость: потерял доступ к номеру — потерял доступ к аккаунту. Поэтому passwordless разумен там, где номер и так является основным контактом — доставка, объявления, программы лояльности, — и рискован там, где аккаунт живёт годами и переживает смену телефона. В последнем случае нужен запасной канал: почта, резервные коды или второй привязанный номер.",[14,1455,1457],{"id":1456},"zvonok-kak-vtoroy-faktor","Звонок как второй фактор",[10,1459,1460],{},"Если пароль остаётся, звонок работает вторым фактором. Схема стандартная: пользователь вводит логин и пароль, система создаёт проверку и просит позвонить, сессия открывается только после подтверждения.",[10,1462,1463],{},"По сравнению с другими вторыми факторами звонок находится примерно там же, где SMS-код: он подтверждает владение номером и наследует его слабости, включая подмену SIM-карты. Честное сравнение выглядит так — приложение-генератор одноразовых кодов надёжнее, но требует от пользователя установки и настройки, а телефон есть у всех. Звонок выигрывает не в стойкости, а в том, что через него проходят почти все пользователи, тогда как до настройки TOTP доходит меньшинство.",[10,1465,1466,1467,86],{},"Тот же механизм закрывает и подтверждение отдельных действий — смену пароля, изменение реквизитов, крупную операцию. Разбор трёх сценариев целиком — в материале про ",[91,1468,1470],{"href":1469},"\u002Fblog\u002Fpodtverzhdenie-pri-registracii-i-vhode","подтверждение при регистрации, входе и операциях",[14,1472,1474],{"id":1473},"vhod-po-zvonku-na-sayte-i-v-prilozhenii","Вход по звонку на сайте и в приложении",[10,1476,1477],{},"Механизм один, интерфейс разный.",[10,1479,1480,1483,1484,1486,1487,86],{},[24,1481,1482],{},"На сайте"," пользователь чаще всего сидит с десктопа, а звонит с телефона. Значит, номер нужно показать крупно и в удобном для набора виде, а не мелким моноширинным текстом. На мобильном браузере обязательна ссылка ",[48,1485,50],{}," — иначе номер придётся переписывать руками, и это худшая точка сценария. Детали реализации — в статье про ",[91,1488,357],{"href":356},[10,1490,1491,1494,1495,86],{},[24,1492,1493],{},"В приложении"," сценарий короче: набор открывается одним касанием через системный диалер, а после возврата в приложение статус уже подтверждён. Важное отличие от обычного flash call — приложению не нужны разрешения на чтение SMS или журнала вызовов, а их выдачу ограничивают и Google Play, и App Store. Подробности — в материале про ",[91,1496,1497],{"href":361},"подтверждение номера в мобильном приложении",[14,1499,1501],{"id":1500},"chto-eto-daet-po-cifram","Что это даёт по цифрам",[10,1503,1504],{},"Считать эффект нужно в двух местах: на конверсии входа и на стоимости.",[10,1506,1507,1510],{},[24,1508,1509],{},"Конверсия."," Из сценария уходят три шага, на которых теряются пользователи: ожидание сообщения, переключение в другое приложение и ручной ввод кода. Отдельно исчезает самая болезненная ситуация — сообщение не пришло вовсе, и пользователю нечего вводить. Сколько именно вы получите, зависит от вашей аудитории и текущей доставляемости, поэтому единственный честный способ — включить звонок как альтернативный способ входа и сравнить две воронки на своих данных.",[10,1512,1513,1516,1517,1519],{},[24,1514,1515],{},"Стоимость."," Одна успешная авторизация — 0,20 ₽, абонентской платы нет. Тарифицируется только состоявшийся звонок: проверка, ушедшая в ",[48,1518,346],{},", не стоит ничего. В SMS-сценарии оплачивается отправка независимо от того, дошло сообщение и вошёл ли пользователь.",[103,1521,1523],{"className":1522},[106],[108,1524,1525,1536],{},[111,1526,1527],{},[114,1528,1529,1532,1534],{},[117,1530,1531],{},"Входов в месяц",[117,1533,760],{},[117,1535,763],{},[127,1537,1538,1549,1560],{},[114,1539,1540,1543,1546],{},[132,1541,1542],{},"5 000",[132,1544,1545],{},"1 000 ₽",[132,1547,1548],{},"800 ₽",[114,1550,1551,1554,1557],{},[132,1552,1553],{},"50 000",[132,1555,1556],{},"10 000 ₽",[132,1558,1559],{},"8 000 ₽",[114,1561,1562,1565,1568],{},[132,1563,1564],{},"200 000",[132,1566,1567],{},"40 000 ₽",[132,1569,1570],{},"32 000 ₽",[10,1572,1573,1574,1578,1579,1581,1582,86],{},"Развёрнутое сравнение с SMS по шести параметрам — в материале ",[91,1575,1577],{"href":1576},"\u002Fblog\u002Fflash-call-ili-sms","flash call или SMS",", критерии выбора провайдера — в разборе ",[91,1580,811],{"href":810},". Актуальные цены — на странице ",[91,1583,372],{"href":371},[14,1585,280],{"id":279},[10,1587,1588],{},"Раздел, без которого материал читался бы рекламой.",[38,1590,1591,1597,1601,1606],{},[41,1592,1593,1596],{},[24,1594,1595],{},"Пользователь за пределами России."," Пул состоит из российских номеров, зарубежные абоненты сценарий не пройдут.",[41,1598,1599,297],{},[24,1600,296],{},[41,1602,1603,1605],{},[24,1604,302],{}," Есть интернет, но нет сети оператора — например, зарубежная SIM с одним мобильным интернетом.",[41,1607,1608,1611],{},[24,1609,1610],{},"Требуется вход без телефона под рукой."," Тут работает только пароль или резервные коды.",[10,1613,1614],{},"Практический вывод: звонок ставится основным способом, а SMS или пароль остаются запасным. Кнопка «Войти другим способом» рядом с таймером снимает почти все перечисленные случаи и заодно страхует от сбоя у любого одного провайдера.",[14,1616,322],{"id":321},[324,1618,1619,1621,1624,1633],{},[41,1620,328],{},[41,1622,1623],{},"Добавьте в бэкенд создание проверки при нажатии «Войти» и опрос её статуса.",[41,1625,1626,1627,1629,1630,1632],{},"Выдавайте токен сессии только по статусу ",[48,1628,85],{},", обрабатывайте ",[48,1631,346],{}," как повод предложить повторный вызов.",[41,1634,1635],{},"Оставьте в интерфейсе запасной способ входа.",[10,1637,1638],{},"Инструкция с вашим ключом, запросами и форматами ответов открывается в кабинете на странице проекта сразу после регистрации.",{"title":374,"searchDepth":375,"depth":375,"links":1640},[1641,1642,1643,1644,1645,1646,1647,1648],{"id":1285,"depth":375,"text":1286},{"id":1374,"depth":375,"text":1375},{"id":1423,"depth":375,"text":1424},{"id":1456,"depth":375,"text":1457},{"id":1473,"depth":375,"text":1474},{"id":1500,"depth":375,"text":1501},{"id":279,"depth":375,"text":280},{"id":321,"depth":375,"text":322},{"title":1650,"text":1651,"label":387,"href":388},"Соберите вход по звонку в своём проекте","Ключ проекта выдаётся сразу после регистрации, тестовую авторизацию можно прогнать в тот же день.","Как работает авторизация звонком: пользователь звонит на выделенный номер вместо ввода SMS-кода. Схема входа, passwordless, второй фактор и стоимость 0,20 ₽.",[1654,1657,1660,1663,1666],{"q":1655,"a":1656},"Чем это лучше входа по паролю?","Не лучше и не хуже — это разные компромиссы. Пароль не зависит от связи и работает\nгде угодно, но его забывают, переиспользуют между сервисами и подбирают по утечкам.\nВход по звонку снимает эти три проблемы, но требует, чтобы телефон был под рукой\nи находился в зоне действия сети. Разумно давать оба способа.\n",{"q":1658,"a":1659},"Можно ли оставить пароль и добавить звонок вторым фактором?","Да, это самый частый сценарий внедрения. Первый фактор остаётся прежним — логин\nи пароль, — а звонок подтверждает, что за входом стоит владелец привязанного\nномера. Переделывать существующую аутентификацию при этом не нужно.\n",{"q":1661,"a":1662},"Что происходит с сессией, пока пользователь звонит?","Ничего: до подтверждения сессии нет. Сервер держит проверку в статусе `PENDING`\nи выдаёт токен только после того, как звонок зафиксирован. Если за 60 секунд\nвызова не было, проверка становится `EXPIRED`, и вход не происходит.\n",{"q":1664,"a":1665},"Насколько это защищает от перехвата чужого аккаунта?","Ровно настолько, насколько защищён сам номер. Подтверждение владения телефоном\nне спасает от подмены SIM-карты — как и SMS-код. Если сценарий требует стойкости\nк таким атакам, звонок нужно дополнять другим фактором, а не заменять им всё.\n",{"q":1667,"a":1668},"Пользователь звонит каждый раз при входе?","Только когда нужна новая сессия. Дальше работает обычный токен с вашим сроком\nжизни, и повторная авторизация требуется по тем же правилам, что и раньше.\nЧастоту вызовов определяет ваша политика сессий, а не сервис подтверждения.\n","Авторизация по звонку: вход в сервис без SMS и пароля",{},[415,1672,932],"podtverzhdenie-pri-registracii-i-vhode",{"title":1274,"description":1652},"blog\u002Favtorizaciya-po-zvonku","Авторизация звонком заменяет SMS-код на исходящий вызов: пользователь нажимает «Войти»,\nзвонит на показанный номер, вызов сбрасывается — и сессия открывается сама. Вводить\nи запоминать нечего, ждать доставки сообщения не нужно. Способ закрывает и обычный вход,\nи passwordless-сценарий без пароля, и подтверждение входа вторым фактором. Стоит 0,20 ₽\nза успешную проверку, несостоявшаяся не тарифицируется.\n","rJy3HQrXuyQ2azZOP7so-umzKVLSYwXhhmnG_2xR620",{"data":1678,"body":1679},{},{"type":1680,"children":1681},"root",[1682],{"type":1683,"tag":10,"props":1684,"children":1685},"element",{},[1686],{"type":1687,"value":1688},"text","Регистрация по звонку — сценарий, в котором пользователь подтверждает телефон\nисходящим вызовом, а не полученным кодом. Форма показывает номер, пользователь нажимает\n«Позвонить», вызов сбрасывается — регистрация завершена. Вместо пяти шагов остаётся два,\nиз воронки уходит ожидание сообщения и ручной ввод цифр. Подтверждение стоит 0,20 ₽,\nнесостоявшаяся проверка не тарифицируется.",{"data":1690,"body":1691},{},{"type":1680,"children":1692},[1693],{"type":1683,"tag":10,"props":1694,"children":1695},{},[1696],{"type":1687,"value":1697},"Если формулировать действием, а не термином — да. Работает «Позвоните на этот\nномер, трубку брать не нужно» и крупная кнопка вызова. Не работает «пройдите\nверификацию методом обратного flash call»: пользователю не нужно название\nтехнологии, ему нужно понятное указание.",{"data":1699,"body":1700},{},{"type":1680,"children":1701},[1702],{"type":1683,"tag":10,"props":1703,"children":1704},{},[1705],{"type":1687,"value":1706},"Оставить в форме вторую кнопку — «Подтвердить другим способом». Скрытый номер,\nзарубежная SIM и корпоративная АТС встречаются редко, но такие пользователи\nбез запасного варианта не зарегистрируются вообще.",{"data":1708,"body":1709},{},{"type":1680,"children":1710},[1711],{"type":1683,"tag":10,"props":1712,"children":1713},{},[1714],{"type":1687,"value":1715},"Да, и так правильнее. Включите звонок части аудитории, оставив остальным\nпрежний сценарий, и сравните две воронки на своих данных — от «ввёл номер»\nдо «завершил регистрацию».",{"data":1717,"body":1718},{},{"type":1680,"children":1719},[1720],{"type":1683,"tag":10,"props":1721,"children":1722},{},[1723,1725,1730],{"type":1687,"value":1724},"Ноль. Если пользователь не позвонил, проверка через 60 секунд становится\n",{"type":1683,"tag":48,"props":1726,"children":1728},{"className":1727},[],[1729],{"type":1687,"value":346},{"type":1687,"value":1731}," и не тарифицируется. Повторные попытки тоже бесплатны, пока\nзвонок не состоялся.",{"data":1733,"body":1734},{},{"type":1680,"children":1735},[1736],{"type":1683,"tag":10,"props":1737,"children":1738},{},[1739],{"type":1687,"value":1740},"Нет, сценарий работает и в обычном браузере. В приложении он чуть удобнее —\nнабор открывается одним касанием, — но принципиально ничего не меняется.",1787687891501]