Руководство
Контракты и накладные
Храните договоры поставки с датами, статусом и связанными счетами в одном месте и фиксируйте каждую отгрузку накладной, которая идёт от черновика до доставки.
Счета говорят, сколько должен клиент. Две другие бумаги объясняют, почему и действительно ли товар прибыл: контракт, установивший условия, и накладная, уехавшая вместе с фургоном. Invoice Flow хранит обе как сопутствующие документы рядом с вашими счетами. Контракт принадлежит одному клиенту, несёт даты начала и окончания, статус и полный текст и может быть привязан к любому числу счетов. Накладная принадлежит ровно одному счёту и фиксирует, что было отгружено, кем, с каким трек-номером и как далеко продвинулась отгрузка.
Ни один из них не является печатным документом. Приложение хранит и отслеживает контракты и накладные для ваших собственных записей, но ни для того, ни для другого нет предпросмотра PDF или действия «Поделиться»; в PDF отрисовываются только счета и сметы. Если кафе просит подписанную копию договора, это по-прежнему происходит вне приложения.
Примеры следуют за Kirsten Lund, которая ведёт Lund Hearth Bakery, оптовую пекарню в Leeds, которая печёт по ночам и развозит по кафе дважды в неделю. У неё годовой договор поставки с каждым постоянным покупателем, и на каждую развозку она выставляет один счёт в фунтах. Каждую развозку сопровождает накладная, чтобы пропавший лоток круассанов можно было отследить до даты и водителя.
Что вы видите на экране
Обе функции живут во вкладке Инструменты (Tools) нижней навигации, в разделе Документы (Documents): карточка Договоры (Contracts) открывает список контрактов, а карточка Накладные (Delivery Notes) — список накладных. У контрактов есть и второй дом: вкладка Документы имеет трёхпозиционный переключатель Счета (Invoices), Сметы (Estimates) и Договоры, а кнопка Новый (New) там предлагает Договоры в окне Выберите тип документа (Choose document type). Накладные во вкладку «Документы» не входят вовсе; к ним попадают через Инструменты или из счёта, у которого уже есть накладная.
Экран Контракты имеет ряд чипов — Все (All), Черновик (Draft), Отправлен (Sent), Подписан (Signed) и Истёкшие (Expired) — и карточку на каждый контракт. Каждая карточка несёт цветную полосу слева, название, значок статуса, имя клиента, период в виде начало → конец и жирную пометку об оставшемся сроке: Осталось 19 дн. (19 days left) для действующего контракта или Истёк 14 дн. назад (Expired 14 days ago) красным для истёкшего. Контракт, заканчивающийся в ближайшие 30 дней, получает янтарный значок Скоро (Soon) рядом со статусом.
Нажатие на карточку выдвигает окно с подробностями. Долгое нажатие открывает короткое меню действий. Смахивание карточки справа налево предлагает удалить её. Кнопка + в углу открывает редактор.
Экран Накладные проще: чипы Все, Черновик, Отправлено (Dispatched) и Доставлено (Delivered), затем по строке на накладную. Каждая строка начинается с трёхточечного индикатора шагов (серый, оранжевый, зелёный), показывающего, как далеко продвинулась отгрузка, затем номер накладной жирным, Счёт: (Invoice:) и номер счёта, дата доставки справа и, если задано, иконка грузовика с перевозчиком и трек-номером. Страницы с подробностями нет; нажатие ничего не делает, долгое нажатие открывает действия, а смахивание удаляет.
Как создать контракт из шаблона
Kirsten начинает четырёхнедельный пробный период с Roundhay Deli и хочет, чтобы стандартный текст поставки был зафиксирован до первой доставки.
- Откройте Инструменты, затем нажмите Договоры в разделе Документы.
- Нажмите кнопку +. Редактор открывается с заголовком Новый контракт (New Contract).
- Введите название в Название * (Title *), например «Weekly bread supply - Roundhay Deli». Если оставить название пустым, шаблон, выбранный на следующем шаге, заполнит его именем шаблона.
- Откройте выпадающий список Клиент * (Client *) и выберите покупателя. Перечислены только существующие клиенты; добавить отсюда нельзя.
- В разделе Шаблон (необязательно) (Template (optional)) нажмите один из четырёх чипов: NDA (Соглашение о неразглашении) (NDA), Договор оказания услуг (Service Agreement), Договор с фрилансером (Freelance Contract) или Договор поставки (Supply Agreement). Поле Содержание (Content) заполняется пунктами этого шаблона.
- Отредактируйте текст в Содержание по своему усмотрению. Поле прокручивается, когда текст длиннее десяти строк.
- Нажмите Начало (Start) и выберите первый день договора; нажмите Окончание (End) и выберите последний день. Оба необязательны, но пометка об оставшемся сроке и полоса прогресса появляются только при заданной дате окончания.
- Оставьте Статус (Status) на «Черновик» или выберите другое значение, затем нажмите Сохранить (Save) в правом верхнем углу.
Как провести контракт по статусам и привязать счета
The Copper Kettle Cafe подписало свой договор, и Kirsten хочет привязать к нему еженедельные счета, чтобы с одного взгляда видеть, какие выставленные суммы относятся к какой сделке.
- В списке Контракты долго нажмите карточку контракта. Появится окно с Редактировать (Edit), Изменить статус (Change Status), Привязать счёт (Link Invoice) и Удалить (Delete).
- Нажмите Изменить статус и выберите Подписан. Приложение записывает сегодняшний день как дату подписания.
- Снова долго нажмите карточку и нажмите Привязать счёт.
- В диалоге Привязать счета (Link Invoices) отметьте каждый счёт, относящийся к этому договору. Список показывает все ваши счета с их суммами.
- Нажмите Сохранить.
- Нажмите карточку, чтобы открыть окно с подробностями, и проверьте раздел Связанные счета (Linked Invoices).
В окне с подробностями подводится итог жизни контракта. Карточка Статус контракта (Contract Timeline) показывает три шага — Черновик, Отправлен и Подписан — с галочкой на каждом уже достигнутом шаге и датами создания и подписания под соответствующими шагами. Когда заданы обе даты, карточка Прогресс (Progress) рисует, какая часть срока прошла; в последние 30 дней полоса становится янтарной, а значок гласит Истекает через 19 дн. (Expires in 19 days). Ниже идут строки Клиент, Период (Period), Шаблон (Template) и Подписан (Signed at), список Связанные счета и полное Содержание. Нажатие на связанный счёт открывает этот счёт.
Как создать и отслеживать накладную
Пятничная развозка в The Copper Kettle Cafe выставлена в счёт. Kirsten пишет накладную, которая будет у водителя на телефоне.
- Откройте Инструменты и нажмите Накладные, затем нажмите +. Выезжает окно с заголовком Новая накладная (New Delivery Note).
- Откройте Счёт * (Invoice *) и выберите счёт, который исполняет эта отгрузка. Перечислены все счета и сметы с их номером и суммой.
- Оставьте или измените номер в Номер накладной (Delivery Note Number). Приложение предлагает номер вида DN-1234 со случайной четырёхзначной частью.
- Нажмите Дата доставки (Delivery Date) и выберите день, когда товар уезжает или прибывает.
- Заполните Адрес доставки (Shipping Address), если он отличается от указанного в счёте.
- Начните печатать в Перевозчик (Carrier). Список подсказок сужается по мере ввода — от глобальных курьеров вроде DHL, FedEx и UPS до национальных почт и региональных служб. Нажмите один из них или введите свой текст, например «Lund Hearth van».
- Вставьте номер посылки в Трек-номер (Tracking Number), если перевозчик его выдал.
- В разделе Позиции (Items) нажимайте Добавить (Add) по разу на строку и заполняйте Описание (Description) и Кол-во (Qty). Строки не копируются из счёта; вы вводите то, что физически загрузили в фургон.
- Добавьте всё, что должен знать водитель, в Примечания (Notes), затем нажмите Сохранить.
Новая накладная всегда начинается как Черновик. Чтобы продвинуть её, долго нажмите её строку и нажмите Сменить статус → Отправлено (Advance → Dispatched); когда кафе подтвердит получение, снова долго нажмите и выберите Сменить статус → Доставлено (Advance → Delivered). В том же окне есть Редактировать, Копировать трек-номер (Copy Tracking Number) (только когда трек-номер существует) и Удалить.
Как только у счёта появляется хотя бы одна накладная, на его экране подробностей под Платежами (Payments) появляется карточка Накладные. Она перечисляет каждую накладную с её датой, перевозчиком и чипом статуса, и как строки, так и маленький + в заголовке карточки ведут к списку накладных.
Правила и детали
Где проходит граница Pro. Открытие редактора контракта из списка «Контракты», будь то через + или через Редактировать, и открытие редактора накладной через + или Редактировать требуют активного пробного периода или подписки Pro; без них вы попадаете на экран оплаты. Просмотр, смена статуса контракта, привязка счетов, продвижение накладной, копирование трек-номера и удаление доступны всем.
Статусы контракта. Контракт может быть Черновик (серый), Отправлен (синий), Подписан (зелёный), Истёк (красный) или Отменён (Cancelled, сине-серый). Статусы задаются вручную, в выпадающем списке Статус редактора или через Изменить статус; приложение никогда не меняет их за вас. Отметка контракта как подписанного проставляет дату подписания один раз; возврат к «Отправлен» и снова вперёд к «Подписан» сохраняет исходную дату. В ряду чипов нет чипа «Отменён», поэтому отменённые контракты видны только под Все.
Истечение вычисляется, а не хранится. «Истёк 14 дн. назад» на карточке и красный цвет получаются из сравнения сегодняшнего дня с датой окончания. Подписанный контракт с прошедшей датой окончания отображается как истёкший, но сохраняет статус «Подписан», пока вы его не измените. Янтарный значок Скоро и янтарная полоса прогресса появляются, когда остаётся меньше 30 дней и контракт не истёк и не отменён. Виджет Истекающие контракты (Expiring Contracts) на главной панели использует то же 30-дневное окно.
Поля контракта. Название и клиент обязательны; содержание может быть пустым. Дату начала нельзя очистить после установки (иконка очистки есть только у даты окончания), и приложение не проверяет, что начало раньше окончания. Имя шаблона запоминается как короткий ключ и так же показывается в окне подробностей: supply, service, nda или freelance.
Связанные счета. Связь — это список ссылок на счета, хранящийся в контракте. Сторона счёта о ней ничего не знает: экран подробностей счёта не показывает его контракт, и один и тот же счёт может быть привязан к нескольким контрактам. Окно подробностей подписывает связанные строки внутренним номером счёта (Счёт #2), а не напечатанным, и диалог «Привязать счета» предлагает и сметы, и счета.
Поля накладной. Счёт обязателен, а номер должен быть уникальным среди всех накладных; всё остальное необязательно, и пустые поля адреса, перевозчика, трек-номера и примечаний хранятся пустыми. Количества — целые числа; всё, что не распознаётся, становится 1. Позиции хранятся как свободный текст с количеством и не привязаны ни к каталогу товаров, ни к позициям счёта.
Статусы накладной односторонние. Черновик, Отправлено, Доставлено — в таком порядке и только вперёд. В редакторе нет поля статуса и нет способа шагнуть назад; если посылка возвращена, удалите накладную или запишите это в Примечания.
Удаление. Удаление счёта удаляет вместе с ним его накладные. Удаление клиента удаляет контракты этого клиента. Удаление контракта ничего не делает с его счетами; удаление счёта, на который ссылается контракт, оставляет висячую ссылку в списке контракта.
Даты и форматы. Даты контрактов всегда показываются как dd.MM.yyyy независимо от языка приложения; даты доставки следуют короткому формату даты языка, например «Sep 11, 2026» на английском. Оба списка упорядочены по времени создания, новые сверху.
Ничего не отправляется и не печатается. У контрактов и накладных нет PDF, нет действия отправки по email и нет захвата подписи. В таблице контрактов есть место для изображения подписи, но ни один экран приложения его не заполняет.