Branchenspezifische Setups
Beispielkonfigurationen für Freiberufler, kleine Unternehmen und persönliche Finanzen
In diesem Leitfaden untersuchen wir, wie man ein Beancount-Hauptbuch für verschiedene Bedürfnisse anpassen kann: einen freiberuflichen Fachmann, ein kleines Boutique-Unternehmen und persönliche Haushaltsfinanzen. Jedes Szenario bringt einzigartige Kontostrukturen und Überlegungen mit sich. Wir werden die Gründe für jedes Setup erläutern, Beancount-Codebeispiele bereitstellen und nützliche Funktionen (wie benutzerdefinierte Tags und automatisierte Importe) hervorheben, die das Tracking vereinfachen. Der Ton ist lehrreich, aber dennoch zugänglich – egal, ob Sie Entwickler, technisch versierter Profi oder Finanzenthusiast sind, diese Beispiele helfen Ihnen, Beancount in der realen Welt anzuwenden.
Freiberufler
Freiberufler (wie Softwareentwickler oder Grafikdesigner) jonglieren oft mit mehreren Kunden und Projektausgaben. Ein einfaches Beancount-Setup kann helfen, Einnahmen von jedem Kunden, Geschäftsausgaben (einschließlich aller angeheuerten Subunternehmer) und Geld, das für Steuern zurückgelegt wird, zu verfolgen. Das Ziel ist, es unkompliziert zu halten, damit es mit Ihrem freiberuflichen Geschäft wächst, ohne unnötige Komplexität.
Hauptkonten für einen Freiberufler: Ein freiberufliches Hauptbuch trennt typischerweise Geschäftsfinanzen von persönlichen Finanzen. Sie könnten beispielsweise Folgendes verwenden:
- Assets:Business:Checking – Ein Geschäftskonto für alle Kundenzahlungen und Geschäftsausgaben.
- Assets:Business:TaxSavings – Ein Sparkonto, um einen Teil des Einkommens für Steuerzahlungen zurückzulegen (da kein Arbeitgeber Steuern für Sie einbehält).
- Income:Client:
Name** – Einnahmekonten für Kundenzahlungen. Sie können Unterkonten pro Hauptkunde erstellen (z. B.Income:Client:ACME) oder ein einzelnesIncome:Freelance-Konto mit Kundennamen verwenden, die in Transaktionen getaggt sind. - Expenses:Business:Contractors – Für Zahlungen an Subunternehmer oder ausgelagerte Arbeiten.
- Expenses:Business:Software (und andere Kategorien wie Travel, Supplies) – Für reguläre Geschäftsausgaben (Softwareabonnements, Ausrüstung, Reisen zu Kundenstandorten usw.).
- Equity:OwnerDraw – (Optional) Um Überweisungen von Gewinnen aus dem Unternehmen an Sie persönlich zu erfassen. Dies hilft, Geschäftsvermögen von persönlichem Vermögen zu unterscheiden, wenn Sie sich selbst bezahlen.
Begründung: Diese Struktur stellt sicher, dass alles geschäftsbezogene Geld in dedizierten Konten erfasst wird. Einnahmen von jedem Kunden werden erfasst (wodurch es einfach ist zu sehen, wer Ihre Top-Kunden sind), und Ausgaben werden für Steuerabzüge kategorisiert. Das Zurücklegen von Steuern in einem separaten Anlagekonto (oder die Erfassung einer Verbindlichkeit für geschuldete Steuern) verhindert, dass Sie versehentlich Geld ausgeben, das an den Staat fällig wird. Das Hauptbuch bleibt einfach: Wenn Sie neue Kunden oder Ausgabenkategorien erwerben, können Sie neue Konten hinzufügen oder Tags verwenden, ohne alles neu zu organisieren. Ein häufiger Fehler ist das Vermischen von persönlichen und geschäftlichen Transaktionen in einem Konto; durch die Führung eines dedizierten Geschäftskontos (und des entsprechenden Anlagekontos) werden Abstimmung und Berichterstellung übersichtlicher. Ein weiterer Fehler, den es zu vermeiden gilt, ist das Vergessen, Bargeldtransfers für Steuern oder Entnahmen des Eigentümers zu erfassen – durch die Verwendung von Konten wie TaxSavings und OwnerDraw wird jeder Dollar berücksichtigt.
Beancount-Funktionen zum Hervorheben: Tags und Metadaten sind für Freiberufler äußerst nützlich. Sie können beispielsweise Transaktionen mit einer Projekt- oder Rechnungsnummer versehen oder ein Metadatenfeld verwenden, um den Kundennamen zu notieren, wenn Sie keine separaten Einnahmekonten pro Kunde verwenden möchten. Dies erleichtert das Filtern oder Abfragen von Transaktionen für einen bestimmten Kunden oder ein bestimmtes Projekt (z. B. das Summieren aller mit #ProjectX getaggten Ausgaben). Darüber hinaus können die automatisierten Importfunktionen von Beancount die Dateneingabe vereinfachen – Sie können beispielsweise einen Importeur für Ihre Bank- oder Kreditkartenabrechnungen einrichten, um Transaktionen in Ihr Hauptbuch aufzunehmen, und dann einfach die entsprechenden Ausgaben- oder Einnahmekontonamen hinzufügen. Dies spart Zeit, wenn Sie viele kleine Transaktionen haben (wie Softwareabonnements oder Reisekosten).
Beispiel-Hauptbuch-Snippet für Freiberufler
Nachfolgend finden Sie ein vereinfachtes Beancount-Snippet für einen freiberuflichen Entwickler. Es zeigt die Eröffnung einiger wichtiger Konten, eine eingehende Zahlung von einem Kunden, eine Auszahlung an einen Subunternehmer, eine typische Geschäftsausgabe und die Überweisung von Geld auf ein Steuersparkonto. (In der Praxis würden Sie auch andere Ausgaben wie Reise- oder Geräteanschaffungen ähnlich erfassen.)
1970-01-01 open Assets:Business:Checking
1970-01-01 open Assets:Business:TaxSavings
1970-01-01 open Income:Client:ACME
1970-01-01 open Expenses:Business:Contractors
1970-01-01 open Expenses:Business:Software
; Kundeneinkommen – Zahlung für eine Rechnung
2025-08-15 * "Rechnungszahlung von ACME Corp"
invoice: "INV-2025-08-15"
Assets:Business:Checking 5000 USD
Income:Client:ACME -5000 USD
; Regelmäßige Ausgabe – z. B. Softwareabonnement für das Unternehmen
2025-08-05 * "GitHub-Abonnement"
Expenses:Business:Software 15 USD
Assets:Business:Checking - 15 USD
; Auftragnehmerkosten – Zahlung an einen Subunternehmer für Hilfe
2025-08-20 * "Zahlung an Auftragnehmer – Jane Doe"
Expenses:Business:Contractors 2000 USD
Assets:Business:Checking -2000 USD
; Steuerabzug – Geld in Steuersparnisse verschieben
2025-08-31 * "Q3-Steuern zurücklegen"
Assets:Business:TaxSavings 1500 USD
Assets:Business:Checking -1500 USD #tax
Lassen Sie uns aufschlüsseln, was passiert:
- Wir öffnen die notwendigen Konten oben (mit einem Startdatum). Dies ist für Beancount nicht unbedingt erforderlich (Konten werden bei der ersten Verwendung erstellt, wenn sie nicht geöffnet sind), aber es ist eine gute Übung, sie zu deklarieren. Die Konten
Assets:Business:CheckingundAssets:Business:TaxSavingsenthalten USD-Guthaben; Einnahme- und Ausgabekonten können in der Open-Direktive ohne Währung belassen werden, da sie Transaktionswährungen erben (in diesem Fall USD). - Rechnungszahlung vom Kunden: Am 2025-08-15 erfasst eine Einnahmetransaktion eine Kundenzahlung von 5.000 $ für eine Rechnung. Wir schreiben
Income:Client:ACMEgut (Einnahmen steigen mit einem negativen Betrag in der doppelten Buchführung) und belasten das Girokonto. Ein Metadatenfeldinvoice: "INV-2025-08-15"ist enthalten, um die Rechnungsnummer zu notieren – dies ist optional, zeigt aber, wie Sie einer Transaktion zusätzliche Informationen hinzufügen können. Sie können diese Transaktion auch mit#ACMEoder#client-ACMEversehen, um sie schnell zu filtern. Wenn Sie mehrere Kunden hätten, könnten Sie ein allgemeinesIncome:Clients-Konto verwenden und sich auf solche Metadaten oder das Payee-Feld verlassen, um Kunden zu unterscheiden, anstatt viele Unterkonten zu erstellen. - Geschäftsausgabe (Software): Am 2025-08-05 erfassen wir eine Ausgabe von 15 $ für ein GitHub-Abonnement (vielleicht für private Repositories oder andere Dienste). Die Buchung geht an
Expenses:Business:Softwareund reduziert das Geschäftskonto. Kleine wiederkehrende Ausgaben wie diese könnten getaggt werden (zum Beispiel haben wir#taxbei der Steuer-Transaktion unten hinzugefügt; ähnlich könnten Sie bestimmte Ausgaben als#recurringmarkieren, wenn sie monatlich auftreten usw.). In diesem Fall macht der Kontoname selbst (Software) es deutlich. - Zahlung an Auftragnehmer: Am 2025-08-20 zahlte der Freiberufler einem Subunternehmer (Jane Doe) 2.000 $. Dies wird als Aufwand in
Expenses:Business:Contractorsund als Barauszahlung aus dem Girokonto erfasst. Sie könnten den Namen des Auftragnehmers in die Beschreibung aufnehmen (wie wir es getan haben) oder als Metadatenfeld (z. B.contractor: "Jane Doe"). Dies führt zu einem Prüfpfad, wem Sie was bezahlt haben und warum (nützlich, wenn Sie bei der Steuererklärung oder Budgetierung Details benötigen). - Steuersparüberweisung: Am 2025-08-31 überweist der Freiberufler 1.500 $ vom Hauptgirokonto auf ein dediziertes Steuersparkonto. Wir haben diese Transaktion zur besseren Übersicht mit
#taxversehen. Dies ist keine Ausgabe (Sie verschieben nur Ihr eigenes Geld), daher geht sie zwischen zwei Anlagekonten. Wenn Sie dies jeden Monat oder jedes Quartal tun, sammeln Sie Mittel, um geschätzte Steuern zu decken. Wenn es an der Zeit ist, die Steuern tatsächlich an die Regierung zu zahlen, würden Sie eine Ausgabe (z. B.Expenses:Taxes) und einen Abzug vom Konto TaxSavings (oder Checking) erfassen. Ein häufiger Fehler besteht darin, diese Überweisung in Ihren Berichten als Aufwand zu behandeln – denken Sie daran, dass dies keine Ausgabe, sondern nur eine Vorsichtsmaßnahme ist. Nur die tatsächliche Steuerzahlung an das Finanzamt wäre eine Ausgabe (oder eine Verringerung einer abgegrenzten Steuerschuld, wenn Sie diese auf diese Weise verfolgen).
Zusammenfassung: Das Beancount-Hauptbuch eines Freiberuflers betont Einfachheit und Klarheit. Alle Einnahmen und Ausgaben, die mit dem Unternehmen verbunden sind, werden methodisch erfasst. Durch die Verwendung aussagekräftiger Kontonamen und gelegentlicher Tags/Metadaten können Sie auf einfache Weise Berichte pro Kunde oder pro Ausgabenkategorie erstellen (z. B. Gesamteinnahmen pro Kunde, Gesamtausgaben für Auftragnehmer in diesem Jahr usw.). Dieses Setup ist skalierbar – Sie können neue Kunden oder Ausgabenkategorien hinzufügen, während sich Ihr Unternehmen weiterentwickelt. Mit Funktionen wie automatisierten Importen (zum Abrufen von Banktransaktionen) und benutzerdefiniertem Tagging für Projekte oder Rechnungen kann Beancount den Buchhaltungsaufwand für Freiberufler erheblich reduzieren und gleichzeitig jederzeit ein klares Bild der Finanzen liefern.
Kleine Unternehmen
Betrachten Sie als Nächstes ein kleines Boutique-E-Commerce-Unternehmen – zum Beispiel einen Online-Shop, der handgefertigte Waren verkauft. Dieses Szenario erhöht die Komplexität, wie z. B. Bestandsverwaltung, Kosten der verkauften Waren (COGS) und die Handhabung von Online-Zahlungsabwicklern. Beancount kann diese mit einer durchdachten Kontostruktur und Transaktionserfassungsmethode berücksichtigen. Wir werden einen Fall verwenden, in dem das Unternehmen Produkte im Lagerbestand verfolgt, Verkäufe über eine Online-Plattform (wie Shopify mit Stripe für Zahlungen) erfasst und typische Geschäftsausgaben protokolliert.
Hauptkonten für ein Boutique-E-Commerce-Unternehmen: Zusätzlich zu den grundlegenden Bank- und Ausgabenkonten enthält ein Einzelhandelsunternehmen Konten zur Verfolgung von Lagerbeständen und Verkaufsströmen:
- Assets:Bank:Checking – Das Girokonto des Unternehmens (zur Bezahlung von Lieferanten, Betriebskosten und zum Empfangen von Überweisungen von Zahlungsabwicklern).
- Assets:Stripe:Balance (oder Assets:PayPal usw.) – Ein Verrechnungskonto für Gelder, die über Online-Zahlungen eingezogen wurden und noch nicht auf dem Bankkonto eingegangen sind. Wenn beispielsweise ein Kunde über Stripe bezahlt, kann sich das Geld auf einem Stripe-Konto befinden, bevor es in Batches auf Ihr Bankkonto eingezahlt wird.
- Assets:Inventory:
Produkt** – Bestandskonten für Ihre Produkte. Sie können jedes Produkt (oder jede Produktkategorie) in Beancount als Ware behandeln, um die verfügbaren Mengen zu verfolgen. Beispielsweise kannAssets:Inventory:Widgetsdie Menge der "Widget"-Artikel enthalten, die sich derzeit auf Lager befinden, bewertet zu ihrem Einstandspreis. - Income:Sales – Erfasst Einnahmen aus Produktverkäufen. Sie können Unterkonten für verschiedene Vertriebskanäle verwenden (z. B.
Income:Sales:Onlinevs.Income:Sales:InStore), wenn das Unternehmen über mehrere Kanäle verfügt, aber wir halten es einfach mit einem Verkaufseinnahmekonto. - Expenses:COGS – Kosten der verkauften Waren, um die Kostenbasis der Lagerartikel zu erfassen, wenn sie verkauft werden. Dieses Konto zeigt effektiv, wie viel Sie (als Geschäftsinhaber) der verkaufte Lagerbestand über einen Zeitraum gekostet hat. Es ist eine Schlüsselkomponente für die Berechnung des Bruttogewinns.
- Expenses:Fees – Für Zahlungsbearbeitungsgebühren und Plattformgebühren (Stripe-Gebühren, Shopify-Gebühren, PayPal-Gebühren usw. können alle hier erfasst werden). Sie könnten dies bei Bedarf in detailliertere Konten aufteilen (z. B.
Expenses:Fees:StripeundExpenses:Fees:Shopify), aber ein Konto kann für alle Transaktionsgebühren ausreichen. - Expenses:Operating – Allgemeine Geschäftsausgaben, die nicht direkt mit den COGS verbunden sind, wie z. B. Marketing, Webhosting, Software, Versandmaterial usw. Diese könnten in Unterkonten aufgeteilt werden (z. B.
Expenses:Marketing,Expenses:WebHosting,Expenses:Shipping), um verschiedene Kostenzentren zu analysieren. - Liabilities:SalesTax – (Optional, falls zutreffend) Wenn das Unternehmen Umsatzsteuer oder Mehrwertsteuer auf Verkäufe erheben muss, verfolgt dieses Schuldenkonto die erhobenen, aber noch nicht an den Staat abzuführenden Steuern. Jeder Verkauf würde dann den Steueranteil in dieses Konto aufteilen. Dadurch wird sichergestellt, dass erhobene Steuern nicht als Einkommen gezählt und für die Zahlung an die Steuerbehörden verwendet werden.
- Equity:OwnerEquity – (Optional) Stellt die Investition und die einbehaltenen Gewinne des Eigentümers dar. Als das Unternehmen gegründet wurde, würde jede anfängliche Finanzierung durch den Eigentümer hier gutgeschrieben (mit einer Belastung der Bank oder des Lagerbestands, wenn er Bargeld oder Lagerbestand beisteuerte). Wenn der Eigentümer Gewinne entnimmt (Ausschüttungen), könnte dies auch gegen dieses Eigenkapitalkonto erfasst werden. Dies hält die Bilanz ausgeglichen, aber für den täglichen Betrieb spielt es nicht oft eine Rolle.
Begründung: Dieses Setup trennt den Waren- und Geldfluss. Lagerbestandskäufe werden zunächst in der Bilanz (als Vermögenswerte) erfasst und nicht sofort als Ausgaben. Erst wenn Sie Produkte verkaufen, geben Sie deren Kosten (COGS) aus, um die Einnahmen mit den entsprechenden Ausgaben für eine korrekte Gewinnberechnung abzugleichen. Einnahmen aus Verkäufen werden zum Bruttoverkaufspreis erfasst, während Gebühren separat erfasst werden, sodass Sie sowohl Bruttoeinnahmen als auch gezahlte Gebühren (und damit Nettoeinnahmen) sehen können. Die Verwendung eines Verrechnungskontos wie Assets:Stripe:Balance hilft bei der Abstimmung von Einzahlungen – Geld fließt in Summen von Stripe zu Ihrer Bank, und Sie können diese Überweisungen ohne Verwirrung erfassen. Ein häufiger Fehler für neue Ladenbesitzer ist die Vernachlässigung der ordnungsgemäßen Erfassung des Lagerbestands – z. B. die sofortige Verbuchung aller Lagerbestandskäufe. Das mag für die Cashflow-Verfolgung in Ordnung sein, verzerrt aber Ihren Gewinn: Sie sehen in Monaten, in denen Sie sich eindecken, weniger profitabel aus und in Monaten, in denen Sie verkaufen, profitabler, obwohl der Lagerbestand früher gekauft wurde. Durch die Verwendung eines Lagerbestandsanlagekontos und COGS gleichen Sie die Kosten mit dem Verkauf ab. Ein weiterer Fehler ist die Nichtberücksichtigung von Gebühren oder Rückerstattungen, wodurch die Salden Ihrer Bank oder von Stripe möglicherweise nicht mit Ihren erfassten Einnahmen übereinstimmen. Das vermeiden wir, indem wir Gebühren explizit erfassen und das Stripe-Anlagekonto verwenden, um zu verfolgen, was Stripe schuldet oder ausgezahlt hat.
Beancount-Funktionen zum Hervorheben: Die Bestandsverfolgung in Beancount nutzt die Fähigkeit, Waren und Kosten zu verarbeiten. Jedes Produkt kann ein Warenzeichen sein (z. B. WIDGET), sodass Sie sowohl die Menge als auch die Stückkosten erfassen können. Wenn Sie Artikel verkaufen, kann die Lagerlogik von Beancount (standardmäßig FIFO) automatisch die richtigen Kosten aus Ihren Lagerbeständen auswählen. Wir werden dies im Beispiel sehen. Sie können auch Metadaten oder Links verwenden, um Verkäufe und die entsprechenden COGS-Einträge zu verknüpfen (z. B. indem Sie dieselbe Bestellnummer in beiden Transaktionen verwenden oder ein gemeinsames Tag wie #order1001 für den Verkauf und die Lagerbestandsreduzierung, wodurch es einfach ist, abzufragen oder doppelt zu überprüfen, ob jeder Verkauf einen passenden COGS-Eintrag hat). Darüber hinaus können automatisierte Importe hier helfen: Sie können ein Skript verwenden, um Verkaufsdaten aus Shopify- oder Stripe-Auszahlungsberichten zu importieren, oder Ihre Bankauszüge importieren, um Ausgabentransaktionen und Auszahlungen zu erfassen. Die Automatisierung dieser sich wiederholenden Dateneingabeaufgaben bedeutet, dass Sie mehr Zeit mit der Analyse und weniger Zeit mit dem Tippen von Zahlen verbringen.
Beispiel-Hauptbuch-Snippet für kleine Unternehmen
Nachfolgend finden Sie ein verkürztes Beancount-Beispiel für unser Boutique-E-Commerce-Unternehmen. Wir veranschaulichen den Kauf von Lagerbeständen, die Erfassung eines Verkaufs (wobei die Gebühr des Zahlungsabwicklers herausgerechnet wird) und die Erfassung der Kosten der verkauften Waren für diesen Verkauf. In der Praxis würden Sie auch andere Ausgaben (wie Plattformgebühren, Werbekosten usw.) ähnlich wie im gezeigten Gebührenbeispiel erfassen. Wir gehen von USD als Währung und einem Produkt namens "Widget" aus, das wir als Ware im Lagerbestand verfolgen.
1970-01-01 open Assets:Bank:Checking
1970-01-01 open Assets:Stripe:Balance
1970-01-01 open Assets:Inventory:Widgets WIDGET
1970-01-01 open Income:Sales
1970-01-01 open Expenses:COGS
1970-01-01 open Expenses:Fees
; Lagerbestand kaufen (50 Einheiten Widget zu je 10 \$)
2025-03-10 * "50 Widgets von SupplierCo gekauft"
Assets:Inventory:Widgets 50 WIDGET {10 USD}
Assets:Bank:Checking -500 USD
; Verkauf an Kunden (Bestellung Nr. 1001 über Online-Shop, 2 Widgets verkauft)
2025-04-05 * "Verkaufsbestellung Nr. 1001 (2x Widget über Shopify)"
Assets:Stripe:Balance 58 USD ; Nettozahlung nach Gebühren erhalten
Expenses:Fees 2 USD ; Bearbeitungsgebühr (Stripe)
Income:Sales -60 USD ; Umsatz für 2 Widgets (@ 30 \$ pro Stück)
; Kosten der verkauften Waren für den obigen Verkauf (2 Widgets zu je 10 \$)
2025-04-05 * "COGS für Bestellung Nr. 1001 (2x Widget)"
Expenses:COGS 20 USD
Assets:Inventory:Widgets -2 WIDGET {10 USD}
Hier ist, was Schritt für Schritt passiert:
-
Konten eröffnen: Wir eröffnen das Girokonto, das Stripe-Saldokonto, ein Lagerbestandskonto für Widgets (deklariert mit der Ware
WIDGETzur Verfolgung von Einheiten) und die Kerneinnahme- und Ausgabenkonten (Verkäufe, COGS, Gebühren). Durch die Deklaration vonAssets:Inventory:Widgets WIDGETsignalisieren wir, dass dieses Konto Mengen der Ware "WIDGET" enthält. Dies stellt sicher, dass Beancount weiß, dass dort Wareneinheiten erwartet werden, und wir können diesen Einheiten Kosten zuordnen. -
Lagerbestand kaufen: Am 2025-03-10 kaufen wir Lagerbestand – 50 Einheiten Widget von einem Lieferanten zu je 10 $, was insgesamt 500 $ kostet. Die Transaktion belastet
Assets:Inventory:Widgetsmit50 WIDGET {10 USD}. Dies bedeutet, dass dem Lagerbestandskonto 50 Einheiten der Ware WIDGET mit jeweils erfassten Kosten von 10 USD hinzugefügt werden. Die Gutschrift beträgtAssets:Bank:Checking -500 USD(Barausgabe). Beachten Sie, dass wir hier kein Ausgabenkonto direkt berührt haben; wir aktivieren den Kauf als Lagerbestandsanlage. Jetzt hat unsere Bilanz 50 Widgets im Wert von insgesamt 500 $ im Lagerbestand. (Wenn Sie einen Saldobericht ausführen würden, würde das Lagerbestandskonto 50 WIDGET-Einheiten im Wert von 500 $ anzeigen.) -
Verkauf erfassen (Bestellung Nr. 1001): Am 2025-04-05 erfassen wir einen Verkauf von 2 Widgets über unseren Online-Shop. Die Beschreibung enthält zur besseren Übersicht eine Bestellnummer. Diese Transaktion umfasst drei Buchungen:
Assets:Stripe:Balance 58 USD: Geld, das aus dem Verkauf erhalten wurde, sich aber derzeit in Stripe befindet (netto nach Gebühren). Angenommen, der Kunde hat insgesamt 60 $ bezahlt; Stripe hat eine Gebühr von 2 $ erhoben, und 58 $ befinden sich jetzt auf unserem Stripe-Konto (um später auf unsere Bank überwiesen zu werden). Wir erfassen die 58 $ als Vermögenswert in Stripe.Expenses:Fees 2 USD: Die Gebühr von 2 $ wird als Betriebskosten erfasst. Dies stellt sicher, dass unsere Gewinn- und Verlustrechnung diese Kosten widerspiegelt und unser Stripe-Vermögen zuzüglich Gebühren zusammen der gesamten Kundenzahlung entspricht.Income:Sales -60 USD: Wir erfassen 60 $ Einnahmen aus Verkäufen. (Einnahmekonten steigen mit Gutschriften, daher der negative Betrag in der Beancount-Notation).
Nach dieser Transaktion ist der Nettoeffekt: Income:Sales steigt um 60, ein zusätzlicher Vermögenswert von 58 $ (von Stripe zu erhalten) und 2 $ Ausgaben für die Gebühr. Wenn Stripe später die 58 $ auf unser Bankkonto einzahlt, würden wir eine einfache Überweisung wie
Assets:Bank:Checking 58 USD / Assets:Stripe:Balance -58 USDam Datum der Auszahlung erfassen – dies verschiebt den Vermögenswert vom Stripe-Konto auf die Bank, ohne Auswirkungen auf Einnahmen oder Ausgaben (nur die Verschiebung von Vermögenswerten). Wir haben diese Überweisung oben nicht gezeigt, aber sie ist ein wichtiger Schritt in der realen Buchhaltung, um Ihr Stripe-Konto bei 0 $ zu halten, sobald alles überwiesen wurde. -
COGS für den Verkauf erfassen: Ebenfalls am 2025-04-05 haben wir eine separate Transaktion, um die Kosten der 2 verkauften Widgets zu erfassen. Wir belasten
Expenses:COGS 20 USDund schreibenAssets:Inventory:Widgets -2 WIDGET {10 USD}gut. Was dies tut, ist, 2 Einheiten aus dem Lagerbestand zu entfernen (jede hatte zuvor erfasste Kosten von 10 $, also insgesamt 20 $). Wir geben{10 USD}an, um Beancount mitzuteilen, aus welchem Kostenlos wir ziehen sollen – in diesem Fall entspricht dies dem Los, das wir am 2025-03-10 hinzugefügt haben. Jetzt hat das Lagerbestandskonto 48 verbleibende Widgets und zugehörige Kosten von 480 $. Die 20 $ werden in die COGS-Ausgabe verschoben, die in der Gewinn- und Verlustrechnung erscheint und den Bruttogewinn um die Kosten dieser Waren reduziert. (Wenn wir dies nicht erfasst hätten, wären unsere Einnahmen im Verhältnis zu den Ausgaben überbewertet). Wir verwenden eine separate Transaktion zur besseren Übersicht, aber es ist auch möglich, den Verkauf und die COGS in einer mehrzeiligen Transaktion zu kombinieren. Einige bevorzugen es, sie wie gezeigt zur besseren Lesbarkeit und Abstimmung aufzuteilen (Sie können jeden COGS-Eintrag eindeutig einer Bestellung zuordnen). Wir haben auch die Bestellnummer in der Beschreibung wiederholt, um leicht zu sehen, dass dieser COGS-Eintrag der Bestellung Nr. 1001 entspricht. Eine gute Vorgehensweise ist sicherzustellen, dass jeder Verkauf einen passenden COGS-Eintrag hat, wenn Lagerbestand vorhanden ist – wenn einer fehlt, sind Ihre Lagerbestandszahlen falsch. Ein Fehler, den es zu vermeiden gilt, ist das Vergessen, Lagerbestand für einen Verkauf zu entfernen, wodurch Ihre Bilanz mit Phantomaktien und Ihre Ausgaben unterbewertet bleiben würden. Die Verwendung der Lagerbestandsfunktionen von Beancount (die{}-Kostennotation) hilft zu erkennen, ob Sie versuchen, mehr Einheiten zu entfernen, als Sie auf Lager haben (die Software gibt in diesem Fall einen Fehler aus).
Zusammenfassung: Ein kleines Unternehmen, das Beancount verwendet, kann ein überraschend robustes Buchhaltungssystem führen. Indem Sie Konten strukturieren, um zu verfolgen, wo sich Geld befindet, woher es kommt und wie die Kosten fließen, erhalten Sie ein genaues Bild der Rentabilität. Unser Beispiel hat gezeigt, wie Sie Lagerbestände und Verkäufe verwalten; Sie würden auf ähnliche Weise andere Transaktionen erfassen, wie z. B. die Bezahlung einer Internetrechnung (Expenses:Operating:Internet vs. Assets:Bank:Checking), den Erhalt eines Darlehens oder einer Investition (Assets:Bank vs. Liabilities:Loan oder Equity:OwnerEquity) oder die Bezahlung der Umsatzsteuer (Liabilities:SalesTax vs. Assets:Bank, wenn sie abgeführt wird). Der Schlüssel ist Konsistenz: Erfassen Sie jede Art von Transaktion mit demselben Muster, und Beancount hält die Bücher ausgeglichen. Mit Funktionen wie dem automatisierten Datenimport (z. B. dem Abrufen monatlicher Stripe-Gebühren oder Banktransaktionen) und benutzerdefinierten Tags/Links (zum Korrelieren verwandter Transaktionen wie Verkäufe und Rückerstattungen) kann das System sowohl flexibel als auch effizient sein. Das Ergebnis ist ein organisiertes Hauptbuch, das mit dem Wachstum des Unternehmens skaliert werden kann – Sie können neue Produktlagerkonten, neue Ausgabenkategorien oder zusätzliche Einnahmequellen (z. B. einen neuen Online-Marktplatz) hinzufügen, ohne das gesamte System zu überarbeiten.
Persönliche Finanzen
Betrachten wir abschließend die Verwendung von Beancount für persönliche oder Haushaltsfinanzen. Dieses Setup ist für eine Einzelperson oder Familie, die tägliche Ausgaben, Bankkonten, Kreditkarten, Kredite und Investitionen verwaltet. Der Schwerpunkt liegt hier auf der Verfolgung, wo Ihr Geld hinfließt (Ausgaben), woher es kommt (Einnahmen) und wie es gespart oder investiert wird (Vermögenswerte und Schulden). Beancount kann Budgetierungs-Apps ersetzen oder ergänzen, indem es eine transparente und anpassbare Ansicht Ihrer Finanzen bietet, wobei die Strenge der doppelten Buchführung sicherstellt, dass nichts doppelt gezählt oder vergessen wird.
Hauptkonten für persönliche Finanzen: Ein persönliches Finanzhauptbuch enthält in der Regel eine Vielzahl von Vermögens-, Schulden-, Einnahme- und Ausgabenkonten:
- Assets:Bank:Checking – Ihr Hauptgirokonto für Einzahlung von Einnahmen und Bezahlung von Rechnungen.
- Assets:Bank:Savings – Sparkonto für Notfallfonds oder bestimmte Ziele. (Sie haben möglicherweise mehrere Spar- oder Anlagekonten – jedes kann ein Anlagekonto sein).
- Assets:Cash – Wenn Sie Bargeld für Ausgaben verwenden, haben Sie möglicherweise ein Bargeldkonto, um Abhebungen und Bargeldausgaben zu verfolgen.
- Assets:Investments:
Broker** – Anlagekonten, wie z. B. ein Brokerage, Altersvorsorge 401(k)/IRA usw. Diese können weiter nach Anlagearten aufgeschlüsselt oder einfach als ein Konto pro Institution zusammengefasst werden. Zum BeispielAssets:Investments:VanguardIRAoderAssets:Investments:Robinhood. Die Verfolgung von Investitionen kann auch Waren für Aktien oder Fonds beinhalten, aber wenn dies zu detailliert ist, können Sie einfach Beiträge und Kontostände verfolgen. - Liabilities:CreditCard:
Name** – Ein Konto pro Kreditkarte (z. B.Liabilities:CreditCard:Visaoder nach Bankname). Alle Einkäufe auf der Karte werden hier erfasst (mit einer gleichen Ausgabe), und Zahlungen an die Karte sind Überweisungen, die diese Verbindlichkeit reduzieren. - Liabilities:Loan:
Name** – Alle Kredite (Studentenkredit, Hypothek, Autokredit) können mit einem Schuldenkonto verfolgt werden. Sie würden den Hauptsaldokredit und jede Zahlung aufzeichnen, die Zinsen (Ausgaben) und Kapital (Schuldenreduzierung) aufteilt. Dies ist ein fortgeschrittener Aspekt, aber wichtig für ein vollständiges Finanzbild. - Income:Salary (und/oder Income:Bonus, Income:Interest usw.) – Zum Erfassen von Gehaltsschecks, Boni, Zinserträgen, Dividenden usw. Mit Einnahmekonten können Sie Ihre gesamten Einnahmen aus verschiedenen Quellen einsehen. (Wenn Ihr Gehaltsscheck bereits Steuern abgeführt hat, können Sie die Nettoeinlage auf das Girokonto als Einnahme erfassen oder Brutto- und Steuerabzüge als Ausgabe oder Verbindlichkeit erfassen – es gibt verschiedene Ansätze, aber viele erfassen einfach das Nettogehalt als Einnahme für Einfachheit in persönlichen Büchern).
- Expenses: In der Regel zahlreiche, aufgeteilt in für Sie aussagekräftige Kategorien. Zum Beispiel: Expenses:Housing:Rent, Expenses:Food:Groceries, Expenses:Food:DiningOut, Expenses:Utilities:Electricity, Expenses:Entertainment, Expenses:Travel, Expenses:Taxes, Expenses:Misc – welche Kategorien auch immer Ihre Ausgabegewohnheiten widerspiegeln. Sie können so detailliert oder allgemein sein, wie Sie möchten. Die Kontohierarchie hilft bei der Aggregation (z. B.
Expenses:Foodsummiert sowohl Lebensmittel als auch Essen gehen). Es ist üblich, eine Hierarchie für wichtige Gruppen zu haben (Wohnen, Essen, Transport, Gesundheitswesen usw.). - Equity:Opening-Balances – Wird verwendet, um Kontostände zu initialisieren, wenn Sie Ihr Hauptbuch starten (sodass alle Vermögenswerte abzüglich Schulden Ihrem Startnettovermögen entsprechen, das im Eigenkapital erfasst ist). Nach dem Start können Sie auch Equity:Retained-Earnings oder ähnliches verwenden, um den angesammelten Nettogewinn darzustellen (obwohl Sie in persönlichen Finanzen normalerweise einfach zulassen, dass Einnahmen abzüglich Ausgaben in das Nettovermögen einfließen). Eigenkapitalkonten sind im Alltag weniger sichtbar, stellen aber sicher, dass die Buchhaltungsgleichung ausgeglichen ist.
Begründung: Beim persönlichen Finanzsetup geht es darum, Ihr finanzielles Leben in einem zusammenhängenden System zu erfassen. Jedes Konto oben dient dazu, verschiedene Arten von Finanzen zu trennen, damit Sie Fragen beantworten können wie "Wie viel habe ich diesen Monat für Essen ausgegeben?" (durch Summieren von Expenses:Food:*), "Wie viele Schulden habe ich noch?" (indem Sie sich die Schuldenkonten ansehen) oder "Was ist mein Nettovermögen?" (Vermögen abzüglich Schulden). Ein großer Vorteil der doppelten Buchführung ist hier die Genauigkeit: Wenn Sie beispielsweise eine Lebensmittelrechnung von 100 $ auf Ihre Kreditkarte buchen, erfassen Sie dies als Ausgabe und eine Erhöhung der Schulden. Später, wenn Sie die Kreditkarte bezahlen, erfassen Sie eine Überweisung von Ihrem Bankkonto auf die Karte – dies zahlt die Schuld ab, zählt aber die Lebensmittelausgabe nicht doppelt (die bereits erfasst wurde). Ein häufiger Fehler ohne doppelte Buchführung besteht darin, die Kreditkartenzahlung selbst als Ausgabe zu behandeln, wodurch die 100 $ effektiv doppelt gezählt werden. Beancount verhindert dies von vornherein. Ein weiterer Fehler, den es zu vermeiden gilt, ist das Versäumnis, Konten abzustimmen: Mit Beancount können Sie Saldobehauptungen oder die balance-Direktive verwenden, um sicherzustellen, dass beispielsweise Ihr Girokontostand im Hauptbuch mit dem tatsächlichen Kontoauszug übereinstimmt. Dies fängt fehlende oder doppelte Einträge ab.
Beancount-Funktionen zum Hervorheben: Für persönliche Finanzen sind automatisierte Importe aufgrund des Transaktionsvolumens besonders hilfreich. Sie können das Importer-Framework von Beancount oder Community-Skripte verwenden, um Banktransaktionen, Kreditkartenabrechnungen und