# VoiceCode

<mark style="color:$info;">Надежный канал для авторизации, регистрации, восстановления доступа и других сценариев, где важно быстро и безопасно подтвердить номер пользователя</mark>

### Общая информация&#x20;

VoiceCode — это канал отправки кода подтверждения в голосовом вызове. Пользователю необходимо ответить на звонок, прослушать код и ввести его в интерфейсе сайта или приложения.

В отличие от FlashCall, в VoiceCode код передается в голосовом сообщении, а не определяется по номеру звонка. Такой формат обеспечивает более стабильную доставку, поскольку голосовые вызовы реже блокируются операторами (за счет того, что пользователь снимает трубку, а значит применяется посекундная тарификация звонка, а в случае с FlashСall операторы не тарифицировали звонок).

::::::{tip}
Ручная отправка VoiceCode в личном кабинете недоступна. Канал используется только через интеграцию.
::::::

### Как работает VoiceCode

{% stepper %}
{% step %}
Ваша система генерирует одноразовый код&#x20;


{% endstep %}

{% step %}
Вы передаёте номер телефона, код и бренд через Direct API или SMPP


{% endstep %}

{% step %}
Сервис инициирует голосовой вызов на номер абонента


{% endstep %}

{% step %}
Пользователь отвечает на звонок, прослушивает код и вводит его в интерфейсе
{% endstep %}
{% endstepper %}

### Шаблоны голосового сообщения

Шаблоны для трафика по России:

* `Код авторизации от {Бренд}: {Код}`
* `Код авторизации от {Бренд}: {Код}. Повторяю: {Код}`
* `Ваш код доступа к сервису {Бренд} {Код}, повторяю {Код}`

::::::{tip}
От количества повторов кода в звонке зависит тарификация.&#x20;
::::::

Шаблоны для международного трафика:

* `Your code is {Код}`
* `Ваш код - {Код}`

Значения операнд:

* `{Бренд}` — название компании, сервиса или продукта.
* `{Код}` — одноразовый код подтверждения.

Код может быть передан слитно, с пробелами или с разделителями, например через дефис.

::::::{tip}
Для одного подключения используется один выбранный шаблон.&#x20;
::::::

### Подключение канала

VoiceCode можно подключить несколькими способами:

* `Direct API` — для отправки кодов через [HTTP API](https://api.docs.direct.i-dgtl.ru/messages/voicecode-sending).
* `SMPP` — для интеграции через SMPP-протокол (необходимо обратиться в поддержку [support@i-dgtl.ru](mailto:support@i-dgtl.ru)).
* `Виджет верификации` — для сценариев, где пользователю нужно показать ожидаемый канал доставки или дать выбор способа получения кода.

Если вы используете виджет верификации, настройка выполняется по [инструкции](https://faq.docs.direct.i-dgtl.ru/resheniya/podtverzhdenie-nomera-telefona/vidzhet-verifikacii-telefona)

### Основные параметры канала

* VoiceCode доступен для отправки по России и на международные направления.
* Срок доставки кода: от 40 секунд.
* Максимальное время финализации звонка: до 60 секунд.
* Повторный вызов на тот же номер возможен от 30 секунд.
* Звонок может поступать с российского или международного номера.
* Тарифицируются все отправленные сообщения.

::::::{tip}
С актуальными тарифами по каналу можно ознакомиться в разделе [Тарифы](https://direct.i-dgtl.ru/tariffs/voice/#voicecode).
::::::

### Рекомендации по использованию

* Сообщите пользователю в интерфейсе, что код поступит в голосовом звонке.
* Добавьте кнопку повторной отправки кода.
* Проверяйте статус доставки после каждого вызова.
* Настройте резервный сценарий, например отправку SMS при недоставке голосового сообщения.
* Если вы не используете виджет верификации, предусмотрите выбор между VoiceCode и другими способами подтверждения.
* Для повышения процента доставки настройте [каскад](https://faq.docs.direct.i-dgtl.ru/kanaly-otpravki/kaskadnye-rassylki#kak-sozdat-kaskadnuyu-rassylku-cherez-api) VoiceCode + SMS.
