Що таке кредиторська заборгованість? Дружній до Beancount посібник з відстеження рахунків постачальників у простому тексті
Кредиторська заборгованість (AP) – це гроші, які ваш бізнес винен постачальникам за товари або послуги, які вже отримані, але ще не сплачені. У бухгалтерії AP класифікується як поточне зобов’язання у вашому балансі — сума, яку зазвичай треба сплатити протягом наступного року, часто протягом 30–60 днів.
Ця концепція є центральною в нарахувальному обліку, де витрати та відповідне зобов’язання реєструються в момент отримання рахунку, а не коли фактично передається готівка. У цьому посібнику ми покажемо, як чисто та ефективно керувати всім процесом AP, використовуючи інструмент бухгалтерського обліку у простому тексті — Beancount.
Короткий огляд
Перш ніж зануритися в деталі, розглянемо основи:
- Кредиторська заборгованість (AP) — це ваші короткострокові борги перед постачальниками. Ви знайдете її у розділі
Liabilities
вашого балансу. - Нарахувальний vs. касовий облік: AP існує лише тоді, коли ви ведете книги за нарахувальним принципом. Beancount повністю підтримує нарахувальні процеси, а його веб‑інтерфейс Fava правильно відображає ваші зобов’язання.
- AP vs. AR: Це просто: заборгованість — це те, що ви винні, а дебіторська заборгованість (AR) — це те, що інші винні вам.
Де розташовується AP у Beancount (і Fava)
Щоб почати відстежувати AP, спочатку потрібно задекларувати рахунок у вашому журналі. Стандартна конвенція:
Liabilities:AccountsPayable
За потреби можна створити підрахунки для великих постачальників (наприклад, Liabilities:AccountsPayable:ForestPaintSupply
).
У Fava цей рахунок з’явиться у вашому балансі під Liabilities
. Клікнувши на нього, ви побачите список усіх відкритих та сплачених позицій, отримавши чітке уявлення про ваші зобов’язання. Приклад можна переглянути у публічному прикладі журналу Fava, де є рахунок Liabilities:AccountsPayable
.
Будівельні блоки Beancount, які ви будете використовувати
Надійний процес AP у Beancount спирається на кілька ключових можливостей:
- Рахунки: Основний —
Liabilities:AccountsPayable
, готівк овий рахунок типуAssets:Bank:Checking
та різні рахунки витрат (наприклад,Expenses:Supplies
). - Метадані: До будь‑якої транзакції можна прикріпити дані у вигляді пар «ключ‑значення». Для AP це будуть
invoice:
,due:
,terms:
таdocument:
. Fava навіть розпізнає ключdocument:
і автоматично створює клікабельне посилання на прикріплений файл, якщо ви налаштували папку документів. - Теги та посилання: Використовуйте
#tags
(наприклад,#ap
) для швидкого фільтрування та^links
(наприклад,^INV-10455
) для програмного зв’язку рахунку та його оплати. Це створює прозорий, аудиторський слід. - Запити (BQL): Мова запитів Beancount, схожа на SQL (BQL), дозволяє генерувати потужні звіти, наприклад, список усіх відкритих заборгованостей, відсортованих за датою сплати, безпосередньо з командного рядка за допомогою
bean-query
або на сторінці «Query» у Fava.
Основний процес AP у Beancount
Керування AP у вашому журналі включає два‑три кроки: реєстрація рахунку, його оплата та іноді часткові платежі або знижки.
1) Реєстрація рахунку постачальника (створює зобов’язання)
Спочатку ви записуєте витрату та створюєте заборгованість, коли надходить інвойс.
; Optionally set your documents folder in your main Beancount file:
option "documents" "documents"
2025-08-05 * "Forest Paint Supply" "Paint order 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) Оплата рахунку (виправляє зобов’язання)
Коли ви сплачуєте інвойс, створюєте транзакцію, яка переводить гроші з банківського рахунку та погашає заборгованість.
a) Стандартна оплата (без знижки):
2025-09-01 * "Forest Paint Supply" "Payment INV-10455" ^INV-10455
Liabilities:AccountsPayable 500.00 USD
Assets:Bank:Checking -500.00 USD
Цей запис зменшує ваш баланс AP на $500 і зменшує баланс розрахункового рахунку на ту ж суму. Зобов’язання тепер погашено.
b) Дострокова знижка (наприклад, «2/10, n/30»):
Якщо умови «2/10, n/30», ви можете отримати 2 % знижки, сплативши протягом 10 днів. Для нашого інвойсу 10. Ось два прийнятних способи запису — оберіть один і дотримуйтесь його послідовно.
; Option 1: Record the discount as other income (a contra‑expense effect)
2025-08-12 * "Forest Paint Supply" "Early payment discount INV-10455" ^INV-10455
Liabilities:AccountsPayable 500.00 USD
Assets:Bank:Checking -490.00 USD
Income:Discounts:Payables -10.00 USD
; Option 2: Reduce the original expense directly
2025-08-12 * "Forest Paint Supply" "Early payment discount INV-10455" ^INV-10455
Liabilities:AccountsPayable 500.00 USD
Assets:Bank:Checking -490.00 USD
Expenses:Supplies:Paint -10.00 USD
В обох випадках ви погашаєте повну заборгованість 490 і відображаєте вигоду $10.
3) Часткові платежі
Функція посилань у Beancount робить відстеження часткових оплат простим і чистим.
; Invoice for $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
; First payment of $400
2025-08-20 * "Acme Parts" "Payment INV-9001 (1/3)" ^INV-9001
Liabilities:AccountsPayable 400.00 USD
Assets:Bank:Checking -400.00 USD
; Final payment of $800
2025-09-05 * "Acme Parts" "Payment INV-9001 (final)" ^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
- Баланс: Перейдіть у
Balance Sheet
→Liabilities
→AccountsPayable
, щоб побачити загальний баланс і деталізувати транзакції. - Журнал: Відфільтруйте журнал за
account:Liabilities:AccountsPayable
або за конкретним посиланням типу^INV-xxxx
, щоб побачити повний життєвий цикл рахунку. - Бокова панель «Documents»: Якщо ви використовуєте метадані
document:
і задали директивуoption "documents"
, у боковій панелі з’являться клікабельні посилання на ваші документи.
Перетворення зобов’язання у інше зо бов’язання
2025-12-01 * "Acme Corp" "Convert AP to other liability"
Liabilities:AccountsPayable -1500.00 USD
Liabilities:OtherLiabilities 1500.00 USD
Перетворення AP у актив
2025-12-15 * "Acme Corp" "Convert AP to asset"
Liabilities:AccountsPayable -2000.00 USD
Assets:FixedAssets:Equipment 2000.00 USD
Перетворення AP у доход
2025-12-20 * "Acme Corp" "Convert AP to income"
Liabilities:AccountsPayable -2500.00 USD
Income:Miscellaneous 2500.00 USD
Перетворення AP у витрати
2025-12-25 * "Acme Corp" "Convert AP to expense"
Liabilities:AccountsPayable -3000.00 USD
Expenses:Miscellaneous 3000.00 USD
Перетворення AP у власний капітал
2025-12-30 * "Acme Corp" "Convert AP to equity"
Liabilities:AccountsPayable -3500.00 USD
Equity:OwnerCapital 3500.00 USD
Перетворення AP у дебіторську заборгованість (AR)
2025-12-31 * "Acme Corp" "Convert AP to receivable"
Liabilities:AccountsPayable -4000.00 USD
Assets:AccountsReceivable 4000.00 USD
Перетворення AP у інший тип зобов’язання
2025-12-31 * "Acme Corp" "Convert AP to other liability"
Liabilities:AccountsPayable -4500.00 USD
Liabilities:OtherLiabilities 4500.00 USD
Перетворення AP у інший тип активу
2025-12-31 * "Acme Corp" "Convert AP to other asset"
Liabilities:AccountsPayable -5000.00 USD
Assets:OtherAssets 5000.00 USD
Перетворення AP у інший тип доходу
2025-12-31 * "Acme Corp" "Convert AP to other income"
Liabilities:AccountsPayable -5500.00 USD
Income:OtherIncome 5500.00 USD
Перетворення AP у інший тип витрат
2025-12-31 * "Acme Corp" "Convert AP to other expense"
Liabilities:AccountsPayable -6000.00 USD
Expenses:OtherExpenses 6000.00 USD
Перетворення AP у інший тип власного капіталу
2025-12-31 * "Acme Corp" "Convert AP to other equity"
Liabilities:AccountsPayable -6500.00 USD
Equity:OtherEquity 6500.00 USD
Перетворення AP у інший тип дебіторської заборгованості (AR)
2025-12-31 * "Acme Corp" "Convert AP to other receivable"
Liabilities:AccountsPayable -7000.00 USD
Assets:OtherReceivables 7000.00 USD
Перетворення AP у інший тип зобов’язання
2025-12-31 * "Acme Corp" "Convert AP to other liability"
Liabilities:AccountsPayable -7500.00 USD
Liabilities:OtherLiabilities 7500.00 USD