Перейти к содержимому
OmniChannels.ai
Меню

Коды ошибок WhatsApp Cloud API: значения и способы исправления

Частые коды ошибок WhatsApp Cloud API — от 131047 и 131026 до 132001 и 130429: что они значат, как их исправить и когда не нужно повторять отправку.

Обновлено 8 мин чтения

Автор: OmniChannels.ai Editorial Team · Проверил: BroadNet Messaging Solutions Team

WhatsApp

Короткий ответ

Ошибки WhatsApp Cloud API делятся на несколько групп: авторизация (0, 190, 10), целостность аккаунта (368, 131031), ограничения скорости и объёма (4, 80007, 130429, 131048, 131049, 131056), проблемы с шаблонами (от 132000 до 132016), проблемы с получателем (131026, 131047, 131050) и проблемы с запросом (131008, 131009). Прочитайте код и сведения в error_data, затем выберите действие: исправить и повторить, подождать и повторить, перейти на шаблон или другой канал либо не повторять отправку вообще.

На этой странице
  1. Где появляются ошибки WhatsApp Cloud API?
  2. Какие коды ошибок WhatsApp встречаются чаще всего?
  3. Как исправить ошибки, из-за которых чаще всего срываются кампании?
  4. Политика повторных попыток, которую можно внедрить
  5. Пример из практики: неудавшаяся акция ритейлера из Эр-Рияда
  6. Типичные ошибки и честные ограничения
  7. Чем помогает OmniChannels.ai

Главное

  • Ошибка 131047 означает, что 24-часовое окно обслуживания клиента закрыто; вместо сообщения в свободной форме отправьте одобренный шаблон.
  • Ошибка 131050 означает, что пользователь отказался от маркетинговых сообщений; по правилам Meta повторять отправку не нужно.
  • Ошибка 131049 — это лимит маркетинговых сообщений на одного пользователя; Meta советует подождать не менее 24 часов перед повторной отправкой.
  • Ошибки 132000 и 132012 почти всегда вызваны несовпадением числа или формата переменных с одобренным шаблоном.
  • Часть ошибок возвращается сразу в ответе API, а часть приходит позже в вебхуках статусов со статусом failed, поэтому логируйте оба источника.

Это руководство для разработчиков и команд, отвечающих за обмен сообщениями: если вы видите неудавшиеся сообщения WhatsApp, оно поможет быстро понять, что делать — исправить запрос, подождать, сменить тип сообщения или остановиться. Каждый код ниже проверен по справочнику кодов ошибок Cloud API от Meta. Коды и формулировки меняются, поэтому перед тем как зашивать логику в код, сверьтесь с этой страницей.

Где появляются ошибки WhatsApp Cloud API?

Ошибки появляются в двух местах, и фиксировать нужно оба. Ошибки запроса приходят сразу в ответе API, а ошибки доставки — позже в вебхуке статусов.

  • Синхронные ошибки. Запрос на отправку отклоняется, а ответ содержит объект error с полями code, message, type и часто error_data.details. Типичные примеры — истёкшие токены, отсутствующие параметры и несовпадения с шаблоном.
  • Асинхронные ошибки. Запрос на отправку проходит успешно и возвращает ID сообщения, но позже вебхук сообщает status: failed с массивом errors. Типичные примеры — закрытое окно обслуживания, недоставляемые получатели и маркетинговые лимиты.

Распространённая ошибка — логировать только HTTP-ответ. Команда считает, что кампания прошла успешно, потому что на каждый запрос вернулся ID сообщения, хотя сотни сообщений не были доставлены, о чём сообщили вебхуки. О том, как связаны статусы между собой, читайте в статье sent, delivered, read и failed: что означают статусы.

Какие коды ошибок WhatsApp встречаются чаще всего?

В таблице собраны коды, с которыми сталкивается большинство команд, — с подсказкой, что делать дальше. Описания пересказывают справочник Meta.

Код Значение Что делать Повторять?
0 Не удалось аутентифицировать пользователя приложения; токен истёк или отозван Создайте новый токен доступа После исправления
190 Срок действия токена доступа истёк Используйте бессрочный токен системного пользователя, обновите токен После исправления
3, 10, 200–299 Не хватает разрешения или возможности Проверьте разрешения токена в отладчике токенов доступа После исправления
368 WABA ограничен или отключён из-за нарушения политики Изучите меры по соблюдению политики в WhatsApp Manager; если ограничение ошибочно, подайте апелляцию Нет
131031 Аккаунт заблокирован, например из-за нарушения политики или неудачной проверки данных Проверьте статус состояния аккаунта; решите вопрос с Meta Нет
4 Приложение достигло лимита вызовов API Снизьте объём запросов; проверьте App Dashboard Да, позже
80007 WABA достиг лимита запросов Снизьте объём запросов; повторите позже Да, позже
130429 Достигнута пропускная способность Cloud API для номера Поставьте отправку в очередь и снизьте скорость Да, с нарастающей паузой (backoff)
131048 Лимит из-за спама: ограничения на сообщения с этого номера Проверьте качество в WhatsApp Manager; улучшите содержание и таргетинг Не сразу
131049 Сообщение не доставлено «для поддержания здоровой вовлечённости в экосистеме» Подождите не менее 24 часов перед повторной отправкой Не раньше чем через 24 ч
131056 Слишком много сообщений одному получателю за короткое время Увеличьте интервалы между сообщениями этому пользователю Да, позже
131000 Неизвестная ошибка Повторите отправку; если ошибка не исчезает, создайте обращение в поддержку Да, с ограничением
131016 Сервис временно недоступен Проверьте страницу статуса Meta; повторите отправку Да, с нарастающей паузой (backoff)
131008 Отсутствует обязательный параметр Сравните payload со справочником по эндпоинту После исправления
131009 Недопустимое значение параметра Проверьте значения, например формат номера телефона или ID После исправления
131021 Отправитель и получатель — один и тот же номер Отправьте на другой номер Нет
131026 Не удалось доставить сообщение Проверьте номер, попросите пользователя обновить WhatsApp или используйте другой канал Не в том же виде
131042 Проблема со способом оплаты Исправьте платёжные данные: платёжный аккаунт, кредитную линию, валюту После исправления
131045 / 133010 Номер не зарегистрирован на платформе Зарегистрируйте бизнес-номер телефона После исправления
131047 С момента последнего ответа пользователя прошло более 24 часов Отправьте одобренный шаблон Только как шаблон
131050 Пользователь отказался от маркетинговых сообщений Не повторяйте; уважайте это решение Никогда
131051 Неподдерживаемый тип сообщения Используйте поддерживаемый тип После исправления
131052 Не удалось скачать медиафайл, отправленный пользователем Попросите пользователя отправить его снова н/д
131053 Не удалось загрузить медиафайл из вашего сообщения Проверьте MIME-тип, размер и URL После исправления
131057 Аккаунт в режиме обслуживания Подождите; такое может случиться при повышении пропускной способности Да, позже
132000 Число переменных не совпадает с шаблоном Передайте ровно столько параметров, сколько определено После исправления
132001 Шаблона нет на этом языке или он не одобрен Проверьте название, код языка и статус После исправления
132005 Переведённый текст слишком длинный Сократите перевод шаблона После исправления
132007 Содержание шаблона нарушает политику Отредактируйте по правилам проверки шаблонов После исправления
132012 Значения переменных отформатированы неверно Приведите к ожидаемому формату После исправления
132015 Шаблон приостановлен из-за низкого качества Отредактируйте содержание, чтобы улучшить качество После правки
132016 Шаблон окончательно отключён после повторных приостановок Создайте новый шаблон с другим содержанием Нет
135000 Неизвестная ошибка в параметрах запроса Проверьте синтаксис запроса; обратитесь в поддержку После исправления

Как исправить ошибки, из-за которых чаще всего срываются кампании?

На практике большинство сбоев вызывает несколько кодов. Для каждого есть чёткое правило.

131047: окно обслуживания закрыто

Клиент писал последний раз более 24 часов назад. Текст в свободной форме, медиафайлы и интерактивные сообщения разрешены только внутри 24-часового окна обслуживания клиента; за его пределами нужно использовать одобренный шаблон, см. 24-часовое окно обслуживания клиента. Операторы часто сталкиваются с этой ошибкой, отвечая в старом чате. Показывайте операторам статус окна и предлагайте выбор шаблона, когда оно истекло.

131026: сообщение не доставлено

Начните с проверки номеров: международный формат, правильный код страны, без ведущего нуля после кода. Затем примите, что некоторых номеров просто нет в WhatsApp или на них установлена старая версия приложения. Для срочных сообщений, например OTP-кодов (одноразовых кодов), используйте резервный канал (fallback) — SMS. См. WhatsApp, SMS и RCS: сравнение.

131049 и 131050: маркетинговые лимиты и отписки

Обе ошибки касаются маркетинговых сообщений. 131050 — это явное решение пользователя прекратить получать маркетинг: исключите таких пользователей из маркетинговых рассылок и подпишитесь на вебхук пользовательских предпочтений Meta. 131049 означает, что Meta решила не доставлять сообщение, чтобы защитить вовлечённость пользователей; Meta советует подождать не менее 24 часов, а более ранние повторы, скорее всего, снова не пройдут. Вместо повторной отправки снизьте частоту и повысьте релевантность.

130429, 131048 и 131056: слишком быстрая или слишком объёмная отправка

130429 — это пропускная способность: поставьте сообщения в очередь и применяйте нарастающую паузу (backoff). 131056 относится к паре «отправитель — получатель»: вы пишете одному человеку слишком часто. 131048 — сигнал о качестве номера-отправителя; он требует исправить содержание и таргетинг, а не повторять отправку. См. лимиты сообщений и рейтинг качества.

132000, 132001 и 132012: несовпадения с шаблоном

Почти всегда это ошибки интеграции. Название шаблона, код языка (например, ar и en_US) и число переменных должны точно совпадать с одобренным вариантом. Напишите тест, который отправляет каждый шаблон с тестовыми значениями при любом его изменении.

Политика повторных попыток, которую можно внедрить

Используйте этот чек-лист, чтобы автоматически классифицировать каждый сбой.

  1. Логируйте код, заголовок, error_data.details, ID сообщения, получателя и название шаблона.
  2. Никогда не повторяйте 131050, 131021, 132016, 368 и 131031. Об ошибках 368 и 131031 сразу сообщайте администратору.
  3. Сначала исправьте, потом повторите ошибки авторизации (0, 190, 10), параметров (131008, 131009, 135000), шаблонов (от 132000 до 132015) и оплаты (131042). Оповестите ответственную команду.
  4. Подождите и повторите при 130429, 4, 80007, 131016 и 131057, используя экспоненциальную паузу (backoff) с верхним пределом.
  5. Смените канал или тип сообщения при 131047 (шаблон) и 131026 (SMS или e-mail).
  6. Подождите 24 часа или больше при 131049 и пересмотрите частоту кампаний.
  7. Показывайте сбои по кодам в отчётах по кампаниям, а не одной общей цифрой «не доставлено».

Пример из практики: неудавшаяся акция ритейлера из Эр-Рияда

Это условный пример. Компания «Najd Home» отправляет маркетинговый шаблон 20 000 клиентов, давших согласие на получение сообщений (opt-in). API принимает все запросы, но вебхуки статусов показывают около 1 400 сбоев.

Если сгруппировать их по кодам, картина становится ясной. Самая большая группа — 131049: команда исключает этих пользователей из двух следующих рассылок и снижает недельную частоту. Меньшая группа — 131026: анализ показывает, что многие номера хранятся с локальным ведущим нулём, и проблему решает нормализация номеров. Несколько пользователей с кодом 131050 навсегда исключены из маркетинговых рассылок. Несколько ошибок 130429 возникли из-за первоначального всплеска отправки, поэтому теперь отправка идёт равномерно через очередь.

Типичные ошибки и честные ограничения

  • Считать любой сбой поводом для повтора. Это впустую расходует бюджет и может снизить качество.
  • Зашивать тексты Meta в код. Meta обновляет заголовки и описания; стройте логику на числовом коде и ведите справочник, который можно обновлять.
  • Игнорировать error_data.details. Там часто указан конкретный проблемный параметр.
  • Не у каждого сбоя есть решение. Некоторых получателей не удаётся достичь в WhatsApp, а Meta не объясняет каждое решение по 131049. Заранее предусмотрите альтернативный канал.

Чем помогает OmniChannels.ai

OmniChannels.ai на базе BroadNet Technologies предоставляет отчёты о доставке в сводном и расширенном видах с фильтрами и экспортом в CSV, чтобы можно было анализировать недоставленные сообщения по кампаниям. Резервный канал (fallback) может повторно отправить сообщение через RCS или SMS, если не удалось доставить его в WhatsApp, а шаблоны отображаются в предпросмотре на макете телефона, и их одобрение отслеживается, что снижает число ошибок из-за несовпадений. Вебхуки передают статусы FAILED и REJECTED в едином нормализованном формате, а в открытой документации для разработчиков есть справочник по ошибкам и лимитам.

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

Что означает ошибка WhatsApp 131047?

Ошибка 131047 означает, что с момента последнего сообщения получателя на ваш номер прошло более 24 часов, поэтому окно обслуживания клиента закрыто. Текст в свободной форме, медиафайлы и интерактивные сообщения больше отправлять нельзя. Отправьте одобренный шаблон сообщения — лучше всего служебный (utility) шаблон с приглашением ответить: когда клиент ответит, окно откроется снова.

Почему появляется ошибка 131026, если номер есть в WhatsApp?

Meta описывает 131026 как невозможность доставить сообщение. Причины — номера нет в WhatsApp, получатель не принял последние условия или у него устаревшая версия WhatsApp. Частая причина — неверный код страны или локальный формат номера. Проверьте номер в международном формате, попросите клиента обновить приложение или используйте SMS либо e-mail.

В чём разница между 130429 и 131056?

130429 означает, что ваш номер достиг лимита пропускной способности Cloud API, то есть вы в целом отправляете слишком быстро: снизьте скорость и используйте очередь. 131056 означает, что вы отправили слишком много сообщений одному и тому же получателю за короткое время; на остальных получателей это не влияет. Ошибку 130429 устраняют контролем скорости отправки, а 131056 — интервалами между сообщениями этому пользователю.

Нужно ли автоматически повторять отправку неудавшихся сообщений WhatsApp?

Только при временных ошибках — таких как 131000 (неизвестная ошибка), 131016 (сервис недоступен), 130429 (пропускная способность) и 4 или 80007 (лимиты запросов), — и с экспоненциальной паузой между попытками (backoff). Никогда не повторяйте автоматически 131050 (отказ от маркетинга), 131026 без каких-либо изменений, ошибки шаблонов и ограничения по политике 368. Слепые повторы тратят бюджет, раздражают пользователей и могут ухудшить рейтинг качества.

Где посмотреть полные сведения об ошибке?

Синхронные ошибки приходят в ответе API с полями code, message и error_data. Асинхронные сбои приходят в вебхуке messages со статусом failed и массивом errors, в котором указаны код, заголовок и подробности. Логируйте объект целиком, а не только код: поле details часто называет конкретный параметр или проблему с медиафайлом.

Источники

  1. Error codes — WhatsApp Cloud API, Meta for Developers
  2. Status messages webhook reference — Meta for Developers
  3. About the platform: rate limits and encryption — Meta for Developers