Кредиторська заборгованість (AP) — це гроші, які ваша компанія винна постачальникам за товари або послуги, які ви вже отримали, але ще не оплатили. У бухгалтерському обліку AP класифікується як поточне зобов’язання у вашому балансі — сума, яка зазвичай підлягає сплаті протягом наступного року, часто протягом 30–60 днів.
Ця концепція є центральною для обліку за методом нарахування, де ви фіксуєте витрати та відповідне зобов’язання в момент надходження рахунку, а не коли ви фактично сплачуєте готівку. Цей посібник покаже вам, як керувати всім робочим процесом AP чисто та ефективно за допомогою інструменту обліку у відкритому текстовому форматі Beancount.
Короткий підсумок
Перш ніж заглиблюватися в деталі, розглянемо основне:
- Кредиторська заборгованість (AP) представляє ваші короткострокові борги перед постачальниками. Ви знайдете її в розділі
Зобов’язаннявашого балансу. - Метод нарахування проти касового: AP існує лише якщо ви ведете облік за методом нарахування. Beancount повністю підтримує такі робочі процеси, а його веб-інтерфейс Fava правильно відображатиме ваші зобов’язання.
- AP проти дебіторської заборгованості (AR): Все просто: кредиторська заборгованість — це те, що ви винні, тоді як дебіторська заборгованість (AR) — це те, що інші винні вам.
Де AP розміщується в Beancount (та Fava)
Щоб почати відстежувати AP, вам спочатку потрібно оголосити рахунок для неї у вашій книзі. Стандартна умовність:
Liabilities:AccountsPayable
Ви можете за бажанням створити субрахунки для великих постачальників (наприклад, Liabilities:AccountsPayable:ForestPaintSupply).
У Fava цей рахунок з’явиться у вашому Балансі в розділі Зобов’язання. Ви можете натиснути на нього, щоб перейти до деталей і побачити список усіх відкритих та оплачених позицій, отримуючи чітке уявлення про ваші зобов’язання. Ви навіть можете побачити це в дії в публічному прикладі книги Fava, який включає рахунок Liabilities:AccountsPayable.
Базові будівельні блоки Beancount, які ви використовуватимете
Надійний робочий процес AP у Beancount спирається на кілька основних функцій:
- Рахунки: Ви в основному використовуватимете ваш рахунок
Liabilities:AccountsPayable, касовий рахунок, як-отAssets:Bank:Checking, та ваші різні рахунки витрат (наприклад,Expenses:Supplies). - Метадані: Ви можете прикріплювати дані у форматі "ключ-значення" до будь-якої транзакції. Для AP ви використовуватимете метадані, як-от
invoice:,due:,terms:таdocument:. Fava навіть розпізнає ключdocument:і автоматично створить клікабельне посилання на прикріплений файл, якщо ви налаштуєте папку для документів. - Теги та посилання: Використовуйте
#теги(наприклад,#ap) для легкої фільтрації та^посилання(наприклад,^INV-10455), щоб програмно пов’язати рахунок із відповідним платежем. Це створює чіткий, перевірюваний слід. - Запити (BQL): Мова запитів Beancount, подібна до SQL (BQL), дозволяє виконувати потужні звіти, наприклад, перелік усіх відкритих кредиторських заборгованостей, відсортованих за датою оплати, безпосередньо з командного рядка за допомогою
bean-queryабо на сторінці "Query" у Fava.
Основний робочий процес AP у Beancount
Управління AP у вашій книзі передбачає два або три ключові кроки: запис рахунку, його оплату та іноді обробку часткових платежів або знижок.
1) Запис рахунку постачальника (це створює зобов’язання)
Спочатку ви відображаєте витрати та створюєте кредиторську заборгованість, коли надходить рахунок.
; За бажанням вкажіть папку для документів у вашому головному файлі Beancount:
option "documents" "documents"
2025-08-05 * "Forest Paint Supply" "Замовлення фарби INV-10455" ^INV-10455 #ap
invoice: "INV-10455"
due: "2025-09-04"
terms: "2/10, n/30"
document: "invoices/2025-08-05-forest-paint-INV-10455.pdf"
Expenses:Supplies:Paint 500.00 USD
Liabilities:AccountsPayable -500.00 USDЦей єдиний запис виконує дві важливі речі:
- Він негайно визнає витрати в розмірі $500 у правильному періоді (серпень).
- Він створює відповідне зобов’язання в розмірі $500, показуючи, що ви винні гроші компанії Forest Paint Supply.
Посилання ^INV-10455 — це унікальний ідентифікатор, який дозволяє прикріпити той самий зв’язок до платежу пізніше, логічно пов’язуючи транзакції рахунку та платежу.
2) Оплата рахунку (це погашає зобов’язання)
Коли ви оплачуєте рахунок, ви створюєте транзакцію, яка переказує гроші з вашого банківського рахунку для погашення зобов’язання.
а) Стандартний платіж (без знижки):
2025-09-01 * "Forest Paint Supply" "Платіж INV-10455" ^INV-10455
Liabilities:AccountsPayable 500.00 USD
Assets:Bank:Checking -500.00 USDЦей запис зменшує ваш баланс AP на $500 і ваш баланс банківського рахунку на ту саму суму. Зобов’язання тепер погашено.
б) Знижка за дострокову оплату (наприклад, "2/10, n/30"):
Якщо умови передбачають "2/10, n/30", ви можете отримати знижку 2% при оплаті протягом 10 днів. Для нашого рахунку на $500 це знижка $10. Ось два прийнятні способи це записати — просто оберіть один метод і будьте послідовні.
; Варіант 1: Записати знижку як інший дохід (ефект контра-витрат)
2025-08-12 * "Forest Paint Supply" "Знижка за дострокову оплату INV-10455" ^INV-10455
Liabilities:AccountsPayable 500.00 USD
Assets:Bank:Checking -490.00 USD
Income:Discounts:Payables -10.00 USD
; Варіант 2: Зменшити безпосередньо початкові витрати
2025-08-12 * "Forest Paint Supply" "Знижка за дострокову оплату INV-10455" ^INV-10455
Liabilities:AccountsPayable 500.00 USD
Assets:Bank:Checking -490.00 USD
Expenses:Supplies:Paint -10.00 USDВ обох випадках ви погашаєте повне зобов’язання в розмірі $500, зменшуєте баланс банківського рахунку на фактично сплачені $490 та відображаєте вигоду в розмірі $10.
3) Обробка часткових платежів
Функція зв’язків Beancount робить відстеження часткових платежів простим і зрозумілим.
; Рахунок на суму $1,200
2025-08-10 * "Acme Parts" "INV-9001" ^INV-9001
invoice: "INV-9001"
due: "2025-09-09"
Expenses:Parts 1200.00 USD
Liabilities:AccountsPayable -1200.00 USD
; Перший платіж у розмірі $400
2025-08-20 * "Acme Parts" "Платіж INV-9001 (1/3)" ^INV-9001
Liabilities:AccountsPayable 400.00 USD
Assets:Bank:Checking -400.00 USD
; Остаточний платіж у розмірі $800
2025-09-05 * "Acme Parts" "Платіж INV-9001 (остаточний)" ^INV-9001
Liabilities:AccountsPayable 800.00 USD
Assets:Bank:Checking -800.00 USDВикористовуючи посилання ^INV-9001 у всіх трьох транзакціях, ви можете легко відфільтрувати свій журнал, щоб побачити повну історію цього конкретного рахунку та пов’язаних із ним платежів.
Корисні запити (BQL)
Ви можете виконувати ці запити на вкладці "Query" у Fava або з командного рядка за допомогою bean-query.
Порада: Функція
any_meta()надзвичайно корисна для вилучення полів метаданих, таких якinvoice:таdocument:, у результати ваших запитів.
Відкрита AP за постачальником (балансовий вигляд):
Цей запит підсумовує поточний непогашений баланс, який ви винні кожному постачальнику.
SELECT payee, COST(SUM(position)) AS amount
WHERE account ~ "^Liabilities:AccountsPayable"
GROUP BY payee
ORDER BY payee;Відкрита AP за рахунком + датою оплати:
Отримайте акуратний перелік кожного відкритого рахунку, відсортований за датою оплати, щоб допомогти вам визначити пріоритети платежів.
SELECT payee,
any_meta('invoice') AS invoice,
any_meta('due') AS due,
COST(SUM(position)) AS amount
WHERE account ~ "^Liabilities:AccountsPayable"
GROUP BY payee, invoice, due
ORDER BY due, payee;Перелік рахунків із прикріпленими PDF-файлами:
Цей запит знаходить усі ваші рахунки та показує шлях до пов’язаного документа.
SELECT date, payee, any_meta('invoice') AS invoice, any_meta('document') AS file
WHERE account ~ "^Liabilities:AccountsPayable"
ORDER BY date DESC;Де побачити AP у Fava
- Баланс: Перейдіть до
Баланс→Зобов’язання→AccountsPayable, щоб побачити загальний баланс і перейти до деталей транзакцій. - Журнал: Відфільтруйте журнал за
account:Liabilities:AccountsPayableабо за конкретним посиланням, як-от^INV-xxxx, щоб побачити повний життєвий цикл рахунку. - Бічна панель документів: Якщо ви використовуєте метадані
document:і встановили директивуoption "documents", ви побачите список пов’язаних документів на бічній панелі.
Старіння AP, оборотність та обізнаність про грошові потоки
- Графік старіння: Цей звіт групує ваші відкриті рахунки за тривалістю їх прострочення (наприклад, 1–30 днів, 31–60 днів, 60+ днів). У Beancount найпрактичніший підхід — виконати запит "Відкрита AP за рахунком + датою оплати" вище, експортувати результати у CSV та згрупувати їх в електронній таблиці або за допомогою невеликого Python-скрипта.
- Коефіцієнт оборотності AP: Це швидка перевірка того, наскільки швидко ви платите постачальникам. Формула:
Загальні закупівлі у постачальників ÷ Середня AP. Пов’язаний показник, Дні непогашеної кредиторської заборгованості (DPO), приблизно дорівнює365 ÷ Коефіцієнт оборотності. - Якщо ви не можете вчасно платити: AP призначена для короткострокових боргів. Якщо постачальник погоджується на формальне, довгострокове погашення, вам слід рекласифікувати борг з AP у вексель до сплати.
2025-10-01 * "Helix Industries" "Переведення простроченої AP у 12-місячний вексель" ^INV-1110
Liabilities:AccountsPayable 2000.00 USD
Liabilities:NotesPayable -2000.00 USDНайкращі практики для AP у книзі у відкритому текстовому форматі
- Безпаперовий документообіг: Зберігайте PDF-файли рахунків у вашій папці
documentsі пов’язуйте їх за допомогою ключа метаданихdocument:. - Послідовно використовуйте посилання: Вказуйте унікальний номер рахунку в
^посиланніяк на рахунку, так і на всіх пов’язаних платіжних записах. - Тримайте метадані в порядку: Послідовне використання
invoice:,due:таterms:покращує пошук, запити та фінансові перевірки. - Метод нарахування повністю: Якщо ви хочете корисних звітів про AP, зобов’яжіться вести книги за методом нарахування. Beancount і Fava чудово з цим справляються.
Стартовий шаблон для копіювання: рахунок постачальника + платіж
; ---- Рахунок ----
2025-08-05 * "Forest Paint Supply" "Замовлення фарби INV-10455" ^INV-10455 #ap
invoice: "INV-10455"
due: "2025-09-04"
document: "invoices/2025-08-05-forest-paint-INV-10455.pdf"
Expenses:Supplies:Paint 500.00 USD
Liabilities:AccountsPayable -500.00 USD
; ---- Платіж (без знижки) ----
2025-09-01 * "Forest Paint Supply" "Платіж INV-10455" ^INV-10455
Liabilities:AccountsPayable 500.00 USD
Assets:Bank:Checking -500.00 USDЦей посібник призначений для освітніх цілей і не є податковою, юридичною чи фінансовою консультацією.