Подключаем коды верификации Кабо-Верде (+238) к вашему тестовому стеку

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

С помощью OTP Route можно принимать SMS-коды подтверждения из Кабо-Верде (+238): закажите одноразовый номер в OTP Gateway и прочитайте код через REST API, подписанный вебхук или панель. Цены начинаются от $0.20 за код, актуальную стоимость для каждого сервиса возвращает GET /api/v1/prices, а если SMS не пришло в течение 20-минутного окна, кошелёк пополняется обратно полностью.

Каких эндпоинтов касается активация +238?

Для интеграции OTP API Кабо-Верде нужен лишь короткий набор вызовов по адресу https://otproute.com/api/v1. Каждый запрос содержит Bearer-ключ с префиксом or_live_, созданный в консоли разработчика. Идентификатор страны для Кабо-Верде — cv, а идентификатор сервиса — это значение api_service того приложения, которое вы тестируете.

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

Вызов GET /api/v1/balance перед запуском позволяет набору тестов остановиться заранее, а не упасть на полпути. Лимит составляет 300 запросов в минуту на аккаунт, а все поля перечислены в справочнике API.

Как принять подписанный вебхук с кодом из Кабо-Верде?

Опроса хватает для одного скрипта, но когда параллельно идут несколько задач, вебхук удобнее. Зарегистрируйте эндпоинт в консоли разработчика (на аккаунте их может быть пять) и подпишитесь на activation.sms_received, activation.expired и activation.cancelled.

Каждый POST приходит с заголовком X-OTPRoute-Signature в формате t=<unix>,v1=<hex>. Соберите строку <t>.<raw body>, подпишите её HMAC-SHA256 с секретом этого эндпоинта и сравните результат с v1 проверкой за постоянное время. Отбрасывайте всё, чья метка времени старше нескольких минут, чтобы перехваченный запрос нельзя было воспроизвести. Затем привяжите обработку к идентификатору активации: если то же событие придёт дважды, вторая копия не должна ничего менять. Подробности есть в нашей статье о защите вебхуков OTP с помощью HMAC.

Какие приложения могут присылать коды на номер Кабо-Верде сегодня?

Актуальный каталог для cv охватывает более 800 сервисов. Среди популярных, открытых в данный момент: WhatsApp, Facebook, Instagram, TikTok, Google (Gmail & YouTube), Microsoft & Outlook, Amazon, Airbnb, Uber, Viber, Telegram и Netflix. Воспринимайте этот список как снимок: маршруты открываются и закрываются вслед за ёмкостью партнёров, и в этом смысл OTP-маршрутизации через API, который сообщает о доступности в реальном времени, а не страницу с обещаниями.

Если в команде никто не пишет код, ту же задачу решает панель. Выберите сервис, выберите Кабо-Верде, подтвердите цену на экране и скопируйте номер. Код появится на карточке активации, как только придёт.

Как выглядит номер +238 при хранении?

В Кабо-Верде закрытый план нумерации: национальные номера из семи цифр и без префикса для внутренних звонков, так что убирать ведущий ноль не нужно. В формате E.164 номер — это просто +238 и эти семь цифр. Нормализация тривиальна, но короткая длина сбивает валидаторы, которые считают все абонентские номера более длинными, и это частая причина, по которой форма отклоняет вполне корректный номер из Кабо-Верде. Храните строку E.164, форматируйте её в интерфейсе как вам удобно и добавьте случай +238 в юнит-тесты поля телефона.

Официальный язык — португальский, а в повседневной жизни большинство говорит на капвердианском креольском, так что проверьте, как португальский шаблон OTP отображается на местном устройстве. Номер +238 для тестов команды обычно берут из-за диаспоры: капвердийские общины в США, Португалии и других странах Европы держат аккаунты, привязанные к домашним номерам, а продукты для денежных переводов, путешествий и общения хотят, чтобы такая регистрация работала.

Что происходит с кошельком, если SMS не пришло за 20 минут?

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

  • Дайте окну дойти до конца, а не создавайте новый заказ каждые несколько секунд; плотный цикл повторов только замораживает средства.
  • Повторите позже или проверьте тот же сценарий через другой сервисный маршрут.
  • Убедитесь, что приложение вообще принимает виртуальные номера; некоторые отказывают по политике, и возврат существует именно для такого случая.
  • Проверьте, что ваша форма отправила полный номер +238, а не обрезанный.

Подробнее о диагностике читайте в руководстве по снижению числа неудачных доставок OTP.

Можно ли сохранить номер Кабо-Верде для повторных входов?

В режиме самообслуживания нельзя. Dedicated Numbers (выделенные номера) от OTP Route — долгосрочные линии с входящими и исходящими SMS, звонками из браузера и пересылкой на вебхук — это продукт для США и Канады, от $1.95/месяц. Самостоятельно оформить долгосрочную линию +238 нельзя. Если у вашей команды есть реальная потребность, напишите на [email protected]; возможность зависит от местных правил и не гарантируется. Для стейджинг-аккаунта, в который нужно заходить снова и снова, практичным решением часто служит американский или канадский виртуальный номер.

Как тарифицируется использование и как всё протестировать до запуска?

Оплата идёт с единого предоплаченного кошелька в долларах США, без абонентской платы и тарифных планов. Пополнять можно картой или стейблкоинами USDT/USDC; за каждое пополнение на почту приходит PDF-счёт, что упрощает сверку у бухгалтерии. Прежде чем боевые ключи начнут тратить кошелёк, попросите перевести тестовый аккаунт в режим песочницы: он возвращает имитированные номера и коды, так что цепочку заказа, вебхука и отмены вашего клиента API для SMS-верификации можно прогонять в CI, ничего не тратя. Смотрите тарифы и обзор для QA-тестирования. Всегда соблюдайте условия каждого сервиса и политику допустимого использования OTP Route.

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

Можно ли проверить регистрацию в моём приложении для Кабо-Верде без местной SIM-карты?

Да. Закажите номер +238 в OTP Gateway, введите его в форме регистрации и прочитайте код в панели, через API или вебхук. Никому из команды не нужно находиться на островах.

Какой идентификатор страны для Кабо-Верде в API OTP Route?

cv. Передавайте его как country в POST /api/v1/activations и в запросе цен.

Нужно ли добавлять 0 перед номером Кабо-Верде?

Нет. В Кабо-Верде нет префикса для внутренних звонков, поэтому международная форма — это просто +238 и семизначный национальный номер.

Сколько стоит номер для верификации в Кабо-Верде?

Цены OTP Gateway начинаются от $0.20 за код и зависят от сервиса; точную стоимость API и панель показывают до заказа. Платить нужно только если код пришёл.

Будут ли все приложения присылать коды на виртуальный номер Кабо-Верде?

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

Есть ли песочница для тестирования интеграции с +238?

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

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

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

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