Работа с записями
Обзор
Записи — основа Bronjoy. Это руководство описывает перспективу сотрудника и владельца: создание, просмотр, обновление и управление записями на протяжении всего их жизненного цикла.
Клиентская часть процесса описана в разделе Процесс записи.
Схема статусов записи
Draft → Pending → Confirmed → Completed
↓ ↓
Cancelled NoShow
| Статус | Значение |
|---|---|
Pending | Создана, ожидает подтверждения или оплаты |
Confirmed | Оплата получена или подтверждено сотрудником вручную |
Completed | Услуга оказана — устанавливается сотрудником вручную |
Cancelled | Отменено клиентом или сотрудником |
NoShow | Клиент не пришёл |
Создание записей (сотрудником)
Сотрудники могут создавать записи от имени клиентов:
POST /api/org/appointments
Authorization: Bearer your-token
Content-Type: application/json
{
"client_id": 42,
"service_id": 1,
"staff_id": 3,
"branch_id": 1,
"start_time": "2026-04-01T10:00:00Z",
"notes": "Regular client, prefers extra pressure"
}
Советы:
- Всегда заполняйте
notesдля клиентов с особыми пожеланиями или медицинскими показаниями - Если клиента ещё нет в базе, сначала создайте его через
POST /api/org/clients - Записи, созданные сотрудником, по умолчанию сразу имеют статус
Confirmed(минуя оплату)
Список записей
Все записи
GET /api/org/appointments
Authorization: Bearer your-token
Фильтрация по диапазону дат, статусу или сотруднику:
GET /api/org/appointments?start_date=2026-04-01&end_date=2026-04-30&status=Confirmed&staff_id=3
Записи в ожидании
Посмотреть записи, требующие действия (подтверждение, оплата):
GET /api/org/appointments/pending
Регулярно просматривайте этот список — зависшие записи в ожидании могут означать проблемы с оплатой или забытые подтверждения.
Вид календаря
GET /api/org/appointments/calendar?start=2026-04-01&end=2026-04-30
Возвращает структуру, удобную для отрисовки календаря. Используйте этот эндпоинт для календаря в своей панели управления.
Обновление записи
PUT /api/org/appointments/{appointment}
Content-Type: application/json
{
"notes": "Updated preference: light pressure only",
"staff_id": 4
}
Большинство полей записи можно менять, пока она не завершена и не отменена.
Переходы между статусами
Подтвердить запись
Вручную подтвердите запись в ожидании (например, оплата получена офлайн):
POST /api/org/appointments/{appointment}/submit
Отмена
POST /api/org/appointments/{appointment}/cancel
Content-Type: application/json
{
"reason": "Staff unavailable due to illness"
}
При отмене клиент получает уведомление. Если оплата была получена, возврат нужно инициировать отдельно (см. Платежи).
Перенос
POST /api/org/appointments/{appointment}/reschedule
Content-Type: application/json
{
"start_time": "2026-04-02T11:00:00Z",
"staff_id": 3
}
Клиент получает уведомление о новом времени.
Массовые операции
Эффективное управление сразу несколькими записями:
Массовое обновление
POST /api/org/appointments/batch-update
Content-Type: application/json
{
"ids": [101, 102, 103],
"data": { "status": "Completed" }
}
Удобно, чтобы отметить записи за день как завершённые.
Массовое удаление
POST /api/org/appointments/batch-destroy
Content-Type: application/json
{
"ids": [104, 105]
}
Лучше отменять, чем удалять. Удалённые записи не попадают в историю и отчёты.
Заметки о клиенте
Прикрепляйте внутренние заметки к профилю клиента — они видны сотрудникам, но не клиентам:
POST /api/org/clients/{client}/notes
Content-Type: application/json
{
"note": "Allergic to certain hair dyes. Always check before service."
}
Заметки показываются при просмотре записи клиента и помогают сотрудникам подготовиться.
Лучшие практики
Ежедневный рабочий процесс
- Утро — просмотрите записи на сегодня в календаре. Проверьте, нет ли записей в статусе
Pending, которые нужно подтвердить. - В течение дня — отмечайте записи как
Completedпосле оказания услуги. - Конец дня — массовым обновлением завершите все оставшиеся записи за день.
Что делать с неявками
Если клиент не пришёл, отметьте запись как NoShow, а не отменяйте. Так сохраняются данные о неявках и легче выявить закономерности.
Записи с неявкой не считаются отменами и не запускают логику возврата средств.
Защита от двойных записей
Калькулятор слотов автоматически предотвращает двойное бронирование. Однако:
- Если вы создаёте записи вручную, будьте внимательны с
start_time— при ручном создании он не проверяется на пересечение с существующими записями - Всегда проверяйте календарь перед созданием записи вручную на конкретное время
Отмены в последний момент
Настройте cancellation_hours в настройках, чтобы задать, за сколько времени клиенты могут отменять записи. После этого окна клиент всё ещё может запросить отмену, но обработать её сотруднику придётся вручную.
Отчёты и аналитика
GET /api/org/dashboard
Панель управления возвращает ключевые метрики, в том числе:
- Количество записей на сегодня
- Предстоящие записи на этой неделе
- Сводку по выручке
- Последние отмены и неявки
Для детальных отчётов по транзакциям:
GET /api/org/transactions
GET /api/org/transactions/summary
GET /api/org/transactions/export