Вебхук — запрос, который магазин сам отправляет на внешний адрес, когда в магазине происходит событие: оформлен заказ, изменился остаток, клиент написал боту. Настройки вебхуков для Альбато: раздел «Подключения» → вкладка «Альбато» → вкладка «Вебхуки». Ниже — как указать адрес и секрет подписи, выбрать события, проверить подключение и по журналу доставок понять, дошло ли событие до Альбато.
Адрес вебхука
Вставьте в поле «URL вебхука» в блоке «Отправка событий» адрес, который выдал Альбато. Чтобы получить адрес, создайте в Альбато подключение «Вебхук» и скопируйте ссылку целиком.
Включить отправку без адреса нельзя: форма покажет ошибку «Укажите полный адрес вебхука с https:// или http://.»
У магазина один адрес для всех событий. Если нужно, чтобы заказы и остатки обрабатывали разные связки, отправляйте всё на один вебхук, а в каждой связке Альбато поставьте условие по полю event.
Секрет подписи
Секрет — строка-ключ, известная только магазину и вашей связке. Магазин подписывает им каждый запрос: вычисляет по алгоритму HMAC-SHA256 подпись тела запроса и передаёт её в заголовке X-Webhook-Signature. По подписи получатель может проверить, что запрос пришёл от магазина. Сам секрет в запросе не передаётся.
Заполнить поле «Секрет подписи» можно двумя способами:
- нажать «Создать секрет» — панель сгенерирует случайную строку из 64 символов и сразу покажет её;
- ввести свою строку длиной до 500 символов.
Кнопка «Показать» открывает введённое значение, «Скрыть» прячет его обратно.
После сохранения секрет больше не отображается, под полем появится подсказка «Секрет задан и не показывается повторно». Чтобы оставить прежний секрет, при следующем сохранении не заполняйте поле. Чтобы сменить, введите или создайте новый.
Выбор событий
Отметьте в блоке «События» только те события, которые обрабатывают ваши связки. В блоке 23 флажка, разложенных по группам: «Заказы», «Клиенты и сообщения», «Товары и остатки», «Исполнители», «Записи на услуги». Лишние события впустую запускают связки, вытесняют нужные записи из журнала доставок и передают в Альбато лишние данные покупателей (подробнее — в статье «Персональные данные»). Какие поля приходят в каждом событии, описано в статье «События вебхуков».
Кнопка «Выбрать все» отмечает все события, «Снять выбор» снимает отметки. Счётчик «Выбрано» показывает, сколько событий отмечено.
Магазин проверяет выбор в момент действия. Если отметить событие сегодня, вчерашние заказы в Альбато не уйдут: событие не создаётся задним числом.
Включение и пауза
Включите переключатель «Отправлять события в Albato» и нажмите «Сохранить настройки» — магазин начнёт отправлять отмеченные события. Переключатель стоит первым в блоке «Отправка событий», но включать его имеет смысл после того, как заполнены адрес и события: без адреса настройки с включённой отправкой не сохранятся. Без сохранения положение переключателя не действует.
Если выключить переключатель и сохранить, отправка встанет на паузу:
- новые события в очередь не попадают, и после снятия паузы они не появятся;
- события, которые уже ждали отправки, остаются в очереди без расхода попыток и уйдут после включения.
Пауза пригодится, когда связку в Альбато перестраивают и ей пока нельзя получать данные.
Проверка подключения
В блоке «Проверка доставки» на вкладке «Вебхуки» нажмите «Отправить тестовое событие» — та же кнопка есть на вкладке «Обзор». Магазин сразу отправит запрос на сохранённый адрес и подождёт ответ до 10 секунд.
Кнопка работает только с сохранёнными настройками и включённой отправкой.
Результат показывается под кнопкой:
- «Тестовое событие принято» и код ответа, например
HTTP 200; - «Проверка не пройдена» — получатель вернул другой код или не ответил. Под заголовком будет код или текст ошибки.
В раскрывающемся блоке «Ответ получателя» видно начало ответа, первые 512 байт. По нему можно найти причину ошибки.
Тестовое событие содержит только служебные данные:
{
"event": "integration.test",
"deliveryId": "0b7d3c1e-5f2a-4c7e-9d41-2a8f6e3b9c10",
"timestamp": "2026-09-16T12:00:00Z",
"integration": {
"storeId": 1,
"message": "test delivery from shop backend"
}
}
Оно отправляется напрямую, минуя очередь, и в журнал доставок не попадает.
⚠️ Важно: тестовое событие подходит для проверки адреса, но не для настройки полей. Если в связке стоит условие event = order.created, тест её не запустит. Чтобы получить в Альбато поля заказа, оформите настоящий тестовый заказ.
Журнал доставок
Откройте вкладку «Журнал доставок» — появится список «Последние доставки»: 20 последних событий магазина, новые сверху. Список не обновляется сам, для свежих данных нажмите «Обновить журнал».
В каждой строке указаны название события, дата и время, число неудачных попыток и статус:
- «Ожидает отправки» — событие в очереди или ждёт повторной попытки;
- «Доставлено» — событие отправлено;
- «Ошибка» — все три попытки закончились неудачей.
В блоке «Подробности» показаны идентификатор доставки (то же значение приходит в поле deliveryId), код события и текст последней ошибки. Например, http status 404 означает, что по адресу вебхука ничего нет.
Статус «Доставлено» значит только то, что Альбато принял запрос. Выполнились ли шаги связки, смотрите в истории связки в самом Альбато.
Когда отправка на паузе, над списком появляется подсказка «Отправка на паузе. Ожидающие доставки продолжатся после включения.»
Порядок доставки событий
Магазин отправляет событие не сразу, а через очередь: событие ждёт, пока его заберёт фоновый процесс.
- Раз в 10 секунд процесс берёт из очереди до 20 событий и отправляет их по одному запросом
POST. - На ответ отводится 10 секунд. Код ответа от 200 до 299 означает успех.
- При другом коде или без ответа вторая попытка будет через 5 секунд, третья — через 30 секунд. К этим паузам добавляется ожидание следующей проверки очереди.
- После третьей неудачи событие получает статус «Ошибка». Сам магазин его больше не отправляет, даже если исправить адрес.
При повторной попытке отправляется то же тело запроса с тем же deliveryId, хотя данные в магазине могли измениться. Адрес и секрет берутся из настроек, сохранённых на момент попытки: если сменить адрес, ожидающие события уйдут уже на новый.
💡 Порядок прихода событий при повторных попытках может нарушиться, а одно событие может прийти дважды. Если связка создаёт сделки или строки в таблице, перед созданием ищите запись с тем же deliveryId или номером заказа, чтобы не получить дубль.
Частые проблемы
Тест показывает «Проверка не пройдена» с кодом 404
Адрес скопирован не полностью или подключение «Вебхук» в Альбато удалено. Скопируйте адрес заново, вставьте в поле «URL вебхука» и сохраните настройки.
После заказа в журнале нет новой записи
Проверьте, что событие отмечено, отправка включена и настройки сохранены. Затем проверьте, как сделано изменение: импорт из файла и прямые изменения в базе данных событий не создают. Журнал обновляется только по кнопке «Обновить журнал».
Событие долго висит в статусе «Ожидает отправки»
Посмотрите, не выключена ли отправка и подключена ли услуга: в обоих случаях очередь ждёт. Если всё включено, а статус не меняется дольше минуты, откройте «Подробности» — там будет текст последней ошибки. Если ошибки нет, обратитесь в поддержку.
В журнале «Доставлено», а связка не сработала
Со стороны магазина событие доставлено, причину ищите в Альбато: связка выключена, условие по полю event отсекает событие или в триггере выбрано другое подключение вебхука.
Короткие ответы
Почему тестового события нет в журнале доставок?
Тест отправляется сразу, минуя очередь, и его результат показывается только под кнопкой «Отправить тестовое событие». В журнал попадают события, которые создают действия в магазине: заказы, оплаты, изменения остатков и другие отмеченные в настройках.
Можно ли отправить событие со статусом «Ошибка» ещё раз?
Нет, кнопки повторной отправки нет. Исправьте причину — обычно это адрес или выключенная связка в Альбато — и повторите действие в магазине. Если нужно получить данные уже случившегося заказа, запросите его через API по номеру — для этого связке нужен API-токен с правом чтения заказов.
Что будет с событиями, пока отправка на паузе?
Новые события на паузе не создаются и после включения не появятся. События, которые уже стояли в очереди до паузы, сохранятся и уйдут в Альбато после включения, попытки на них не тратятся.