ВойтиНачать бесплатный пробный период
Meta Tech Provider

«Срок действия кода авторизации истёк» после подключения Coexistence

Когда Embedded Signup от Meta завершается, платформа, запустившая его, получает короткоживущий код. Его нужно обменять на токен доступа в течение 30 секунд. Если обмен происходит позже или используется код из предыдущей попытки, Meta отвечает, что срок действия кода авторизации истёк. Повторный запуск процесса выдаёт новый код.

30 seconds

Срок жизни, который Meta задаёт для кода обмена на токен, возвращаемого Embedded Signup.

Server-side

По требованию Meta обмен на токен выполняется только запросом между серверами, но не на стороне клиента.

24 hours

Время, которое есть у платформы после подключения, чтобы синхронизировать историю номера Coexistence, прежде чем процесс придётся пройти заново.

Какой код истёк?

Когда бизнес завершает Embedded Signup, Meta возвращает идентификаторы активов и код обмена на токен в окно браузера, из которого было открыто всплывающее окно. Затем платформа отправляет этот код на свой сервер, а сервер обращается к эндпоинту oauth access_token от Meta со своим идентификатором приложения и секретом приложения и обменивает код на токен бизнеса.

Руководство Meta по реализации чётко указывает срок: у кода обмена на токен срок жизни составляет 30 секунд, поэтому платформа должна успеть обменять его до истечения. Попытка обмена после этого момента отклоняется, и сообщение «Срок действия кода авторизации истёк» как раз и означает такой отказ. Бизнес ничего не сделал неправильно, если медленно завершил всплывающее окно: отсчёт начинается с момента, когда код возвращён.

Почему это происходит, если окно завершено поздно или дважды?

Обмен может задержаться дольше лимита по нескольким причинам.

Вкладка браузера осталась в фоне или ноутбук уснул в момент завершения процесса, и код дошёл до сервера платформы спустя много времени после выдачи. Сервер платформы поставил обмен в очередь за другими задачами вместо того, чтобы выполнить его сразу. Либо человек открыл процесс дважды, завершил оба, а платформа обменяла код из первого окна уже после завершения второго.

При тестировании есть и четвёртая причина: код копируют из консоли браузера и обменивают вручную через cURL или Postman. Руководство Meta предупреждает именно об этом и советует подготовить запрос обмена до начала процесса.

Как завершить подключение?

Запустите процесс заново с самого начала в одном окне и дождитесь завершения, оставив страницу платформы на переднем плане. Каждое завершение возвращает новый код, и платформе нужно лишь быстро его обменять.

Для номера Coexistence сделайте это без промедления. Meta преобразует аккаунт WhatsApp Business в момент, когда бизнес завершает процесс, а после подключения клиента платформой у неё есть 24 часа на синхронизацию истории сообщений. После этого бизнес нужно отключить и пройти процесс заново.

Со стороны платформы надёжное решение: обменивать код на сервере сразу же, как только он пришёл, до любых других шагов подключения.

Распространённые ошибки

  • Повторять обмен на токен с тем же кодом. Он истёк через 30 секунд и не вернётся.
  • Запускать подключение в двух окнах одновременно. Учитывается только код той попытки, которую обменивают.
  • Обменивать код из браузера. Meta требует выполнять обмен запросом между серверами с секретом приложения.
Настройка с EasyCoexistence

EasyCoexistence обменивает код на своём сервере сразу после того, как Embedded Signup его вернул, и записывает каждую попытку в хронологию подключения. Потерянный код виден как событие с датой, а не как расплывчатый сбой.

Часто задаваемые вопросы

Подключил ли бизнес номер или нет?

Бизнес прошёл процесс Meta до конца, но платформа не смогла превратить код в рабочий токен, поэтому пока не может действовать с номером. Повторный запуск процесса даёт ей новый код.

Можно ли сделать так, чтобы код действовал дольше?

Нет. Срок жизни в 30 секунд задаёт Meta, и ни одна платформа не может его продлить.

Затрагивает ли это приложение WhatsApp Business?

Нет. Приложение продолжает работать на телефоне, пока проблема решается.

Это то же самое, что истёкший токен доступа?

Нет. Здесь речь о короткоживущем коде подключения. Истёкший токен доступа в рабочем подключении возвращает ошибку 190.

Читайте дальше

Готовы начать?

Настройте WhatsApp Coexistence за несколько минут, а не месяцев. Приложение продолжит работать на телефоне.

Начать бесплатный пробный период

Проверено по состоянию на

Coexistence: срок действия кода авторизации истёк