Preskočiť na hlavný obsah

Nastavenie Beancount pre startupy

Praktický základ, ktorý si môžete skopírovať a vložiť, na vedenie účtovníctva startupu v plain texte. Funguje pre pre-seed až po Series A. Toto nie je právne ani daňové poradenstvo.


beancount-setup-for-startups

Vedenie startupu znamená nosiť veľa klobúkov a jedným z najdôležitejších je "účtovník". Skôr, ako si môžete dovoliť drahý softvér alebo účtovníka na plný úväzok, potrebujete systém, ktorý je presný, audítorský a neuzamkne vás do proprietárneho ekosystému. Vstúpte do Beancount: open-source, plain-text účtovný systém.

Používanie Beancount znamená, že vaša finančná kniha žije v textových súboroch, hneď vedľa vášho kódu v Git repozitári. Je verzovaná, transparentná a nekonečne prispôsobiteľná. Táto príručka poskytuje kompletné nastavenie, ktoré si môžete skopírovať a vložiť, aby ste rozbehli účtovníctvo vášho startupu od založenia až po Series A, postavené na solídnych, akruálnych účtovných princípoch.

1) Čo si nastavíte

Táto príručka vás prevedie vytvorením kompletného, profesionálneho účtovného nastavenia. Na konci budete mať:

  • Jeden zdroj pravdy spravovaný v Git (main.beancount), ktorý vám poskytne kompletnú, audítorskú históriu financií vašej spoločnosti.
  • Fava pre krásne reporty a grafy. Fava je webové rozhranie pre Beancount, ktoré premení vaše textové súbory na interaktívne výkazy ziskov a strát, súvahy a analýzy cash flow.
  • Štruktúru pre importéry, ktorú môžete neskôr pridať na automatizáciu zadávania transakcií z vášho bankového účtu, kreditnej karty, PayPal a Stripe účtov. Začneme manuálne, aby sme sa naučili systém, a potom automatizujeme.
  • Akruálny kontný plán navrhnutý pre moderné startupy, so vstavanou podporou pre odložené výnosy, platené výdavky vopred a mzdové záväzky.
  • Primitíva pre seed financovanie, vrátane jasných príkladov pre zaznamenávanie SAFE notes (ako záväzok alebo majetok) a konvertibilných dlhopisov s úrokmi.

2) Štruktúra projektu (vložte do svojho repozitára)

Začnite vytvorením tejto štruktúry adresárov vo vnútri Git repozitára vašej spoločnosti. Táto organizácia udržuje vašu knihu čistú a škálovateľnú.

/ledger
main.beancount
/includes
accounts.beancount
opening-balances.beancount
policies.beancount
/documents
/bank
/invoices
/receipts
/importers # voliteľné; pridajte, keď automatizujete príjem CSV
bank_importer.py
card_importer.py
  • main.beancount: Centrálny súbor, ktorý spája všetko dohromady.
  • /includes: Obsahuje váš kontný plán, začiatočné stavy a účtovné zásady.
  • /documents: Miesto na ukladanie PDF výpisov z bankových účtov, faktúr a príjmových dokladov pre čistú audítorskú stopu.
  • /importers: Kde budú žiť vaše budúce Python skripty na analýzu bankových CSV súborov.

3) Minimálny, rozumný main.beancount

Toto je vstupný bod pre vašu knihu. Nastavuje niekoľko globálnych možností a zahŕňa ostatné súčasti súborov. Skopírujte tento obsah do ledger/main.beancount a prispôsobte názov.

option "title" "Acme, Inc. Ledger"
option "operating_currency" "USD"
option "documents" "ledger/documents"

include "includes/accounts.beancount"
include "includes/opening-balances.beancount"
include "includes/policies.beancount"

; Ak neskôr pridáte importéry, pridáte sem riadky pluginu.
; plugin "beancount.plugins.implicit_prices"

4) Štartovací kontný plán (akruálny na prvom mieste)

Váš kontný plán je kompletný zoznam kategórií pre finančné transakcie vašej spoločnosti. Táto štartovacia šablóna je vytvorená pre akruálne účtovníctvo, ktoré poskytuje oveľa presnejší obraz o zdraví vašej spoločnosti ako účtovníctvo založené na hotovosti.

Umiestnite toto do includes/accounts.beancount. Neváhajte odstrániť akékoľvek účty, ktoré hneď nepotrebujete.

; --- Aktíva ---
1970-01-01 open Assets:Bank:Checking USD
1970-01-01 open Assets:Bank:Savings USD
1970-01-01 open Assets:AR USD ; Pohľadávky
1970-01-01 open Assets:Prepaid:Software USD
1970-01-01 open Assets:Prepaid:Insurance USD
1970-01-01 open Assets:Deposits USD ; Bezpečnostné zálohy
1970-01-01 open Assets:Equipment USD
1970-01-01 open Assets:Intangibles USD
1970-01-01 open Assets:Crypto:BTC BTC
1970-01-01 open Assets:Other

; --- Pasíva ---
1970-01-01 open Liabilities:AP USD ; Záväzky
1970-01-01 open Liabilities:CreditCard:Corporate USD
1970-01-01 open Liabilities:DeferredRevenue USD
1970-01-01 open Liabilities:Payroll:Withholding USD
1970-01-01 open Liabilities:Payroll:EmployerTaxes USD
1970-01-01 open Liabilities:SalesTax:CA USD
1970-01-01 open Liabilities:SAFE USD
1970-01-01 open Liabilities:NotesPayable USD
1970-01-01 open Liabilities:Other

; --- Vlastný kapitál ---
1970-01-01 open Equity:CommonStock USD
1970-01-01 open Equity:APIC USD ; Príplatok za akcie
1970-01-01 open Equity:SAFE USD ; Ak klasifikujete SAFEs ako vlastný kapitál
1970-01-01 open Equity:RetainedEarnings USD
1970-01-01 open Equity:OpeningBalances USD

; --- Príjmy (záporné zostatky) ---
1970-01-01 open Income:Revenue:SaaS USD
1970-01-01 open Income:Revenue:Services USD
1970-01-01 open Income:Other USD

; --- Výdavky ---
1970-01-01 open Expenses:COGS USD
1970-01-01 open Expenses:Payroll:Wages USD
1970-01-01 open Expenses:Payroll:EmployerTaxes USD
1970-01-01 open Expenses:Benefits USD
1970-01-01 open Expenses:Contractors USD
1970-01-01 open Expenses:Software:Subscriptions USD
1970-01-01 open Expenses:Cloud USD
1970-01-01 open Expenses:Rent USD
1970-01-01 open Expenses:Meals USD
1970-01-01 open Expenses:Travel USD
1970-01-01 open Expenses:Marketing USD
1970-01-01 open Expenses:Legal USD
1970-01-01 open Expenses:Accounting USD
1970-01-01 open Expenses:Insurance USD
1970-01-01 open Expenses:BankFees USD
1970-01-01 open Expenses:Taxes:Income USD
1970-01-01 open Expenses:Taxes:Sales USD
1970-01-01 open Expenses:Other USD

Poznámky

  • Účty príjmov sú záporné, pretože predstavujú kredit v podvojnom účtovníctve. Nerobte si s tým starosti; Fava automaticky preklopí znamienka v reportoch, takže vaše príjmy sa vo výkaze ziskov a strát zobrazia ako kladné číslo.
  • Na začiatok si ponechajte úzke, účelné kategórie. Je oveľa jednoduchšie pridať nové účty neskôr, ako vyčistiť chaotický, prehnane podrobný kontný plán.

5) Začiatočné stavy (prvý deň)

Prvá transakcia vo vašej knihe určuje scénu. Zaznamenáva počiatočný stav vašich účtov v deň, keď začnete sledovať. Umiestnite túto transakciu do includes/opening-balances.beancount, upravte dátum a sumy tak, aby odrážali vašu skutočnú počiatočnú pozíciu.

2025-01-01 * "Začiatočné stavy"
Assets:Bank:Checking 5,000.00 USD
Liabilities:CreditCard:Corporate -500.00 USD
Equity:OpeningBalances -4,500.00 USD

Tento záznam stanovuje, že spoločnosť začala s $5,000 v banke a zostatkom $500 na svojej kreditnej karte. Účet Equity:OpeningBalances je špeciálny účet používaný na zabezpečenie toho, aby sa transakcia vyrovnala na nulu, ako to vyžaduje podvojné účtovníctvo.


6) Bežné startupové transakcie (skopírujte-vložte)

Tu sú recepty na najbežnejšie finančné udalosti v startupe v rannej fáze. Skopírujte, vložte a prispôsobte ich pre vlastné použitie.

Nákup akcií zakladateľom (jednoduchý, iba mena)

Keď si zakladatelia kúpia svoje počiatočné akcie v nominálnej hodnote, hotovosť prichádza do spoločnosti a je zaznamenaná ako vlastný kapitál. Vaša tabuľka kapitalizácie (Carta, Pulley alebo tabuľkový procesor) je zdrojom pravdy pre počty akcií; kniha zaznamenáva iba doláre.

2025-01-05 * "Nákup akcií zakladateľom @ par"
Assets:Bank:Checking 800.00 USD
Equity:CommonStock -0.80 USD
Equity:APIC -799.20 USD
; 8,000,000 bežných @ $0.0001 — počty vedené mimo knihy

(Voliteľné) Sledujte svoje vlastné akcie ako komoditu

Ak chcete, aby kniha sledovala počet vydaných akcií, môžete definovať svoje akcie ako "komoditu". Je to zložitejšie, ale poskytuje to komplexnejší záznam v knihe.

2025-01-05 commodity ACME
name: "Acme, Inc. Common"

2025-01-05 * "Emisia akcií zakladateľom"
Assets:Bank:Checking 800.00 USD
Equity:APIC -799.20 USD
Equity:CommonStock -8,000,000 ACME {0.0001 USD}

SAFE hotovosť (vyberte klasifikáciu)

SAFE (Simple Agreement for Future Equity) sa môže považovať za záväzok alebo formu vlastného kapitálu (konkrétne "mezzanine equity"). Poraďte sa so svojím účtovníkom, aby ste si vybrali správny prístup a buďte konzistentní.

; (A) Klasifikácia vlastného kapitálu (mezzanine)
2025-02-01 * "Post-money SAFE — SeedFund"
Assets:Bank:Checking 500,000.00 USD
Equity:SAFE -500,000.00 USD

; (B) Klasifikácia záväzkov (do konverzie)
2025-02-01 * "Post-money SAFE — SeedFund"
Assets:Bank:Checking 500,000.00 USD
Liabilities:SAFE -500,000.00 USD

Keď sa uzatvorí ocenené kolo, preklasifikujete zostatok SAFE na preferované akcie a dodatočný vložený kapitál na základe uzatváracích dokumentov.

Konvertibilný dlhopis s narastaným úrokom

Na rozdiel od SAFE je konvertibilný dlhopis jednoznačne záväzok, ktorý narastá úrok. Zaznamenáte počiatočnú hotovosť a potom zaúčtujete úrokové náklady periodicky (napr. štvrťročne).

2025-03-01 * "Konvertibilný dlhopis — 6% ročne"
Assets:Bank:Checking 250,000.00 USD
Liabilities:NotesPayable -250,000.00 USD

2025-06-30 * "Narastanie úroku z dlhopisu Q2"
Expenses:Interest 3,750.00 USD
Liabilities:NotesPayable -3,750.00 USD
; 250,000 * 6% * 0.25 = 3,750

Ročný predaj SaaS (odložený výnos + mesačné uznanie)

Toto je základný kameň akruálneho účtovníctva. Keď zákazník zaplatí za rok vopred, nezarobíte všetky tieto výnosy naraz. Zaúčtujete to ako záväzok (DeferredRevenue) a potom uznáte 1/12 z toho každý mesiac.

2025-03-10 * "Ročné predplatné — AcmeCo — INV-001"
Assets:AR 1,200.00 USD
Liabilities:DeferredRevenue -1,200.00 USD
narration: "SaaS ročná platba vopred"

2025-03-20 * "Platba INV-001"
Assets:Bank:Checking 1,200.00 USD
Assets:AR -1,200.00 USD

; Uznanie mesiaca 1/12 (opakujte mesačne alebo pomocou skriptu)
2025-04-01 * "Uznanie výnosov 1/12 — INV-001"
Liabilities:DeferredRevenue 100.00 USD
Income:Revenue:SaaS -100.00 USD

Náklad zaplatený vopred a amortizácia

Toto je inverzia odloženého výnosu. Keď zaplatíte za službu vopred (ako ročný softvér alebo poistenie), zaznamenáte to ako aktívum (Prepaid) a potom "amortizujete" alebo zaúčtujete časť z toho každý mesiac.

2025-03-01 * "Ročný softvér zaplatený vopred"
Assets:Prepaid:Software 1,200.00 USD
Assets:Bank:Checking -1,200.00 USD

2025-04-01 * "Amortizácia platby vopred 1/12"
Expenses:Software:Subscriptions 100.00 USD
Assets:Prepaid:Software -100.00 USD

Mzdy (čistá hotovosť, so zrážkami + dane zamestnávateľa)

Záznam o mzdách má niekoľko častí: hrubé mzdové náklady, daňové náklady zamestnávateľa, čistá hotovosť vyplatená zamestnancom a záväzok voči daniam, ktoré ste zadržali a ktoré sa musia odviesť vláde.

2025-04-15 * "Mzdy — 15. apríla"
Expenses:Payroll:Wages 15,000.00 USD
Expenses:Payroll:EmployerTaxes 1,200.00 USD
Liabilities:Payroll:Withholding -4,000.00 USD
Assets:Bank:Checking -12,200.00 USD

Výber a odvod dane z predaja (príklad CA)

Keď vyberiete daň z predaja, nie sú to vaše peniaze. Je to záväzok, ktorý dlhujete štátu. Zaznamenáte záväzok, keď uskutočníte predaj, a vymažete ho, keď odvediete daň.

2025-05-10 * "Faktúra #123 — CA zdaniteľná"
Assets:AR 1,088.75 USD
Income:Revenue:SaaS -999.00 USD
Liabilities:SalesTax:CA -89.75 USD

2025-06-05 * "Platba #123"
Assets:Bank:Checking 1,088.75 USD
Assets:AR -1,088.75 USD

2025-07-20 * "Odvod dane z predaja CA Q2"
Liabilities:SalesTax:CA 89.75 USD
Assets:Bank:Checking -89.75 USD

FX a krypto (odľahčené)

Beancount natívne spracováva viacero mien. Použite smernice price na zaznamenávanie výmenných kurzov a syntax nákladov {} pre konkrétne transakcie.

2025-03-01 price EUR 1.0832 USD

2025-03-02 * "Poplatok AWS EU"
Expenses:Cloud 90.00 EUR
Liabilities:CreditCard:Corporate -90.00 EUR

2025-03-05 * "Kúpa BTC na testovanie"
Assets:Crypto:BTC 0.0200 BTC {3400.00 USD}
Assets:Bank:Checking -3,400.00 USD

7) Používanie Fava (reporty v jednom príkaze)

Fava je brilantné webové rozhranie, ktoré oživuje dáta Beancount. Je to odmena za vaše starostlivé zadávanie dát.

  • Inštalácia: $ pip install fava
  • Spustenie: $ fava ledger/main.beancount
  • Užitočné zobrazenia: Výkaz ziskov a strát, Súvaha, Denník (pre filtrovanie podľa účtu/tagu) a Dotaz (pre vlastné SQL-like dotazy).

Rýchle Fava filtre:

  • account:DeferredRevenue: Zobraz všetky aktivity na vašom účte odložených výnosov.
  • tag:#invoice-001: Označ transakcie súvisiace s konkrétnou faktúrou a filtruj ich.
  • from:2025-01-01 to:2025-12-31: Zameraj sa na konkrétne finančné obdobie.

8) Mesačný kontrolný zoznam uzávierky (15–45 min)

Na konci každého mesiaca prejdite tento kontrolný zoznam, aby ste sa uistili, že vaše knihy sú presné a aktuálne. Táto disciplína uľahčuje daňový čas a investorskú kontrolu.

  • Bankové/kreditné karty: Importujte alebo manuálne zadajte všetky transakcie. Odsúhlaste zostatky s výpismi.
  • AR/AP: Zaúčtujte všetky vystavené faktúry a prijaté účty; označte zaplatené položky ako vyrovnané.
  • Výnosy: Zaúčtujte mesačné záznamy o uznaní výnosov pre všetky predplatené zmluvy.
  • Platby vopred: Amortizujte 1/12 (alebo príslušnú frakciu) všetkých výdavkov zaplatených vopred.
  • Mzdy: Zaúčtujte záznam v denníku z reportu od vášho poskytovateľa miezd.
  • Daň z predaja: Zaúčtujte svoju daňovú povinnosť z predaja za mesiac.
  • Seed nástroje: Narastajte úrok na všetkých konvertibilných dlhopisoch.
  • Kontroly správnosti:
    • Zodpovedajú výnosy vo vašom výkaze ziskov a strát približne vašim očakávaným MRR/ARR?
    • Sú vaše sadzby spotreby a dráha rastu v súlade s vaším finančným plánom?
    • Spúšťa sa $ bean-check bez chýb? Vyzerajú reporty Fava správne?
  • Commit do Gitu so stručnou, konzistentnou poznámkou (napr. close: 2025-04).

9) Metadáta a dokumenty (uľahčite audity)

Vaša kniha by mala byť samo dokumentujúca. Používajte metadáta a odkazujte na zdrojové dokumenty, aby ste vytvorili nepriestrelnú audítorskú stopu. Budúci vy (a váš účtovník) sa vám poďakujú.

  • Pre jasnosť pridajte k transakciám metadáta ako payee:, narration:, invoice:, customer: alebo link:.
  • Pripojte zdrojové PDF (faktúry, účtenky, bankové výpisy) do vášho priečinka ledger/documents/ a prepojte ich pomocou meta tagu document:.
  • Používajte tagy (#payroll, #saas, #vendor-aws, #invoice-001) pre jednoduché filtrovanie a analýzu.

Príklad:

2025-03-10 * "Ročné predplatné — AcmeCo" #saas #invoice-001
payee: "AcmeCo"
invoice: "INV-001"
document: "documents/invoices/INV-001.pdf"
Assets:AR 1,200.00 USD
Liabilities:DeferredRevenue -1,200.00 USD

10) Importujte neskôr (keď budete mať čas)

Začnite manuálnym zadávaním transakcií na prvý mesiac alebo dva. Je to najlepší spôsob, ako sa naučiť systém a svoje vlastné vzorce míňania. Keď sa budete cítiť pohodlne, môžete napísať jednoduché Python importéry na automatizáciu procesu a zníženie námahy.

Typický importér:

  1. Bank CSV → Assets:Bank:Checking
  2. CSV kreditnej karty → Liabilities:CreditCard:Corporate
  3. Výplatné reporty Stripe/PayPal → Mapovanie príjmov a hotovosti

Udržujte svoje importéry v /ledger/importers a prezerajte si ich generované transakcie, ako by ste preverovali akúkoľvek inú zmenu kódu.


11) Zásady (umiestnite do includes/policies.beancount)

Tento súbor je miesto, kde dokumentujete svoje účtovné rozhodnutia pre konzistentnosť. Je to jednoduchý textový súbor, ale je rozhodujúci pre udržiavanie disciplíny.

  • Akruálny základ; uznávajte výnosy SaaS pro-rata.
  • Funkčná mena je USD; zaznamenávajte FX pri dennom kurze alebo transakčnom kurze.
  • Kapitalizačná hranica (napr. položky nad $2,500 sa stanú položkou Assets:Equipment; inak sa okamžite zaúčtujú ako náklady).
  • Cestovanie/Stravovanie: Obchodný účel musí byť zdokumentovaný v poli narration.
  • Zaznamenávanie vlastného kapitálu: Explicitne uveďte, či používate metódu iba mena alebo akciová komodita.
  • SAFEs/dlhopisy: Zdokumentujte vami zvolenú klasifikáciu (Záväzok alebo Vlastný kapitál).

Príklad policies.beancount:

; Zásada: Akruálny základ, výnosy odložené a uznané mesačne.
; Zásada: Funkčná mena USD. FX zisky/straty sú odvodené z údajov o nákladoch/cenách.
; Zásada: Kapitalizujte hmotný majetok nad $2,500 s 3-ročným lineárnym odpisovaním.
; Zásada: SAFE sa zaznamenávajú ako Záväzky až do konverzie v ocenenom kole.

12) Rýchle riešenie problémov

  • Výnosy vyzerajú v denníku záporne: Je to správne! Príjem je kredit. Reporty Fava ho zobrazia ako kladné číslo.
  • Zostatky sa nerovnajú nule: Pravdepodobne máte neúplnú transakciu. Položky transakcie musia dať dokopy nulu. Použite zobrazenie denníka Fava na nájdenie vinníka. Ako dočasné opatrenie môžete pridať vyrovnávaciu nohu do účtu Equity:Suspense, aby bol súbor platný, potom prešetrite a opravte základnú príčinu.
  • FX nesúlady: Uistite sa, že máte smernice price pre príslušné dátumy, alebo že zadáte nákladovú základňu vo svojej prevádzkovej mene, napríklad 90.00 EUR {97.49 USD}.

13) Čo sledovať mimo knihy (ponechajte si odkazy)

Beancount je určený pre vaše finančné transakcie, ale niektoré veci je lepšie spravovať v špecializovaných systémoch. Kľúčom je prepojiť ich z vašej knihy.

  • Tabuľka kapitalizácie: Používajte Carta, Pulley alebo tabuľkový procesor. Odkazujte na podpísané uzatváracie dokumenty z vašich finančných transakcií v Beancount.
  • Súhlasy predstavenstva, Akciový plán, 409A reporty: Uložte ich na bezpečnom mieste a pridajte metadáta link: k relevantným akciovým transakciám.
  • Daňové priznania: Uložte konečné PDF a odkazujte na ne z transakcie uzávierky na konci roka.

Štartovací súbor pripravený na kopírovanie (všetko v jednom)

Ak chcete začať s jedným súborom predtým, ako ho rozšírite na štruktúru include, môžete jednoducho vložiť obsah súborov z vyššie uvedených sekcií do jedného veľkého main.beancount. Môžete ho vždy refaktorovať neskôr, ako vaša kniha porastie.

Tento rámec poskytuje pevný, škálovateľný základ pre financie vášho startupu. Udržiavaním svojich kníh v plain texte pod správou verzií získate bezkonkurenčnú transparentnosť a kontrolu, čím pripravíte svoju spoločnosť na finančnú disciplínu od prvého dňa.