> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tungo.kz/llms.txt
> Use this file to discover all available pages before exploring further.

# Запустить сценарий из своей системы (входящий хук)

> Заведите адрес, на который ваша система, банк или магазин присылают события, и привяжите к нему сценарий.

Входящий хук — это адрес, на который внешняя система присылает событие: пришла оплата, оформлен заказ, закрыта сделка. Каждое новое событие запускает сценарии, привязанные к этому хуку. ИИ-бухгалтер получает событие вместе с поручением и разбирает его.

Не путайте с вебхуком. Входящий хук принимает события от вас. Вебхук, наоборот, отправляет события Tungo на ваш сервер, например об окончании запуска. У них разные адреса, разные секреты и разная подпись. О вебхуках: [Вебхуки](https://docs.tungo.kz/platform/webhooks.md).

## Завести хук и сценарий

**1. Откройте хуки компании**

На платформе откройте **Автоматизации → Хуки и правила**, выберите компанию справа вверху и останьтесь на вкладке «Входящие хуки».

**2. Заведите хук**

Нажмите **Новый хук**. В поле «Название» напишите, откуда приходят события. Поля «Где в событии его номер» и «Секрет подписи» описаны ниже: без них сценарий сможет только готовить документы. Нажмите **Сохранить**.

**3. Скопируйте адрес**

Откроется окно с адресом хука. Скопируйте его сразу: больше он нигде не показывается.

**4. Укажите адрес у отправителя**

Вставьте адрес в настройки системы, которая будет присылать события. События отправляются запросом POST, обычно в формате JSON.

**5. Привяжите сценарий**

В разделе **Автоматизации** нажмите **Новый сценарий**, в поле «Когда запускать» выберите «По событию хука» и выберите хук в поле «Хук». В поручении опишите, что делать с событием.

Завести хук может тот, у кого в компании есть право «Заводить и менять автоматизации компании» и доступ к ИИ-бухгалтеру: события хука запускают платную работу ИИ.

Сценарий по хуку вручную не запускается: кнопки «Запустить сейчас» у него нет, ему нужно событие. Проверить хук пробным событием и прогнать сценарий на прошлом событии без записи в 1С можно через API, см. справочник API.

## Адрес хука служит паролем

Для отправки события не нужны ни вход, ни ключ: достаточно знать адрес. Кто знает адрес, может слать события этой компании. Храните его как пароль и не пересылайте в открытой переписке.

Адрес показывается один раз, при создании. В списке хуков видны только его последние знаки, чтобы вы могли узнать, какой адрес настроен у отправителя. Если адрес потерян или попал к посторонним, в меню хука нажмите **Перевыпустить адрес**. Прежний адрес сразу перестанет работать, новый нужно указать у отправителя.

## Подпись

Подпись доказывает, что событие прислал ваш отправитель, а не тот, кто узнал адрес. В поле «Секрет подписи» задайте секрет от 16 знаков и тот же секрет укажите у отправителя. После сохранения секрет не показывается.

Отправитель считает HMAC-SHA256 от тела запроса с этим секретом и присылает результат шестнадцатеричной строкой в заголовке `x-signature`. Допустима приставка `sha256=`. Если ваша система кладёт подпись в другой заголовок, назовите его в поле «Заголовок с подписью».

Пока секрет задан, событие без подписи или с неверной подписью не принимается. В списке хуков у такого хука стоит «Проверяется», у хука без секрета — «Без подписи».

Пример запроса для проверки:

```bash theme={null}
curl -X POST "<адрес хука>" \
  -H "Content-Type: application/json" \
  -H "X-Signature: sha256=<подпись>" \
  -d '{"id":"pay_1532","amount":45000}'
```

## Номер события

Системы часто присылают одно и то же событие повторно, если не дождались ответа. Чтобы повтор не запустил сценарий второй раз, Tungo запоминает номер события. В поле «Где в событии его номер» укажите путь к номеру платежа или чека в теле события. Вложенные поля пишутся через точку: для события из примера это `id`, для номера внутри блока `payment` — `payment.id`.

Событие с номером, который уже приходил, принимается, но сценарии не запускает. Номера помнятся бессрочно, поэтому отправитель не должен использовать один номер для разных операций: вторая будет считаться повтором.

Если путь не задан, номер берётся из заголовка `Idempotency-Key` или `X-Event-Id`. Если нет и их, повтором считается событие с точно таким же телом, пришедшее вскоре после первого.

Подпись и номер из тела события обязательны, если сценарий должен сам записывать документы в 1С. Без любого из них документы ждут человека: [Разрешить сценарию запись в 1С](https://docs.tungo.kz/automations/write-to-1c.md).

## Что получит отправитель в ответ

* 202: новое событие принято, сценарии запускаются.
* 200 с пометкой `duplicate`: это повтор, сценарии не запускались.
* 401: подпись не сходится.
* 404: такого хука нет. Так же отвечает выключенный и удалённый хук.
* 413: событие слишком большое.
* 429: событий слишком много или очередь запусков компании заполнена. Отправителю нужно повторить позже.

Если автоматизации компании стоят на паузе, события принимаются и ждут в очереди, пока паузу не снимут.

## Что дальше

* [Разрешить сценарию запись в 1С](https://docs.tungo.kz/automations/write-to-1c.md): что нужно, чтобы документы по событиям записывались сами.
* [Вебхуки](https://docs.tungo.kz/platform/webhooks.md): как вашей системе узнать итог запуска.
* [Смотреть запуски и разбирать ошибки](https://docs.tungo.kz/automations/runs.md): что стало с каждым событием.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.