Долг, аванс и счета
Когда клиент считается должен, куда садится аванс и как счёт связан с записанными часами.
Долг и аванс — строго по счетам
«Клиент должен» — формальный факт: выставлено + расходы за счёт клиента − получено. Наработанное без счёта долгом не считается. Показывается по своему проекту, а не суммой по клиенту.
«Не выставлено» — отдельное напоминание: работа записана, счёта нет. Показывается по своему проекту (не суммой по клиенту) и только пока проект активен — в архиве он уже закрыт, там напоминания нет. Выставить или списать — решение ваше, но цифра не потеряется.
«Аванс» появляется только когда получено больше, чем вся наработка — выставленная и невыставленная. Деньги, просто перекрывающие незакрытые счётом часы, авансом не называются.
Клиентский пул. Если у клиента несколько проектов, платежи не нужно перекладывать между ними — пул сам их зачитывает. Долг показывается по своему проекту (выставлено − получено по каждому): если на один проект заплатили больше, чем по нему выставлено, излишек гасит долги соседей — сумма по клиенту сходится, но «клиент должен» больше не дублируется одной и той же цифрой на всех карточках. «Не выставлено» — тоже своё у каждого проекта. Аванс (получено больше всей наработки клиента) садится на свой проект — туда, где деньги пришли сверх работы; если переплата сначала покрыла долги соседей, авансом показывается остаток.
Пул защищает и от задвоения в «Оплачено», но только в одном случае: когда платежи клиента занесены на СОСЕДНИЙ его проект. Тогда «оплаченные» часы этого проекта считаются покрытыми теми переводами и второй раз не оцениваются — карточка проекта говорит об этом подсказкой «проверь оплату». Если же платежи занесены на самом проекте, отметки часов не пропадают: берётся бо́льшая из двух оценок.
Счёт и записи
Счёт в Бюро собирается из незаинвойсенных записей журнала по проектам клиента — включая записи всей команды: клиент платит за команду. Период в редакторе счёта не «создаёт» суммы, а лишь фильтрует этот пул по датам записей; по умолчанию берётся всё незаинвойсенное.
Каждая строка счёта раскрывается в исходные записи — любую можно исключить галочкой. Запись оценивается по ставке, действовавшей на её дату.
Черновик счёта записи не трогает. Отправка счёта переводит вошедшие в него записи в статус «выставлен» — с этого момента они попадают в «Выставлено», начинают гасить аванс клиента и не могут попасть во второй счёт. Двойное выставление невозможно по построению: незаинвойсенная запись перестаёт быть незаинвойсенной ровно в момент отправки.
Ручные строки (ретейнер, этап фикса, договорная сумма) добавляются в счёт без привязки к записям — статусы журнала они не меняют.
Отметка «оплачен» — это регистрация денег: в леджер проекта ложится платёж на сумму счёта (сегодняшним числом), записи счёта становятся «оплачен» — заносить платёж руками не нужно. Отзыв отметки удаляет этот платёж и возвращает записи в «выставлен». Обратная дорога тоже честная: удаление счёта откатывает всё — у оплаченного сначала исчезают его платёж и статусы оплаты, затем записи возвращаются в «не выставлен» и снова готовы к выставлению. От несуществующего счёта не остаётся ни денег, ни статусов.
Что видит клиент
Отчёт по ссылке — с его стороны стола, и, в отличие от строгого «Клиент должен» на карточке, он показывает растущий долг: баланс = наработанное (все выполненные оплачиваемые часы, по ставке на их дату, с cap по фиксу) − полученное; знаки его глазами («−» значит «вы должны»). Так клиент видит долг по мере работы, а не только после счёта — а счёт ты выставляешь в конце периода. Поэтому часы, которые выставлять не собираешься, помечай как не-оплачиваемые, иначе попадут в долг. Расходы «за счёт клиента» добавляются к его балансу, ваши внутренние списания — никогда.
Дальше: доход и ставка по факту, цель года и норма дня и все правила расчётов.