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