Проверить подпись webhook (X-KBP-Signature)

Обновлено:

Кратко

Каждый запрос webhook подписан: заголовок X-KBP-Signature: t=время,v1=подпись. Подпись — HMAC-SHA256 от строки «время.тело запроса» с секретом webhook. Посчитайте подпись у себя, сравните с v1 и проверьте, что время не старше 5 минут.

Пошагово

  1. Возьмите из заголовка t (время) и v1 (подпись).

  2. Соберите строку: t, точка, тело запроса как пришло.

  3. Посчитайте HMAC-SHA256 этой строки с секретом webhook.

  4. Сравните с v1. Совпало и t не старше 5 минут — запрос из КБП CRM.

Тонкости

  • Секрет показывается один раз при создании webhook. Потеряли — удалите webhook и создайте заново.

  • Пример проверки на PHP — в документации API.

Смотрите также