Общий чек-лист

1. URL правильный?

Сравни с правильным форматом:

  • СДЭК: https://<your-domain>/shops/{shop_id}/delivery/webhook/cdek
  • МойСклад: https://<your-domain>/api/v1/sync/moysklad/webhook
  • Т-Банк: https://vitrina-ai.ru/api/v1/shops/{shop_id}/payments/webhook/tinkoff
  • ЮKassa: https://vitrina-ai.ru/api/v1/shops/{shop_id}/payments/webhook/yukassa

2. SSL валиден?

curl -I https://<your-domain>/health

Должен вернуть 200 OK, не «certificate expired».

3. Webhook зарегистрирован у провайдера?

  • СДЭК: ЛК → Webhook'и → должен быть в списке
  • МС: Настройки → Webhook'и → должен быть активен
  • Т-Банк: в Terminal настройках → Notification URL

4. Provider видит наш ответ?

Мы отвечаем 200 OK в течение 5 секунд. Если дольше — провайдер считает ошибкой и пытается снова (и снова).

В логах провайдера — статус доставки webhook.

5. IP Whitelist (если есть)

Некоторые провайдеры требуют добавить их IP в whitelist. Наш nginx не блокирует — возможно в firewall выше.

Специфичные проблемы

Т-Банк webhook упорно валится

Проверь NotificationURL — должен быть именно https://vitrina-ai.ru/api/v1/shops/{shop_id}/payments/webhook/tinkoff с правильным shop_id.

МС webhook зарегистрирован но не срабатывает

Возможно ты создал его руками через API без scope. Удали, подключи МС заново через админку — создастся правильный.