Долг, аванс и счета

Когда клиент считается должен, куда садится аванс и как счёт связан с записанными часами.

Долг и аванс — строго по счетам

«Клиент должен» — формальный факт: выставлено + расходы за счёт клиента − получено. Наработанное без счёта долгом не считается. Показывается по своему проекту, а не суммой по клиенту.

«Не выставлено» — отдельное напоминание: работа записана, счёта нет. Показывается по своему проекту (не суммой по клиенту) и только пока проект активен — в архиве он уже закрыт, там напоминания нет. Выставить или списать — решение ваше, но цифра не потеряется.

«Аванс» появляется только когда получено больше, чем вся наработка — выставленная и невыставленная. Деньги, просто перекрывающие незакрытые счётом часы, авансом не называются.

Клиентский пул. Если у клиента несколько проектов, платежи не нужно перекладывать между ними — пул сам их зачитывает. Долг показывается по своему проекту (выставлено − получено по каждому): если на один проект заплатили больше, чем по нему выставлено, излишек гасит долги соседей — сумма по клиенту сходится, но «клиент должен» больше не дублируется одной и той же цифрой на всех карточках. «Не выставлено» — тоже своё у каждого проекта. Аванс (получено больше всей наработки клиента) садится на свой проект — туда, где деньги пришли сверх работы; если переплата сначала покрыла долги соседей, авансом показывается остаток.

Пул защищает и от задвоения в «Оплачено», но только в одном случае: когда платежи клиента занесены на СОСЕДНИЙ его проект. Тогда «оплаченные» часы этого проекта считаются покрытыми теми переводами и второй раз не оцениваются — карточка проекта говорит об этом подсказкой «проверь оплату». Если же платежи занесены на самом проекте, отметки часов не пропадают: берётся бо́льшая из двух оценок.

Счёт и записи

Счёт в Бюро собирается из незаинвойсенных записей журнала по проектам клиента — включая записи всей команды: клиент платит за команду. Период в редакторе счёта не «создаёт» суммы, а лишь фильтрует этот пул по датам записей; по умолчанию берётся всё незаинвойсенное.

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

Черновик счёта записи не трогает. Отправка счёта переводит вошедшие в него записи в статус «выставлен» — с этого момента они попадают в «Выставлено», начинают гасить аванс клиента и не могут попасть во второй счёт. Двойное выставление невозможно по построению: незаинвойсенная запись перестаёт быть незаинвойсенной ровно в момент отправки.

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

Отметка «оплачен» — это регистрация денег: в леджер проекта ложится платёж на сумму счёта (сегодняшним числом), записи счёта становятся «оплачен» — заносить платёж руками не нужно. Отзыв отметки удаляет этот платёж и возвращает записи в «выставлен». Обратная дорога тоже честная: удаление счёта откатывает всё — у оплаченного сначала исчезают его платёж и статусы оплаты, затем записи возвращаются в «не выставлен» и снова готовы к выставлению. От несуществующего счёта не остаётся ни денег, ни статусов.

Что видит клиент

Отчёт по ссылке — с его стороны стола, и, в отличие от строгого «Клиент должен» на карточке, он показывает растущий долг: баланс = наработанное (все выполненные оплачиваемые часы, по ставке на их дату, с cap по фиксу) − полученное; знаки его глазами («−» значит «вы должны»). Так клиент видит долг по мере работы, а не только после счёта — а счёт ты выставляешь в конце периода. Поэтому часы, которые выставлять не собираешься, помечай как не-оплачиваемые, иначе попадут в долг. Расходы «за счёт клиента» добавляются к его балансу, ваши внутренние списания — никогда.

Дальше: доход и ставка по факту, цель года и норма дня и все правила расчётов.