---
title: Перенос и отмена визитов
summary: Визит подтверждают, переносят, отменяют с причиной, закрывают или удаляют целиком. Перенос — всё или ничего, отмена оставляет визит в истории клиента, а удалять спрашивают дважды.
tools: [talemo_confirm_visit, talemo_move_visit, talemo_cancel_visit, talemo_complete_visit, talemo_update_visit, talemo_delete_visit]
related: [visits, finding-times, visit-notices, resource-schedule]
search: [перенести запись, отменить запись, неявка]
---

# Перенос и отмена визитов

Любая правка визита у инструментов принимает `dry_run`: в ответе визит таким, каким
он станет, и ничего не сохраняется. Правка всегда относится ко всему визиту.

## Подтвердить

**Подтвердить** переводит записанный визит в подтверждённый. Повторное подтверждение
даёт тот же результат. Это отметка человека, клиенту она ничего не отправляет (см.
[Уведомления о визите](visit-notices.md)).

## Перенести

**Перенести** ставит визит на другое начало и, если нужно, на другие ресурсы,
например к другому мастеру. Всё, что занимает визит, переезжает вместе. Новое время
проходит те же проверки, что и запись: на шаге записи, в будущем, в открытом времени и
свободное. Мастер остаётся, а стол и кушетка остаются, пока свободны на новое время; занятые заменяет подбор по тому же правилу, что при записи.

Перенос — всё или ничего. Если что-то займут раньше, визит остаётся где был.
Отменённый и состоявшийся визит перенести нельзя. Подтверждения и напоминания
пересчитываются на новое время (см. [Уведомления о визите](visit-notices.md)).

## Отменить с причиной

**Отменить с причиной** спрашивает причину:

- **Клиент попросил**;
- **Мастер не может** (слово зависит от отрасли: специалист, тренер, преподаватель);
- **Не пришли**;
- **Другое**.

Время сразу освобождается у всех ресурсов, которые занимал визит, а сам визит
остаётся в истории клиента как отменённый. Причину видит только команда. Клиент,
который просто не пришёл, записывается как отмена с причиной «Не пришли»;
отдельного статуса для этого нет. Повторная отмена даёт тот же результат, а отменённый визит нельзя
подтвердить или перенести. Состоявшийся визит отменить нельзя.

Клиенту «запись отменена» пишет сам Talemo, если человек не сказал не писать. В окне
**Отменить с причиной** стоит галочка **Написать клиенту об отмене**, и человек снимает её,
если скажет клиенту сам. Для причины «Не пришли» и для визита, чьё время прошло, галочки
нет и ничего не пишется. Если Talemo всё равно не сможет написать — клиент ответил «стоп», в
карточке отмечено не писать или у карточки нет номера WhatsApp либо аккаунта Instagram, откуда
клиент писал, — окно говорит об этом вместо галочки и просит сообщить клиенту самому. Как
сообщение уходит и что в нём — в [Уведомлениях о визите](visit-notices.md).

Онлайн-администратор может попросить отменить визит, только для клиента своей переписки.
Решает человек из бизнеса в «Ждёт вас»; клиенту онлайн-администратор говорит, что бизнес
подтвердит.

## Закрыть, изменить цену

**Закрыть визит** и **Изменить цену** описаны в [Визитах](visits.md). Оба
остаются доступны и после того, как визит состоялся.

## Удалить

**Удалить визит** убирает его насовсем. Спрашивают дважды, и второй вопрос
говорит, что пропадёт: визит уйдёт из сетки и из карточки клиента, время
освободится, а выручка дня станет меньше. В журнале останется, кто удалил, когда и
что это был за визит. Если ошиблись в деталях, лучше **Изменить визит**, а клиента,
который не пришёл, лучше отменить.

## Кто может

Подтверждение и правка цен — одно право, перенос — другое, отмена — третье, запись
факта — четвёртое, удаление — пятое; все уровня филиала, и все можно ограничить «своим».
У роли «Администратор» они есть.

## Инструменты и отказы

- Каждый инструмент ниже принимает `dry_run`: в ответе визит таким, каким он станет, и ничего не сохраняется. Правка всегда относится ко всему визиту.
- `talemo_confirm_visit` отмечает, что человек подтвердил записанный визит. Повторное подтверждение возвращает визит как есть; отменённый отклоняется со статусом 409 и кодом `visit.cancelled`, состоявшийся — с `visit.done`.
- `talemo_move_visit` принимает `start` и, по желанию, `resource_ids`: всё время переезжает или ничего. Другой визит на пути — статус 409, код `slot.overlap` и `params.resource_id`; время вне открытого — `visit.outside_schedule`; прошлое — `visit.past`; состоявшийся и отменённый визит — `visit.done` и `visit.cancelled`. Новое время сначала найдите через `talemo_find_times` с `visit_id`.
- `talemo_cancel_visit` принимает `reason` и `tell_client`; время снова свободно. `tell_client` говорит, пишет ли Talemo клиенту, что визит отменён: человеку, помощнику и программе он обязателен: передавайте `true`, если человек не сказал не писать клиенту или что скажет сам; вызов без него отклоняется со статусом 400, кодом `request.body_invalid` и `params.field` `tell_client`. С `no_show` он может быть только `false`, а для визита, чьё время прошло, не пишется в любом случае. Онлайн-администратор его не выбирает: клиенту скажет Talemo после его хода, если онлайн-администратор не сказал сам. Клиент, который не пришёл, отменяется с `no_show`. Отменённый визит возвращается как есть; состоявшийся отклоняется со статусом 409 и кодом `visit.done`.
- `talemo_complete_visit` записывает, что визит состоялся: когда он был на самом деле, кто его делал, услуги и цены. Чего нет в запросе, остаётся как записано. Настоящее время — мастера, а место и аппарат держат время, на которое их записали. Запись заменяет план, а состоявшийся визит исправляют так же. Он заканчивается не позже чем сейчас, иначе вызов отклоняется с `visit.future`; время вне открытого — `visit.outside_schedule`, если `extend_schedule` его не откроет; отменённый визит — `visit.cancelled`.
- `talemo_update_visit` меняет цены услуг визита, записанного или состоявшегося: все по порядку, `null` — без цены. Прайс не меняется.
- `talemo_delete_visit` удаляет визит насовсем, а история контакта хранит строку о нём. Сначала спросите человека и покажите `dry_run`. Повторный вызов — `not_found`. Чтобы сохранить историю, отмените визит.
