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

# Оплата: модель, знак и проверки

> Центральная сущность финансового модуля: поля оплаты, нормализация знака суммы, автоподбор счёта, проверки при создании, уведомления и граница «оплата → прибыль».

Полный перечень полей — в [глоссарии оплаты](/ru/logic/finances/payments-glossary).

## Модель данных

Оплата — центральная сущность финансового модуля. Одна запись всегда относится ровно к одному объекту бизнеса.

| Поле                                             | Тип                   | Назначение                                                                              |
| ------------------------------------------------ | --------------------- | --------------------------------------------------------------------------------------- |
| Направление                                      | выбор (приход/расход) | Задаёт знак суммы; при сохранении приход делается положительным, расход — отрицательным |
| Сумма                                            | число (2 знака)       | Итоговая величина со знаком; знак принудительно выставляется по направлению             |
| Статус                                           | выбор                 | Ожидает оплаты, успешно, ошибка, истёк срок; по умолчанию «успешно»                     |
| Вид оплаты                                       | связь                 | Способ оплаты; по нему автоматически подбирается счёт                                   |
| Счёт                                             | связь                 | Счёт, на балансе которого отражается сумма; подставляется автоматически по виду оплаты  |
| Статья                                           | связь                 | Статья прихода/расхода для аналитики                                                    |
| Кто создал                                       | связь                 | Сотрудник, оформивший оплату                                                            |
| Аренда / Продажа / Мастерская / Тех.обслуживание | связь                 | Объект, к которому относится оплата (только один)                                       |
| Депозит / Штраф                                  | связь                 | Привязка к залогу или начисленному штрафу по аренде                                     |
| Парная оплата (обмен)                            | связь на себя         | Встречная оплата при переводе между счетами                                             |
| Метки                                            | множественная связь   | Произвольные метки для группировки и фильтрации                                         |
| Служебные данные                                 | структура             | Технические пометки; влияют на синхронизацию с Kaspi и на запрет удаления               |
| Комментарий                                      | текст                 | Произвольное примечание                                                                 |

<Info>
  Оплата не может одновременно относиться к аренде, продаже, мастерской и тех.обслуживанию — при указании одного объекта
  остальные обнуляются. Хотя бы один объект указать обязательно (это проверяется ещё до основной валидации).
</Info>

## Логика и побочные эффекты

### Знак суммы и подбор счёта

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

<Warning>
  Автоподстановка берёт **первый попавшийся** счёт с этим видом оплаты. Если один вид оплаты привязан к нескольким счетам,
  результат становится непредсказуемым. У переводов между счетами вид оплаты не задаётся, поэтому там счета остаются
  заданными явно (откуда/куда) — подробнее в разделе [«Переводы между счетами и возвраты»](/ru/logic/finances/transfers-refunds).
</Warning>

### Проверки суммы при создании

* **Продажа**: сумма не может превышать остаток к оплате по продаже; дополнительно проверяется наличие продаваемого
  инвентаря на складе.
* **Аренда**: сумма не может превысить остаток по аренде (цена со скидкой + штрафы − уже оплачено), а при оплате депозита —
  остаток по депозиту. При включённой настройке переплаты эти проверки пропускаются.
* **Мастерская**: сумма не может превышать остаток по задаче.
* **Распределение**: если оно передано по аренде и непусто, сумма всех частей обязана точно совпадать с суммой оплаты (см.
  [«Распределение, назначение платежа и контрагенты»](/ru/logic/finances/distribution)).

<Note>
  Проверка достаточности инвентаря на складе выполняется **только для оплат по продаже**, но не по аренде. Проверка равенства
  распределения сумме оплаты срабатывает только для оплат по аренде.
</Note>

### Пересчёт оплаченности заказа

После любого сохранения или удаления оплаты автоматически пересчитываются суммы по связанному объекту:

* по **аренде** — обновляется оплаченность заказа (сумма всех успешных платежей аренды, не привязанных к назначению платежа);
* по **продаже** — дочерние расчёты продажи;
* по **задаче мастерской** — расчёты задачи.

Следом отложенно (в фоне) запускается пересчёт дневной прибыли — об этом ниже.

### Уведомления

* **О поступлении** — при создании новой успешной оплаты с положительной суммой; текст зависит от объекта. Депозитные
  оплаты по аренде намеренно **не** порождают такое уведомление.
* **Об удалении** — при удалении оплаты, с текстом по соответствующему объекту.
* **О возврате** — сразу после оформления возврата, с указанием объекта и причины (причина подставляется вместо комментария;
  подробнее — в разделе [«Переводы между счетами и возвраты»](/ru/logic/finances/transfers-refunds)). Возвраты по залогам
  из этого правила исключены — как и приход залога, они уведомлений не порождают.

<Note>
  Уведомление о поступлении не отправляется, если сумма не положительна, если это не новая запись или если статус не «успешно».
  Поэтому для оплаты возврата (отрицательная сумма) обычное уведомление о поступлении не срабатывает.
</Note>

## Как оплаты превращаются в прибыль

Оплата **не пишет прибыль напрямую**. При её сохранении или удалении срабатывает граница «оплата → прибыль»:

<Steps>
  <Step title="Пересчёт оплаченной суммы">
    Система заново собирает оплаченную сумму по аренде (или продаже) как сумму успешных платежей, не привязанных к назначению
    платежа, округлённую до целого.
  </Step>

  <Step title="Фоновый пересчёт прибыли">
    Запускается отложенная задача: ей передаются период аренды, цены по группам (инвентарь, услуги, доставка, штрафы) и общая
    оплаченная сумма.
  </Step>

  <Step title="Раскладка по дням «по остатку»">
    Оплаченная сумма раскладывается по дням и позициям своим алгоритмом: заводится «остаток», равный оплаченной сумме, и
    последовательно расходуется на предметы проката → услуги → доставку → штрафы. По каждой позиции и дню берётся минимум из
    планового дневного значения и оставшегося остатка.
  </Step>

  <Step title="Обновление окупаемости">
    По каждой затронутой единице инвентаря пересчитывается накопленная окупаемость — прибыль относительно закупочной цены.
  </Step>
</Steps>

<Warning>
  Строки **распределения оплаты** по позициям в этом расчёте не участвуют — прибыль игнорирует, как менеджер разметил платёж,
  и раскладывает общую оплаченную сумму в фиксированном порядке (сначала инвентарь, затем услуги, доставка, штрафы).
  Из-за этого сумма дневной прибыли не обязана совпадать ни с оплаченной суммой, ни с суммами частей распределения.
</Warning>

Подробности алгоритма раскладки, коэффициент оплаты и расчёт окупаемости описаны на странице
[«Прибыль и окупаемость»](/ru/logic/profit-payback).

## Связанные страницы

<CardGroup cols={2}>
  <Card title="Глоссарий: Оплата" icon="book" href="/ru/logic/finances/payments-glossary">
    Полный перечень полей оплаты и моделей пересчёта прибыли.
  </Card>

  <Card title="Прибыль и окупаемость" icon="gears" href="/ru/logic/profit-payback">
    Как оплаченная сумма раскладывается по дням и сворачивается в окупаемость инвентаря.
  </Card>

  <Card title="Счета, виды оплаты и статьи" icon="cash-register" href="/ru/logic/finances/accounts">
    Как подбирается счёт и пересчитывается его баланс.
  </Card>

  <Card title="Депозиты, штрафы и транзакции" icon="wallet" href="/ru/logic/rent/deposits-penalties">
    Депозиты и штрафы по аренде, к которым привязываются оплаты.
  </Card>

  <Card title="Жизненный цикл аренды" icon="clock-rotate-left" href="/ru/logic/rent/lifecycle">
    Как статусы аренды влияют на оплаченность и графики платежей.
  </Card>

  <Card title="Фоновые процессы" icon="gears" href="/ru/logic/background-tasks">
    Задачи пересчёта оплаты, прибыли и графиков.
  </Card>
</CardGroup>
