Центр Диагностики & База Системных Ошибок

Решения для Windows Server, Active Directory, 1С, СУБД, Linux, Cisco, MikroTik и IP-телефонии.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, баз данных и сетевого оборудования. Перед выполнением действий обязательно создайте резервную копию. При отсутствии необходимой квалификации обратитесь к ИТ-специалистам.

SIP Error 402 Payment Required: причины и разблокировка транка

Обновлено: 24.08.2026
  • Исходящие звонки на внешние номера мгновенно сбрасываются с кодом SIP/2.0 402 Payment Required.
  • Внутрисетевые вызовы между внутренними номерами продолжают работать штатно.
  • В логах биллинга оператора фиксируется нулевой баланс или превышение кредитного лимита.

1. Локализация источника ошибки через sip trace

sngrep -c "402 Payment Required"

В теле ответа проверьте IP-адрес отправителя: ошибку 402 всегда генерирует SBC оператора связи или локальный биллинговый модуль (например, Asterisk Billing / FreePBX Prepaid Module).

2. Проверка состояния учетной записи оператора

  • Проверьте текущий финансовый баланс в личном кабинете SIP-провайдера.
  • Убедитесь, что направление вызова (междугородняя связь / международная связь) открыто в тарифном плане.
  • Проверьте установленный лимит одновременных каналов (CPS / Concurrent Calls).

3. Настройка резервного транка (Failover Trunk) в FreePBX / Asterisk

Добавьте автоматическое переключение на запасного провайдера при получении ошибки 402 в extensions_override_freepbx.conf:

[macro-dialout-trunk-predial-hook]
exten => s,1,Set(HANGUPCAUSE_KEYS=402)
exten => s,n,Return()
Практический опыт инженера: Настройте мониторинг баланса через API оператора в Prometheus/Zabbix, чтобы получать оповещения до того, как транк будет заблокирован по SIP 402.

Частые вопросы (FAQ)

Может ли АТС самостоятельно генерировать SIP 402?

Только если на ней развернут модуль биллинга или предоплатной тарификации (A2Billing, ASTPP, CGRates). В 99% случаев код 402 возвращается вышестоящим оператором связи.

Что делать, если баланс пополнен, но 402 сохраняется?

Многие операторы кэшируют статус блокировки на уровне пограничных контроллеров сессий (SBC). Выполните перерегистрацию транка: `asterisk -rx 'pjsip send register <trunk_name>'`.