Программный приём кодов подтверждения +966 для запусков в Саудовской Аравии

Телефонный код +966OTP Gateway от $0.20 за кодВыделенные номера: только США и КанадаID API: sa
Краткий ответ

OTP Route позволяет принимать коды подтверждения Саудовской Аравии (+966) через OTP Gateway: создайте активацию для страны sa через REST API, получите код подписанным вебхуком или опросом либо сделайте то же самое в панели, от $0.20 за код. Один номер рассчитан на один код, окно — 20 минут, а активация без SMS возвращается полностью.

Как выглядит одна активация +966 через API?

Начнём с вызовов: большинство читателей этой страницы подключают API SMS-верификации к набору тестов или внутреннему инструменту. Все эндпоинты находятся под https://otproute.com/api/v1 и требуют Bearer-ключ с префиксом or_live_, созданный в консоли разработчика.

  1. GET /api/v1/countries и GET /api/v1/services возвращают идентификаторы. Саудовская Аравия — sa.
  2. GET /api/v1/prices?country=sa&service=<id> возвращает актуальную цену для этой пары; записывайте её рядом с результатом прогона.
  3. POST /api/v1/activations с {"service": "<id>", "country": "sa"} возвращает идентификатор активации и номер +966.
  4. Ваш тест вводит номер в приложении, а код приходит событием или через GET /api/v1/activations/{id}.
  5. Если тест прерван, POST /api/v1/activations/{id}/cancel освобождает номер и возвращает деньги на кошелёк.

GET /api/v1/balance удобен как предполётная проверка: ночное задание упадёт сразу с понятным сообщением, а не посреди прогона. Лимиты, которые нужно учитывать: 10 ключей и 5 эндпоинтов вебхуков на аккаунт, 300 запросов в минуту.

Как нашему приёмнику вебхуков обрабатывать саудовские события OTP?

Зарегистрируйте эндпоинт и подпишитесь на activation.sms_received, activation.expired и activation.cancelled. Каждый запрос содержит заголовок X-OTPRoute-Signature в виде t=<unix>,v1=<hex>.

  • Соберите подписанную строку <t>.<raw body> и вычислите HMAC-SHA256 с секретом этого эндпоинта.
  • Сравните с v1 функцией с постоянным временем выполнения и отклоняйте всё, у чего слишком старая метка времени.
  • Считайте каждое событие привязанным к идентификатору активации, чтобы повторная доставка ничего не обновляла дважды.
  • Быстро отвечайте кодом 2xx, а тяжёлую работу переносите в фоновое задание.

Опрос остаётся допустимым запасным вариантом для раннеров, которые не принимают входящие соединения. Подробнее — в наших материалах о перехвате OTP через вебхуки и защите вебхуков OTP с помощью HMAC.

Зачем продуктовые команды тестируют с номером +966?

Саудовская Аравия — один из крупнейших цифровых рынков Персидского залива, и на эту страницу попадают по практическим причинам: финтех готовит онбординг для жителей Саудовской Аравии, маркетплейс подключает продавцов из стран Залива, у SaaS-вендора клиент требует региональную проверку входа, или операционная команда ведёт бизнес-аккаунты офиса в Эр-Рияде или Джидде. В каждом случае кому-то нужно доказать, что сценарий работает с настоящим саудовским номером подтверждения, а маршрутизация OTP через шлюз избавляет от пересылки SIM-карт в регион. Эта ситуация подробнее описана на странице онбординг в финтехе.

Какие сервисы получают коды на саудовских маршрутах?

Актуальный снимок по Саудовской Аравии включает более 1,000 сервисов. Из часто используемых — Snapchat, WhatsApp, X (Twitter), Uber, TikTok, Instagram, Google (Gmail & YouTube), Telegram, Amazon, Microsoft & Outlook, LinkedIn, Discord и Netflix. У Snapchat и X в королевстве особенно большая аудитория, поэтому они часто попадают в чек-лист локализации. Наличие меняется в течение дня, поэтому запрашивайте API во время выполнения.

Как форматировать номера +966 и разбирать сообщения на арабском?

Внутри страны саудовские мобильные номера пишут с кодом выхода 0, обычно как 05 и ещё восемь цифр. В международной форме этот ноль убирается: +966 5 и оставшиеся восемь цифр. Приводите всё к E.164 при вводе и убирайте ноль, если пользователь набирает его после кода страны.

Официальный язык — арабский, поэтому проверочные тексты могут приходить на арабском, английском или на обоих языках. Арабский пишется справа налево, а в некоторых шаблонах вместо западных цифр могут использоваться арабо-индийские. Парсер, который приводит такие цифры к ASCII перед сопоставлением и логирует исходный UTF-8, избавит от неприятного класса ложных сбоев.

Есть ли путь через панель для тех, кто не пишет код?

Да. Войдите в OTP Route, откройте OTP Gateway, выберите Саудовскую Аравию и сервис, проверьте цену и подтвердите. Номер появится сразу, а код отобразится рядом с ним после прихода. Сотрудник поддержки может за пару минут воспроизвести проблему клиента с регистрацией.

Что, если код не пришёл, и как быть с долгосрочными линиями и оплатой?

Если SMS не пришло в течение 20 минут или вы отменили активацию, вся сумма автоматически возвращается на кошелёк. Дождитесь конца окна, повторите позже или через другой маршрут сервиса, убедитесь, что сервис принимает виртуальные номера, и не заказывайте заново в плотном цикле.

Самообслуживаемого долгосрочного саудовского номера нет. Dedicated Virtual Numbers предлагаются только в США и Канаде, от $1.95/месяц; для долгосрочной линии +966 напишите на [email protected], учитывая, что возможность определяют местные правила.

Оплата идёт с одного предоплаченного кошелька в долларах США по принципу «платите по факту» без абонентской платы. Для пополнения подходят карты и USDT/USDC, а каждое пополнение сопровождается PDF-счётом на почту. Аккаунт разработки по запросу можно перевести в песочницу с имитированными номерами и кодами. Актуальные цены смотрите на странице тарифов.

Частые вопросы

Как получить саудовский SMS OTP через API?

Создайте активацию со страной sa и идентификатором вашего сервиса, затем возьмите код из вебхука activation.sms_received или опросом активации.

Спишут ли деньги за тестовый номер +966, если код не пришёл?

Нет. Если кода нет, вся сумма возвращается на кошелёк, когда закрывается окно в 20 минут или вы отменяете активацию.

Можно ли протестировать регистрацию в Саудовской Аравии без местной SIM-карты?

Да. OTP Gateway выдаёт номер +966 на один код: вы вводите его в приложении и читаете результат в панели или через API.

Как хранить саудовский мобильный номер, введённый как 05XXXXXXXX?

Отбросьте ноль и сохраните как +966 5 и оставшиеся восемь цифр в формате E.164.

Можем ли мы сохранить один саудовский номер для последующих входов?

Самостоятельно — нет, потому что долгосрочные Dedicated Numbers есть только для США и Канады. Если нужна саудовская линия, напишите команде, без гарантии, что её удастся предоставить.

Можно ли отработать саудовский сценарий до того, как в дело пойдут настоящие деньги?

Да. Запросите режим песочницы для аккаунта разработки, чтобы получать имитированные номера и коды, включая вебхуки.

Какое использование разрешает OTP Route?

Тестирование и работу с вашими собственными легитимными продуктами и аккаунтами. Соблюдайте условия каждого сервиса; действуют правила допустимого использования OTP Route.

Названия сервисов являются товарными знаками их владельцев. OTP Route не связан с ними. Используйте номера законно, соблюдайте условия каждого сервиса и нашу Политику допустимого использования.

Направьте первый OTP за несколько минут

Создайте бесплатный аккаунт, пополните USD-кошелёк и закажите номер в панели или через API. Без абонентской платы.