Webhooks в YCLIENTS
Оглавление:
- Что такое webhooks.
- Когда стоит использовать webhooks.
- Общая схема работы.
- Ограничения и особенности.
- Успешность доставки webhook.
- Список поддерживаемых событий.
- Филиал.
- Сотрудники.
- Товары.
- Услуги.
- Категории услуг.
- Клиенты.
- Записи.
- Продажа товаров.
- Приход товара.
- Списание расходников.
- Списание товара.
- Перемещение товара.
- Финансовые операции.
Эта документация описывает работу webhook‑уведомлений в YCLIENTS: какие события доступны, как они отправляются, какой формат данных используется и на что стоит обратить внимание при обработке.
Что такое webhooks
Webhook (вебхук) — это HTTP‑запрос, который YCLIENTS отправляет на указанный вами URL при наступлении определенного события в системе.
В отличие от API, где ваша система сама запрашивает данные, webhook работает по принципу «событие → уведомление»:
- событие происходит в YCLIENTS;
- YCLIENTS формирует HTTP‑запрос с данными события;
- запрос отправляется на ваш эндпоинт.
Webhook позволяет получать изменения почти в реальном времени.
Когда стоит использовать webhooks
Webhook‑уведомления подходят, если вам нужно:
- синхронизировать данные между YCLIENTS и внешней системой;
- реагировать на изменения сразу после их появления;
- фиксировать действия пользователей (создание записей, продажи, изменения записей);
- строить собственную аналитику или автоматизации.
Типовые сценарии:
- обновление клиентов или услуг в YCLIENTS;
- создание, удаление, изменение записей и данных в них;
- учет финансовых операций;
- логирование изменений для аудита.
Общая схема работы
- В настройках филиала указывается URL, на который будут отправляться webhooks.
- При наступлении события YCLIENTS формирует HTTP POST‑запрос.
- В запрос передается JSON‑тело с данными события.
- Запрос отправляется один раз.
- Если сервер получателя не принял запрос повторной отправки не происходит.
Важно
YCLIENTS считает webhook успешно доставленным, если получен любой HTTP‑ответ.
Ограничения и особенности
- Повторных попыток (retry) нет.
- Если webhook не был принят, повторная отправка возможна только при повторном возникновении события (например, повторное создание записи).
- Webhook‑уведомления не предназначены для получения исторических данных.
- Порядок доставки webhook‑ов не гарантируется.
Рекомендуется:
- обрабатывать запросы асинхронно;
- логировать входящие события.
Успешность доставки webhook
YCLIENTS не хранит и не отображает статусы доставки webhook‑уведомлений.
При наступлении события система формирует HTTP‑запрос и отправляет его на указанный URL. После отправки webhook не отслеживается:
- информация о том, был ли запрос успешно обработан получателем, в системе не сохраняется;
- повторных попыток отправки не выполняется.
HTTP‑ответ, возвращаемый сервером получателя, не влияет на повторную отправку webhook и используется исключительно на стороне клиента для собственной диагностики.
Для анализа доставки webhook‑ов могут использоваться серверные логи (Kibana), где фиксируются ответы серверов получателей.
В связи с этим рекомендуется:
- логировать входящие события;
- реализовывать устойчивую обработку данных (асинхронная обработка, идемпотентность).
Список поддерживаемых событий
Для каждого события передается JSON‑объект с данными сущности.
Подробное описание полей и примеры payload будут приведены в соответствующих разделах ниже.
Филиал
Важно
На данный момент все события по филиалу не передаются.
Изменения в разделах:
- «Настройки > Настройки филиала».
- «Онлайн-запись > Информация о филиале».
События:
- Изменение данных филиала.
Сотрудники
Webhook отправляется при изменениях, связанных с сотрудниками филиала.
Поддерживаются следующие типы событий:
Событие | Описание |
create | Создание сотрудника |
update | Изменение данных сотрудника |
delete | Удаление сотрудника |
Тип события передается в поле status.
Формат webhook-уведомления
Каждый webhook содержит базовые поля верхнего уровня.
Поле | Тип | Описание |
company_id | integer | ID филиала |
resource | string | Тип ресурса. Для сотрудников значение всегда staff |
resource_id | integer | ID сотрудника |
status | string | Тип события (create, update, delete) |
data | object | Объект с данными сотрудника |
Структура объекта data
Объект data содержит информацию о сотруднике на момент события.
Поле | Тип | Описание |
id | integer | Уникальный идентификатор сотрудника в системе YCLIENTS |
api_id | string | null | Внешний идентификатор сотрудника |
name | string | Имя сотрудника |
specialization | string | Специализация сотрудника |
position | array | Должность сотрудника |
position_id | integer | Идентификатор основной должности сотрудника |
show_rating | integer | Флаг отображения рейтинга сотрудника (1 — отображается, 0 — скрыт) |
rating | float | Рейтинг сотрудника |
votes_count | number | Количество голосов, участвующих в расчете рейтинга (не передается на данный момент) |
avatar | string | URL изображения сотрудника (малый размер) |
avatar_big | string | URL изображения сотрудника (большой размер/более высокое разрешение) |
comments_count | integer | Количество отзывов о сотруднике |
weight | integer | Порядок отображения сотрудника в списке |
information | string | Дополнительная информация о сотруднике (вкладка «Онлайн запись» — блок «Описание») |
hidden | integer | Признак скрытия сотрудника для онлайн записи (1 — скрыт, 0 — отображается) |
fired | number | Признак увольнения сотрудника (1 — сотрудник уволен, 0 — активен) |
status | number | Статус удаления сотрудника, (1 — удален, 0 — не удален) |
schedule_till | string | Дата, до которой сформировано расписание сотрудника |
image_group | array | Список дополнительных изображений сотрудника |
prepaid | string | Настройки предоплаты для сотрудника |
user_id | integer | null | ID пользователя системы, связанного с сотрудником |
user | object | null | Объект пользователя, связанного с сотрудником |
Примеры webhook
Создание сотрудника
{
"company_id": 997441,
"resource": "staff",
"resource_id": 5058870,
"status": "create",
"data": {
"id": 5058870,
"name": "Test_2"
}
}
Изменение сотрудника
{
"company_id": 997441,
"resource": "staff",
"resource_id": 5058870,
"status": "update",
"data": {
"id": 5058870,
"name": "Test_23"
}
}
Удаление сотрудника
{
"company_id": 997441,
"resource": "staff",
"resource_id": 5058870,
"status": "delete",
"data": {
"id": 5058870,
"name": "Test_23"
}
}
Товары
Webhook отправляется при изменениях, связанных с товарами филиала.
Поддерживаются следующие типы событий:
Событие | Описание |
create | Создание товара |
update | Изменение товара |
delete | Удаление товара |
Тип события передается в поле status.
Важно
На текущий момент событие update отправляется только для сетевых товаров.
Формат webhook-уведомления
Каждый webhook содержит базовые поля верхнего уровня.
Поле | Тип | Описание |
company_id | integer | ID филиала |
resource | string | Тип ресурса. Для товаров значение всегда good |
resource_id | integer | ID товара |
status | string | Тип события (create, update, delete) |
data | object | Объект с данными товара |
Структура объекта data
Объект data содержит информацию о товаре на момент события.
Поле | Тип | Описание |
title | string | Наименование товара |
value | string | Наименование товара |
label | string | Наименование товара с артикулом, если он указан |
article | string | Артикул товара |
category | string | Название категории товара |
category_id | integer | ID категории товара |
salon_id | integer | ID филиала |
good_id | integer | ID товара |
cost | float | Цена продажи |
unit_id | integer | ID единицы измерения для продажи |
unit_short_title | string | Краткое название единицы измерения для продажи |
service_unit_id | integer | ID единицы измерения для списания |
service_unit_short_title | string | Краткое название единицы измерения для списания |
actual_cost | float | Себестоимость товара |
unit_actual_cost | float | Себестоимость единицы товара |
unit_actual_cost_format | string | Себестоимость единицы в отформатированном виде |
unit_equals | float | Соотношение единицы продажи к единице списания |
barcode | string | Штрих-код товара |
is_chain | boolean | Признак сетевого товара |
comment | string | Комментарий к товару |
loyalty_abonement_type_id | integer | ID типа абонемента, если товар является абонементом |
loyalty_certificate_type_id | integer | ID типа сертификата, если товар является сертификатом |
loyalty_certificate_type | object | null | Тип сертификата |
loyalty_allow_empty_code | boolean / integer | Разрешена ли продажа без кода |
actual_amounts | array | Остатки товара по складам |
critical_amount | float | Критичный остаток |
desired_amount | float | Желаемый остаток |
last_change_date | string | Дата и время последнего изменения товара |
is_goods_mark_enabled | boolean | Признак использования маркировки товара |
Примеры webhook
Создание товара
{
"company_id": 997441,
"resource": "good",
"resource_id": 46810311,
"status": "create",
"data": {
"title": "new_goods",
"value": "new_goods",
"label": "new_goods",
"article": "",
"category": "test",
"category_id": 1693647,
"salon_id": 997441,
"good_id": 46810311,
"cost": 1000,
"unit_id": 216760,
"unit_short_title": "шт",
"service_unit_id": 216763,
"service_unit_short_title": "г",
"actual_cost": 800,
"unit_actual_cost": 80,
"unit_actual_cost_format": "80 ₽",
"unit_equals": 10,
"barcode": "",
"is_chain": false,
"comment": "goods",
"loyalty_abonement_type_id": 0,
"loyalty_certificate_type_id": 0,
"loyalty_certificate_type": null,
"loyalty_allow_empty_code": 1,
"loyalty_serial_number_limited": 0,
"actual_amounts": [],
"critical_amount": 0,
"desired_amount": 0,
"last_change_date": "2026-03-07T14:44:39+0400",
"is_goods_mark_enabled": false
}
}
Изменение товара
{
"company_id": 997441,
"resource": "good",
"resource_id": 46640904,
"status": "update",
"data": {
"title": "goodsAPI",
"value": "goodsAPI",
"label": "goodsAPI",
"article": "",
"category": "test_2",
"category_id": 1894110,
"salon_id": 997441,
"good_id": 46640904,
"cost": 1000,
"unit_id": 216760,
"unit_short_title": "шт",
"service_unit_id": 216760,
"service_unit_short_title": "шт",
"actual_cost": 600,
"unit_actual_cost": 600,
"unit_actual_cost_format": "600 ₽",
"unit_equals": 1,
"barcode": "",
"is_chain": true,
"comment": "test",
"loyalty_abonement_type_id": 0,
"loyalty_certificate_type_id": 0,
"loyalty_certificate_type": null,
"loyalty_allow_empty_code": 1,
"loyalty_serial_number_limited": 0,
"actual_amounts": [],
"critical_amount": 0,
"desired_amount": 0,
"last_change_date": "2026-03-07T14:48:09+0400",
"is_goods_mark_enabled": false
}
}
Удаление товара
{
"company_id": 997441,
"resource": "good",
"resource_id": 46810311,
"status": "delete",
"data": {
"title": "new_goods",
"value": "new_goods",
"label": "new_goods",
"article": "",
"category": "test",
"category_id": 1693647,
"salon_id": 997441,
"good_id": 46810311,
"cost": 1000,
"unit_id": 216760,
"unit_short_title": "шт",
"service_unit_id": 216763,
"service_unit_short_title": "г",
"actual_cost": 700,
"unit_actual_cost": 70,
"unit_actual_cost_format": "70 ₽",
"unit_equals": 10,
"barcode": "",
"is_chain": false,
"comment": "goods_954",
"loyalty_abonement_type_id": 0,
"loyalty_certificate_type_id": 0,
"loyalty_certificate_type": null,
"loyalty_allow_empty_code": 1,
"loyalty_serial_number_limited": 0,
"actual_amounts": [],
"critical_amount": 0,
"desired_amount": 0,
"last_change_date": "2026-03-07T14:47:08+0400",
"is_goods_mark_enabled": false
}
}
Услуги
Webhook отправляется при изменениях, связанных с услугами филиала.
Поддерживаются следующие типы событий:
Событие | Описание |
create | Создание услуги |
update | Изменение услуги |
delete | Удаление услуги |
Тип события передается в поле status.
Формат webhook-уведомления
Каждый webhook содержит базовые поля верхнего уровня.
Поле | Тип | Описание |
company_id | integer | ID филиала |
resource | string | Тип ресурса. Для услуг значение всегда service |
resource_id | integer | ID услуги |
status | string | Тип события (create, update, delete) |
data | object | Объект с данными услуги |
Структура объекта data
Объект data содержит информацию об услуге на момент события.
Поле | Тип | Описание |
id | integer | ID услуги |
salon_service_id | integer | ID связи услуги с филиалом |
title | string | Название услуги |
booking_title | string | Название услуги, отображаемое при онлайн-записи |
category_id | integer | ID категории услуги |
price_min | number | Минимальная цена услуги |
price_max | number | Максимальная цена услуги |
duration | integer | Длительность услуги в секундах |
discount | number | Скидка на услугу |
comment | string | Комментарий к услуге |
weight | integer | Вес услуги (используется для сортировки) |
active | integer | Активна ли услуга в онлайн-записи (1 — активна, 0 — отключена) |
api_id | string | integer | Внешний идентификатор услуги |
staff | array | Список сотрудников, оказывающих услугу |
image_group | array | Группа изображений услуги |
prepaid | string | Настройки предоплаты для услуги |
is_multi | boolean | Признак групповой услуги |
capacity | integer | Максимальное количество клиентов на одну запись |
is_price_managed_only_in_chain | boolean | Признак управления ценой только на уровне сети |
is_comment_managed_only_in_chain | boolean | Признак управления комментарием только на уровне сети |
Структура объектов массива staff
Массив staff содержит список сотрудников, которые могут оказывать услугу.
Поле | Тип | Описание |
id | integer | ID сотрудника |
seance_length | integer | Длительность оказания |
Примеры webhook
Создание услуги
{
"company_id": 997441,
"resource": "service",
"resource_id": 27140007,
"status": "create",
"data": {
"id": 27140007,
"salon_service_id": 30950727,
"title": "New_services",
"booking_title": "New_services",
"category_id": 26599596,
"price_min": 1000,
"price_max": 1000,
"duration": 3600,
"discount": 0,
"comment": "",
"weight": 0,
"active": 1,
"api_id": "0",
"staff": [
{
"id": 5049378,
"seance_length": 3600
}
],
"image_group": [],
"prepaid": "forbidden",
"is_multi": false,
"capacity": 0,
"is_price_managed_only_in_chain": false,
"is_comment_managed_only_in_chain": false
}
}
Изменение услуги
{
"company_id": 997441,
"resource": "service",
"resource_id": 27140007,
"status": "update",
"data": {
"id": 27140007,
"salon_service_id": 30950727,
"title": "New_services",
"booking_title": "New_services",
"category_id": 26599596,
"price_min": 900,
"price_max": 900,
"duration": 3600,
"discount": 0,
"comment": "",
"weight": 0,
"active": 1,
"api_id": "0",
"staff": [
{
"id": 5049378,
"seance_length": 3600
}
],
"image_group": [],
"prepaid": "forbidden",
"is_multi": false,
"capacity": 0,
"is_price_managed_only_in_chain": false,
"is_comment_managed_only_in_chain": false
}
}
Удаление услуги
{
"company_id": 997441,
"resource": "service",
"resource_id": 27140007,
"status": "delete",
"data": {
"id": 27140007,
"salon_service_id": 30950727,
"title": "New_services",
"booking_title": "New_services",
"category_id": 26599596,
"price_min": 900,
"price_max": 900,
"duration": 3600,
"discount": 0,
"comment": "",
"weight": 0,
"active": 1,
"api_id": "0",
"staff": [],
"image_group": [],
"prepaid": "forbidden",
"is_multi": false,
"capacity": 0,
"is_price_managed_only_in_chain": false,
"is_comment_managed_only_in_chain": false
}
}
Категории услуг
Webhook отправляется при изменениях, связанных с категориями услуг.
Поддерживаются следующие типы событий:
Событие | Описание |
create | Создание категории услуг |
update | Изменение категории услуг |
delete | Удаление категории услуг |
Тип события передается в поле status.
Формат webhook-уведомления
Каждый webhook содержит базовые поля верхнего уровня.
Поле | Тип | Описание |
company_id | integer | ID филиала |
resource | string | Тип ресурса. |
resource_id | integer | ID категории услуг |
status | string | Тип события (create, update, delete) |
data | object | Объект с данными категории услуг |
Структура объекта data
Объект data содержит информацию о категории услуг на момент события.
Поле | Тип | Описание |
id | integer | ID категории услуг |
salon_service_id | integer | ID связи категории услуг с филиалом |
title | string | Название категории |
weight | integer | Вес категории (используется для |
api_id | string | integer | Внешний идентификатор категории |
staff | array | Список сотрудников, связанных |
is_chain | boolean | Признак сетевой категории |
Примеры webhook
Создание категории услуг
{
"company_id": 997441,
"resource": "service_category",
"resource_id": 27140598,
"status": "create",
"data": {
"id": 27140598,
"salon_service_id": 30951402,
"title": "New_categories",
"weight": 0,
"api_id": "",
"staff": [],
"is_chain": false
}
}
Изменение категории услуг
{
"company_id": 997441,
"resource": "service_category",
"resource_id": 27140598,
"status": "update",
"data": {
"id": 27140598,
"salon_service_id": 30951402,
"title": "New_categories",
"weight": 0,
"api_id": "",
"staff": [],
"is_chain": false
}
}
Удаление категории услуг
{
"company_id": 997441,
"resource": "service_category",
"resource_id": 27140598,
"status": "delete",
"data": {
"id": 27140598,
"salon_service_id": 30951402,
"title": "New_categories",
"weight": 0,
"api_id": "",
"staff": [],
"is_chain": false
}
}
Клиенты
Webhook отправляется при изменениях, связанных с клиентами филиала.
Поддерживаются следующие типы событий:
Событие | Описание |
create | Создание клиента |
update | Изменение клиента |
delete | Удаление клиента |
Тип события передается в поле status.
Формат webhook-уведомления
Каждый webhook содержит базовые поля верхнего уровня.
Поле | Тип | Описание |
company_id | integer | ID филиала |
resource | string | Тип ресурса. Для клиентов |
resource_id | integer | ID клиента |
status | string | Тип события (create, update, delete) |
data | object | Объект с данными клиента |
Структура объекта data
Объект data содержит информацию о клиенте на момент события.
Поле | Тип | Описание |
id | integer | ID клиента |
name | string | Имя клиента |
surname | string | Фамилия клиента |
patronymic | string | Отчество клиента |
display_name | string | Отображаемое имя клиента |
phone | string | Телефон клиента |
string | Email клиента | |
card | string | Номер карты клиента |
birth_date | string | Дата рождения клиента |
comment | string | Комментарий |
discount | number | Скидка клиента |
visits | integer | Количество визитов клиента |
sex_id | integer | Пол клиента |
sex | string | Текстовое значение пола клиента |
sms_check | integer | Отправлять поздравления |
sms_bot | integer | Дублирует sms_not, некорректное поле |
sms_not | integer | Исключить клиента из СМС-рассылок |
spent | number | Сумма, потраченная клиентом |
paid | number | Сумма оплаченных услуг |
balance | number | Баланс клиента |
importance_id | integer | Класс важности клиента |
importance | string | Название класса важности |
categories | array | Категории клиента |
last_change_date | string | Дата и время последнего |
custom_fields | object | Дополнительные пользовательские |
Структура поля custom_fields
Объект custom_fields содержит значения дополнительных полей клиента.
Поля передаются в формате:
"api_key": "value"
где:
- api_key — ключ пользовательского поля
- value — значение поля
Пример:
"custom_fields": {
"text": "text!"
}
Примеры webhook
Создание клиента
{
"company_id": 997441,
"resource": "client",
"resource_id": 371102091,
"status": "create",
"data": {
"id": 371102091,
"name": "New_Client",
"surname": "",
"patronymic": "",
"display_name": "New_Client",
"phone": "+79115566866",
"email": "",
"card": "",
"birth_date": "",
"comment": "test_1",
"discount": 0,
"visits": 0,
"sex_id": 0,
"sex": "Неизвестно",
"sms_check": 0,
"sms_bot": 0,
"sms_not": 0,
"spent": 0,
"paid": 0,
"balance": 0,
"importance_id": 0,
"importance": "Без класса важности",
"categories": [],
"last_change_date": "2026-03-07T16:55:56+0400",
"custom_fields": {}
}
}
Изменение клиента
{
"company_id": 997441,
"resource": "client",
"resource_id": 371102091,
"status": "update",
"data": {
"id": 371102091,
"name": "New_Client",
"surname": "",
"patronymic": "",
"display_name": "New_Client",
"phone": "+79115566866",
"email": "",
"card": "",
"birth_date": "",
"comment": "test_2",
"discount": 0,
"visits": 0,
"sex_id": 0,
"sex": "Неизвестно",
"sms_check": 0,
"sms_bot": 0,
"sms_not": 0,
"spent": 0,
"paid": 0,
"balance": 0,
"importance_id": 0,
"importance": "Без класса важности",
"categories": [],
"last_change_date": "2026-03-07T16:56:43+0400",
"custom_fields": {}
}
}
Удаление клиента
{
"company_id": 997441,
"resource": "client",
"resource_id": 371102091,
"status": "delete",
"data": {
"id": 371102091,
"name": "New_Client",
"surname": "",
"patronymic": "",
"display_name": "New_Client",
"phone": "+79115566866",
"email": "",
"card": "",
"birth_date": "",
"comment": "test_2",
"discount": 0,
"visits": 0,
"sex_id": 0,
"sex": "Неизвестно",
"sms_check": 0,
"sms_bot": 0,
"sms_not": 0,
"spent": 0,
"paid": 0,
"balance": 0,
"importance_id": 0,
"importance": "Без класса важности",
"categories": [],
"last_change_date": "2026-03-07T16:56:43+0400",
"custom_fields": {}
}
}
Записи
Webhook отправляется при изменениях, связанных с записями в журнале записи.
Поддерживаются следующие типы событий:
Событие | Описание |
create | Создание записи |
update | Изменение записи |
delete | Удаление записи |
Тип события передается в поле status.
Формат webhook-уведомления
Каждый webhook содержит базовые поля верхнего уровня.
Поле | Тип | Описание |
company_id | integer | ID филиала |
resource | string | Тип ресурса. Для записей |
resource_id | integer | ID записи |
status | string | Тип события (create, update, delete) |
data | object | Объект с данными записи |
Основные поля записи
Объект data содержит информацию о записи на момент события.
Поле | Тип | Описание |
id | integer | ID записи |
company_id | integer | ID филиала |
staff_id | integer | ID сотрудника |
clients_count | integer | Количество клиентов |
date | string | Дата и время записи |
datetime | string | Дата и время записи в |
seance_length | integer | Длительность записи |
length | integer | Общая длительность записи |
comment | string | Комментарий к записи |
online | boolean | Признак онлайн-записи |
attendance | integer | Статус записи |
visit_id | integer | ID визита |
visit_attendance | integer | Статус визита |
confirmed | integer | Подтверждена ли запись |
deleted | boolean | Признак удаления записи |
created_user_id | integer | ID пользователя, |
create_date | string | Дата создания записи |
last_change_date | string | Дата последнего |
api_id | string | Внешний идентификатор записи |
activity_id | integer | ID группового события |
bookform_id | integer | ID формы онлайн-записи |
record_from | string | Источник записи |
is_mobile | integer | Создана ли запись с |
Уведомления и напоминания
Поле | Тип | Описание |
sms_before | integer | Отправлено ли СМС-напоминание |
sms_now | integer | Отправить СМС после создания |
sms_now_text | string | Текст СМС |
email_now | integer | Отправить email |
sms_remain_hours | integer | null | За сколько часов отправлять СМС напоминание |
email_remain_hours | integer | null | За сколько часов отправлять email напоминание |
notified | integer | Был ли клиент уведомлен |
Финансовые параметры
Поле | Тип | Описание |
paid_full | integer | Полностью ли оплачена запись (0/1) |
prepaid | boolean | Используется ли предоплата |
prepaid_confirmed | boolean | Подтверждена ли предоплата |
Услуги записи
Поле | Тип | Описание |
id | integer | ID услуги |
title | string | Название услуги |
cost | number | Стоимость услуги |
cost_to_pay | number | Итоговая стоимость к оплате |
manual_cost | number | Стоимость, установленная вручную |
cost_per_unit | number | Стоимость за единицу |
discount | number | Скидка |
first_cost | number | Начальная стоимость |
amount | number | Количество |
Сотрудник
Объект staff содержит информацию о сотруднике, выполняющем услугу.
Поле | Тип | Описание |
id | integer | ID сотрудника |
api_id | integer | null | Внешний идентификатор |
name | string | Имя сотрудника |
specialization | string | Специализация |
position | object | Должность сотрудника |
avatar | string | URL маленького аватара |
avatar_big | string | URL большого аватара |
rating | number | Рейтинг сотрудника |
votes_count | integer | Количество голосов |
Клиент
Объект client содержит информацию о клиенте записи.
Поле | Тип | Описание |
id | integer | ID клиента |
name | string | Имя клиента |
surname | string | Фамилия |
patronymic | string | Отчество |
display_name | string | Отображаемое имя |
phone | string | Телефон |
string | ||
card | string | Номер карты |
comment | string | Комментарий |
success_visits_count | integer | Количество успешных визитов |
fail_visits_count | integer | Количество пропущенных визитов |
discount | number | Скидка клиента |
custom_fields | array | Дополнительные поля клиента |
sex | integer | Пол |
birthday | string | Дата рождения |
client_tags | array | Теги клиента |
Дополнительные данные
Поле | Тип | Описание |
goods_transactions | array | Товары, добавленные в запись |
custom_fields | array | Дополнительные поля записи |
custom_color | string | Цвет записи |
custom_font_color | string | Цвет текста записи |
record_labels | array | Категории записи |
documents | array | Связанные документы |
short_link | string | Короткая ссылка на запись |
review_link | string | Ссылка для отзыва |
composite | array | Комплексная запись |
Примеры webhook по записям
Создание записи
{
"company_id": 997441,
"resource": "record",
"resource_id": 1561921428,
"status": "create",
"data": {
"id": 1561921428,
"company_id": 997441,
"staff_id": 3094597,
"date": "2026-03-07 18:00:00",
"attendance": 0,
"services": [
{
"id": 25184394,
"title": "Мужская стрижка",
"cost": 1300
}
]
}
}
Изменение записи
{
"company_id": 997441,
"resource": "record",
"resource_id": 1561921428,
"status": "update",
"data": {
"id": 1561921428,
"comment": "test"
}
}
Удаление записи
{
"company_id": 997441,
"resource": "record",
"resource_id": 1561921428,
"status": "delete",
"data": {
"id": 1561921428,
"deleted": true
}
}
Продажа товаров
Webhook отправляется при изменениях, связанных с операциями продажи товаров.
Поддерживаются следующие типы событий:
Событие | Описание |
create | Создание продажи товара |
update | Изменение продажи товара |
delete | Удаление продажи товара |
Тип события передается в поле status.
Формат webhook-уведомления
Каждый webhook содержит базовые поля верхнего уровня.
Поле | Тип | Описание |
company_id | integer | ID филиала |
resource | string | Тип ресурса. Для продажи товаров |
resource_id | integer | ID операции продажи |
status | string | Тип события (create, update, delete) |
data | object | Объект с данными операции продажи |
Структура объекта data
Объект data содержит информацию об операции продажи товара на момент события.
Поле | Тип | Описание |
id | integer | ID операции продажи |
document_id | integer | ID связанного документа |
type_id | integer | ID типа операции |
type | string | Название типа операции |
operation_unit_type | integer | Тип единицы операции |
amount | number | Количество товара в операции |
create_date | string | Дата и время создания операции |
cost_per_unit | number | Стоимость за единицу товара |
cost | number | Общая стоимость операции |
discount | number | Скидка по операции |
comment | string | Комментарий к операции |
record_id | integer | ID записи, если продажа |
last_change_date | string | Дата и время последнего |
loyalty_abonement_id | integer | ID абонемента, если используется |
loyalty_certificate_id | integer | ID сертификата, если используется |
good | object | Объект товара |
unit | object | Объект единицы измерения |
storage | object | Объект склада |
client | object | Объект клиента |
master | object | Объект сотрудника |
service | array | Связанные услуги |
supplier | array | Связанные контрагенты |
Структура вложенных объектов
Объект good
Поле | Тип | Описание |
id | integer | ID товара |
title | string | Название товара |
Объект unit
Поле | Тип | Описание |
id | integer | ID единицы измерения |
title | string | Название единицы измерения |
short_title | string | Краткое название единицы измерения |
Объект storage
Поле | Тип | Описание |
id | integer | ID склада |
title | string | Название склада |
Объект client
Поле | Тип | Описание |
id | integer | ID клиента |
name | string | Имя клиента |
phone | string | Телефон клиента |
Объект master
Поле | Тип | Описание |
id | integer | ID сотрудника |
title | string | Имя сотрудника |
Примеры webhook
Создание продажи товара
{
"company_id": 997441,
"resource": "goods_operations_sale",
"resource_id": 1505139618,
"status": "create",
"data": {
"id": 1505139618,
"document_id": 1786795563,
"type_id": 1,
"type": "Продажа товара",
"operation_unit_type": 1,
"amount": -1,
"create_date": "2026-03-10T14:50:58+0400",
"cost_per_unit": 1000,
"cost": 1000,
"discount": 0,
"comment": "",
"record_id": 0,
"last_change_date": "2026-03-10T14:51:26+04:00",
"loyalty_abonement_id": 0,
"loyalty_certificate_id": 0,
"good": {
"id": 46902813,
"title": "Test_goods"
},
"unit": {
"id": 216760,
"title": "Штука",
"short_title": "шт."
},
"storage": {
"id": 2012214,
"title": "Товары"
},
"client": {
"id": 371127207,
"name": "Test_YC",
"phone": "79006464261"
},
"master": {
"id": 3094597,
"title": "Filipp Schigartcov"
},
"service": [],
"supplier": []
}
}
Изменение продажи товара
{
"company_id": 997441,
"resource": "goods_operations_sale",
"resource_id": 1505139618,
"status": "update",
"data": {
"id": 1505139618,
"document_id": 1786795563,
"type_id": 1,
"type": "Продажа товара",
"operation_unit_type": 1,
"amount": -2,
"create_date": "2026-03-10T14:50:58+0400",
"cost_per_unit": 1000,
"cost": 2000,
"discount": 0,
"comment": "",
"record_id": 0,
"last_change_date": "2026-03-10T14:52:03+04:00",
"loyalty_abonement_id": 0,
"loyalty_certificate_id": 0,
"good": {
"id": 46902813,
"title": "Test_goods"
},
"unit": {
"id": 216760,
"title": "Штука",
"short_title": "шт."
},
"storage": {
"id": 2012214,
"title": "Товары"
},
"client": {
"id": 371127207,
"name": "Test_YC",
"phone": "79006464261"
},
"master": {
"id": 3094597,
"title": "Filipp Schigartcov"
},
"service": [],
"supplier": []
}
}
Удаление продажи товара
{
"company_id": 997441,
"resource": "goods_operations_sale",
"resource_id": 1505139618,
"status": "delete",
"data": {
"id": 1505139618,
"document_id": 1786795563,
"type_id": 1,
"type": "Продажа товара",
"operation_unit_type": 1,
"amount": -2,
"create_date": "2026-03-10T14:50:58+0400",
"cost_per_unit": 1000,
"cost": 2000,
"discount": 0,
"comment": "",
"record_id": 0,
"last_change_date": "2026-03-10T14:52:47+04:00",
"loyalty_abonement_id": 0,
"loyalty_certificate_id": 0,
"good": {
"id": 46902813,
"title": "Test_goods"
},
"unit": {
"id": 216760,
"title": "Штука",
"short_title": "шт."
},
"storage": {
"id": 2012214,
"title": "Товары"
},
"client": {
"id": 371127207,
"name": "Test_YC",
"phone": "79006464261"
},
"master": {
"id": 3094597,
"title": "Filipp Schigartcov"
},
"service": [],
"supplier": []
}
}
Приход товара
Webhook отправляется при изменениях, связанных с операциями прихода товара.
Поддерживаются следующие типы событий:
Событие | Описание |
create | Создание прихода товара |
update | Изменение прихода товара |
delete | Удаление прихода товара |
Тип события передается в поле status.
Формат webhook-уведомления по приходу товара
Каждый webhook содержит базовые поля верхнего уровня.
Поле | Тип | Описание |
company_id | integer | ID филиала |
resource | string | Тип ресурса. Для операций |
resource_id | integer | ID операции прихода |
status | string | Тип события (create, update, delete) |
data | object | Объект с данными операции прихода |
Структура объекта data
Объект data содержит информацию об операции прихода товара на момент события.
Поле | Тип | Описание |
id | integer | ID операции прихода |
document_id | integer | ID связанного документа |
type_id | integer | ID типа операции |
type | string | Название типа операции |
operation_unit_type | integer | Тип единицы операции |
amount | number | Количество товара |
create_date | string | Дата и время создания операции |
cost_per_unit | number | Себестоимость за единицу |
cost | number | Общая стоимость операции |
discount | number | Скидка |
comment | string | Комментарий к операции |
record_id | integer | ID записи, если операция |
last_change_date | string | Дата и время |
loyalty_abonement_id | integer | ID абонемента |
loyalty_certificate_id | integer | ID сертификата |
good | object | Объект товара |
unit | object | Единица измерения |
storage | object | Склад |
client | array | Клиент |
master | array | Сотрудник |
service | array | Связанная услуга |
supplier | array | Контрагент |
Структура вложенных объектов
Объект good
Поле | Тип | Описание |
id | integer | ID товара |
title | string | Название товара |
Объект unit
Поле | Тип | Описание |
id | integer | ID единицы измерения |
title | string | Название единицы |
short_title | string | Краткое название |
Объект storage
Поле | Тип | Описание |
id | integer | ID склада |
title | string | Название склада |
Примеры webhook
Создание прихода товара
{
"company_id": 997441,
"resource": "goods_operations_receipt",
"resource_id": 1505181921,
"status": "create",
"data": {
"id": 1505181921,
"document_id": 1786846098,
"type_id": 3,
"type": "Приход товара",
"operation_unit_type": 1,
"amount": 1,
"create_date": "2026-03-10T15:06:00+0400",
"cost_per_unit": 800,
"cost": 800,
"discount": 0,
"comment": "",
"record_id": 0,
"last_change_date": "2026-03-10T15:06:24+04:00",
"loyalty_abonement_id": 0,
"loyalty_certificate_id": 0,
"good": {
"id": 46902813,
"title": "Test_goods"
},
"unit": {
"id": 216760,
"title": "Штука",
"short_title": "шт."
},
"storage": {
"id": 2012213,
"title": "Расходники"
},
"client": [],
"master": [],
"service": [],
"supplier": []
}
}
Изменение прихода товара
{
"company_id": 997441,
"resource": "goods_operations_receipt",
"resource_id": 1505181921,
"status": "update",
"data": {
"id": 1505181921,
"document_id": 1786846098,
"type_id": 3,
"type": "Приход товара",
"operation_unit_type": 1,
"amount": 2,
"create_date": "2026-03-10T15:06:00+0400",
"cost_per_unit": 800,
"cost": 1600,
"discount": 0,
"comment": "",
"record_id": 0,
"last_change_date": "2026-03-10T15:07:08+04:00",
"loyalty_abonement_id": 0,
"loyalty_certificate_id": 0,
"good": {
"id": 46902813,
"title": "Test_goods"
},
"unit": {
"id": 216760,
"title": "Штука",
"short_title": "шт."
},
"storage": {
"id": 2012213,
"title": "Расходники"
},
"client": [],
"master": [],
"service": [],
"supplier": []
}
}
Удаление прихода товара
{
"company_id": 997441,
"resource": "goods_operations_receipt",
"resource_id": 1505181921,
"status": "delete",
"data": {
"id": 1505181921,
"document_id": 1786846098,
"type_id": 3,
"type": "Приход товара",
"operation_unit_type": 1,
"amount": 2,
"create_date": "2026-03-10T15:06:00+0400",
"cost_per_unit": 800,
"cost": 1600,
"discount": 0,
"comment": "",
"record_id": 0,
"last_change_date": "2026-03-10T15:07:50+04:00",
"loyalty_abonement_id": 0,
"loyalty_certificate_id": 0,
"good": {
"id": 46902813,
"title": "Test_goods"
},
"unit": {
"id": 216760,
"title": "Штука",
"short_title": "шт."
},
"storage": {
"id": 2012213,
"title": "Расходники"
},
"client": [],
"master": [],
"service": [],
"supplier": []
}
}
Списание расходников
Webhook отправляется при изменениях, связанных с операциями списания расходников.
Поддерживаются следующие типы событий:
Событие | Описание |
create | Создание списания расходников |
update | Изменение списания расходников |
delete | Удаление списания расходников |
Тип события передается в поле status.
Формат webhook-уведомления по списанию расходников
Каждый webhook содержит базовые поля верхнего уровня.
Поле | Тип | Описание |
company_id | integer | ID филиала |
resource | string | Тип ресурса. Для списания |
resource_id | integer | ID операции списания |
status | string | Тип события (create, update, delete) |
data | object | Объект с данными операции списания |
Структура объекта data
Объект data содержит информацию об операции списания расходников.
id | integer | ID операции |
document_id | integer | ID связанного документа |
type_id | integer | ID типа операции |
type | string | Название типа операции |
operation_unit_type | integer | Тип единицы операции |
amount | number | Количество списанного |
create_date | string | Дата создания операции |
cost_per_unit | number | Себестоимость единицы |
cost | number | Общая стоимость списания |
discount | number | Скидка |
comment | string | Комментарий |
record_id | integer | ID записи, в рамках которой |
last_change_date | string | Дата последнего изменения |
loyalty_abonement_id | integer | ID абонемента |
loyalty_certificate_id | integer | ID сертификата |
good | object | Объект расходника |
unit | object | Единица измерения |
storage | object | Склад |
client | object | Клиент |
master | array | Сотрудник |
service | object | Услуга, в рамках которой |
supplier | array | Контрагент |
Структура вложенных объектов
Объект good
Поле | Тип | Описание |
id | integer | ID расходника |
title | string | Название расходника |
Объект unit
Поле | Тип | Описание |
id | integer | ID единицы измерения |
title | string | Название единицы |
short_title | string | Краткое название |
Объект storage
Поле | Тип | Описание |
id | integer | ID склада |
title | string | Название склада |
Объект client
Поле | Тип | Описание |
id | integer | ID клиента |
name | string | Имя клиента |
phone | string | Телефон клиента |
Объект service
Поле | Тип | Описание |
id | integer | ID услуги |
title | string | Название услуги |
Примеры webhook
Создание списания расходников
{
"company_id": 997441,
"resource": "goods_operations_consumable",
"resource_id": 1505280765,
"status": "create",
"data": {
"id": 1505280765,
"document_id": 1786965060,
"type_id": 2,
"type": "Списание расходников",
"operation_unit_type": 2,
"amount": -1,
"create_date": "2026-03-10T18:00:00+0400",
"cost_per_unit": 0.17,
"cost": 0.17,
"record_id": 1566746583,
"good": {
"id": 41289912,
"title": "test 123"
},
"unit": {
"id": 216763,
"title": "Грамм",
"short_title": "г"
},
"storage": {
"id": 2012213,
"title": "Расходники"
},
"client": {
"id": 241731761,
"name": "Filipp",
"phone": "79006464263"
},
"service": {
"id": 25184394,
"title": "Мужская стрижка"
}
}
}
Изменение списания расходников
{
"company_id": 997441,
"resource": "goods_operations_consumable",
"resource_id": 1505280768,
"status": "update",
"data": {
"id": 1505280768,
"amount": -1,
"cost": 800,
"record_id": 1566746583
}
}
Удаление списания расходников
{
"company_id": 997441,
"resource": "goods_operations_consumable",
"resource_id": 1505280765,
"status": "delete",
"data": {
"id": 1505280765,
"amount": -3,
"cost": 0.51,
"record_id": 1566746583
}
}
Особенности
- Значение amount передается отрицательным числом, так как расходник списывается.
- Операция списания расходников обычно связана с записью (record_id).
- Поле client содержит клиента записи.
- Поля master и supplier могут быть пустыми массивами.
Списание товара
Webhook отправляется при изменениях, связанных с операциями списания товаров.
Поддерживаются следующие типы событий:
Событие | Описание |
create | Создание списания |
update | Изменение списания |
delete | Удаление списания |
Тип события передается в поле status.
Формат webhook-уведомления
Каждый webhook содержит базовые поля верхнего уровня.
Поле | Тип | Описание |
company_id | integer | ID филиала |
resource | string | Тип ресурса. Для операций |
resource_id | integer | ID операции списания |
status | string | Тип события (create, update, delete) |
data | object | Объект с данными операции списания |
Структура объекта data
Объект data содержит информацию об операции списания товара.
Поле | Тип | Описание |
id | integer | ID операции списания |
document_id | integer | ID связанного документа |
type_id | integer | ID типа операции |
type | string | Название типа операции |
operation_unit_type | integer | Тип единицы операции |
amount | number | Количество списанного товара |
create_date | string | Дата и время создания операции |
cost_per_unit | number | Себестоимость единицы товара |
cost | number | Общая стоимость списания |
discount | number | Скидка |
comment | string | Комментарий |
record_id | integer | ID записи, если операция |
last_change_date | string | Дата последнего изменения |
loyalty_abonement_id | integer | ID абонемента |
loyalty_certificate_id | integer | ID сертификата |
good | object | Объект товара |
unit | object | Единица измерения |
storage | object | Склад |
client | array | Клиент |
master | array | Сотрудник |
service | array | Связанная услуга |
supplier | array | Контрагент |
Структура вложенных объектов
Объект good
Поле | Тип | Описание |
id | integer | ID товара |
title | string | Название товара |
Объект unit
Поле | Тип | Описание |
id | integer | ID единицы измерения |
title | string | Название единицы |
short_title | string | Краткое название |
Объект storage
Поле | Тип | Описание |
id | integer | ID склада |
title | string | Название склада |
Примеры webhook
Создание списания
{
"company_id": 997441,
"resource": "goods_operations_stolen",
"resource_id": 1505226180,
"status": "create",
"data": {
"id": 1505226180,
"document_id": 1786901040,
"type_id": 4,
"type": "Списание товара",
"operation_unit_type": 2,
"amount": -1,
"create_date": "2026-03-10T15:22:00+0400",
"cost_per_unit": 800,
"cost": 800,
"discount": 0,
"comment": "",
"record_id": 0,
"last_change_date": "2026-03-10T15:23:03+04:00",
"loyalty_abonement_id": 0,
"loyalty_certificate_id": 0,
"good": {
"id": 46902813,
"title": "Test_goods"
},
"unit": {
"id": 216760,
"title": "Штука",
"short_title": "шт."
},
"storage": {
"id": 2012213,
"title": "Расходники"
},
"client": [],
"master": [],
"service": [],
"supplier": []
}
}
Изменение списания
{
"company_id": 997441,
"resource": "goods_operations_stolen",
"resource_id": 1505226180,
"status": "update",
"data": {
"id": 1505226180,
"document_id": 1786901040,
"type_id": 4,
"type": "Списание товара",
"operation_unit_type": 2,
"amount": -2,
"create_date": "2026-03-10T15:22:00+0400",
"cost_per_unit": 800,
"cost": 1600,
"discount": 0,
"comment": "",
"record_id": 0,
"last_change_date": "2026-03-10T15:23:26+04:00",
"loyalty_abonement_id": 0,
"loyalty_certificate_id": 0,
"good": {
"id": 46902813,
"title": "Test_goods"
},
"unit": {
"id": 216760,
"title": "Штука",
"short_title": "шт."
},
"storage": {
"id": 2012213,
"title": "Расходники"
},
"client": [],
"master": [],
"service": [],
"supplier": []
}
}
Перемещение товара
Webhook отправляется при создании операций перемещения товара между складами.
Поддерживаются следующие типы событий:
Событие | Описание |
create | Создание операции перемещения |
Тип события передается в поле status.
Важно
На текущий момент события update и delete для операций перемещения не формируются.
Формат webhook-уведомления
Каждый webhook содержит базовые поля верхнего уровня.
Поле | Тип | Описание |
company_id | integer | ID филиала |
resource | string | Тип ресурса. Для операций |
resource_id | integer | ID операции перемещения |
status | string | Тип события (create) |
data | object | Объект с данными операции |
Структура объекта data
Объект data содержит информацию об операции перемещения товара.
Поле | Тип | Описание |
id | integer | ID операции |
document_id | integer | ID документа перемещения |
type_id | integer | ID типа операции |
type | string | Название операции |
operation_unit_type | integer | Тип единицы операции |
amount | number | Количество перемещаемого товара |
create_date | string | Дата создания операции |
cost_per_unit | number | Себестоимость единицы |
cost | number | Общая стоимость |
discount | number | Скидка |
comment | string | Комментарий |
record_id | integer | ID записи, если операция |
last_change_date | string | Дата последнего изменения |
good | object | Объект товара |
unit | object | Единица измерения |
storage | object | Склад |
client | array | Клиент |
master | array | Сотрудник |
service | array | Связанная услуга |
supplier | array | Поставщик |
Структура вложенных объектов
Объект good
Поле | Тип | Описание |
id | integer | ID товара |
title | string | Название товара |
Объект unit
Поле | Тип | Описание |
id | integer | ID единицы измерения |
title | string | Название единицы |
short_title | string | Краткое название |
Объект storage
Поле | Тип | Описание |
id | integer | ID склада |
title | string | Название склада |
Особенности
При перемещении товара между складами система формирует две операции:
- Списание товара со склада-источника (amount отрицательный).
- Приход товара на склад-получатель (amount положительный).
Каждая операция отправляется отдельным webhook-событием create.
Обе операции имеют одинаковый document_id, что позволяет связать их между собой.
Примеры webhook
Списание со склада-источника
{
"company_id": 997441,
"resource": "goods_operations_move",
"resource_id": 1505320617,
"status": "create",
"data": {
"id": 1505320617,
"document_id": 1787013297,
"type": "Перемещение товара",
"amount": -1,
"good": {
"id": 46902813,
"title": "Test_goods"
},
"storage": {
"id": 2012213,
"title": "Расходники"
}
}
}
Приход на склад-получатель
{
"company_id": 997441,
"resource": "goods_operations_move",
"resource_id": 1505320620,
"status": "create",
"data": {
"id": 1505320620,
"document_id": 1787013297,
"type": "Перемещение товара",
"amount": 1,
"good": {
"id": 46902813,
"title": "Test_goods"
},
"storage": {
"id": 2012214,
"title": "Товары"
}
}
}
Финансовые операции
Webhook отправляется при изменениях, связанных с финансовыми операциями.
Поддерживаются следующие типы событий:
Событие | Описание |
create | Создание финансовой операции |
update | Изменение финансовой операции |
delete | Удаление финансовой операции |
Тип события передается в поле status.
Формат webhook-уведомления
Каждый webhook содержит базовые поля верхнего уровня.
Поле | Тип | Описание |
company_id | integer | ID филиала |
resource | string | Тип ресурса. Для финансовых |
resource_id | integer | ID финансовой операции |
status | string | Тип события (create, update, delete) |
data | object | Объект с данными финансовой операции |
Структура объекта data
Объект data содержит информацию о финансовой операции.
Поле | Тип | Описание |
id | integer | ID транзакции |
document_id | integer | ID документа |
date | string | Дата создания транзакции |
amount | number | Сумма операции |
comment | string | Комментарий |
last_change_date | string | Дата последнего изменения |
record_id | integer | ID записи |
visit_id | integer | ID визита |
sold_item_id | integer | ID проданного элемента |
sold_item_type | string | Тип проданного элемента |
expense | object | Статья платежа |
master | array | Сотрудник |
supplier | array | Контрагент |
account | object | Касса |
client | object | Клиент |
record | object | Связанная запись |
Структура вложенных объектов
Объект expense
Поле | Тип | Описание |
id | integer | ID статьи платежа |
title | string | Название статьи |
type | integer | Тип статьи |
Объект account
Поле | Тип | Описание |
id | integer | ID кассы |
title | string | Название кассы |
is_cash | boolean | Является ли касса наличной |
is_default | boolean | Касса по умолчанию |
Объект client
Поле | Тип | Описание |
id | integer | ID клиента |
name | string | Имя клиента |
surname | string | Фамилия |
patronymic | string | Отчество |
phone | string | Телефон |
string |
Объект record
Поле | Тип | Описание |
id | integer | ID записи |
location_id | integer | ID филиала |
staff_id | integer | ID сотрудника |
date | string | Дата записи |
visit_id | integer | ID визита |
attendance_status | integer | Статус визита |
paid_full | boolean | Полностью ли оплачена запись |
is_online | boolean | Онлайн-запись |
prepaid | boolean | Используется ли предоплата |
clients_count | integer | Количество клиентов |
deleted | boolean | Признак удаления записи |
Примеры webhook
Создание финансовой операции
{
"company_id": 997441,
"resource": "finances_operation",
"resource_id": 1362847671,
"status": "create",
"data": {
"id": 1362847671,
"document_id": 1787082051,
"date": "2026-03-12T12:55:00+0400",
"amount": 1300,
"expense": {
"id": 5,
"title": "Оказание услуг"
},
"account": {
"id": 2038564,
"title": "Основная касса"
}
}
}
Изменение финансовой операции
{
"company_id": 997441,
"resource": "finances_operation",
"resource_id": 1362842394,
"status": "update",
"data": {
"id": 1362842394,
"amount": 1200,
"record_id": 1566746583
}
}
Удаление финансовой операции
{
"company_id": 997441,
"resource": "finances_operation",
"resource_id": 1362847671,
"status": "delete",
"data": {
"id": 1362847671,
"amount": 1300
}
}