Salta al contenuto principale

Esempi di registro operativo

Copia sei pattern di registro Beancount dal vivo e validati: finanze domestiche, budget a buste, fatturazione freelance, immobili in affitto, crypto e base di costo azionaria.

Copia una struttura di conti collaudata da uno di questi sei registri Beancount reali, poi rinomina i conti e sostituisci gli importi fittizi con i tuoi. Ogni registro incorporato è pubblico, versionato in Git e validato con bea check. Per ricostruire allo stesso modo un deposito di una società quotata, consulta Model a public company in Beancount.

Parti da un file scaricato​

Salta il copia-incolla: i pattern household, envelope e freelance sono disponibili come registri di avvio eseguibili con dati di esempio fittizi.

  1. Scegli uno dei pattern seguenti: household per contanti e carte, envelopes per obiettivi di budget, freelance per le fatture.
  2. Scarica il suo file dal link accanto a quel pattern.
  3. Valida il file salvato con bea --file <file> check. Un registro pulito esce con 0 da bea check; gli errori sono elencati con un exit non zero.
  4. Aprilo con fava e usa l'indirizzo stampato nel browser.

Finanze personali quotidiane​

Usa un conto patrimoniale per banca, un debito per carta di credito e conti di spesa per le domande a cui vuoi che i tuoi report rispondano. L'esempio completo mostra anche stipendi, benefit, trasferimenti, asserzioni di saldo e partecipazioni di investimento.

Apri Everyday personal-finance ledger in una nuova scheda

Copia questa struttura quando vuoi un unico insieme di libri per contanti, carte, entrate e spese ordinarie:

option "operating_currency" "USD"
 
2026-01-01 open Assets:Bank:Checking USD
2026-01-01 open Liabilities:CreditCard USD
2026-01-01 open Equity:Opening-Balances USD
2026-01-01 open Expenses:Food:Groceries USD
 
2026-01-01 * "Opening balance"
  Assets:Bank:Checking          3,000.00 USD
  Equity:Opening-Balances      -3,000.00 USD
 
2026-01-18 * "Corner Market" "Weekly groceries"
  Liabilities:CreditCard          -71.90 USD
  Expenses:Food:Groceries          71.90 USD
 
2026-01-25 * "Credit card" "Statement payment"
  Liabilities:CreditCard           71.90 USD
  Assets:Bank:Checking            -71.90 USD

Il conto della carta di credito tiene separata la data di acquisto dalla data di pagamento in contanti. Aggiungi un'asserzione balance mensile a ogni conto del mondo reale, così un errore di importazione non può nascondersi.

Scarica questo pattern come household-starter.bean, poi esegui bea --file household-starter.bean check e fava household-starter.bean. Il file corrisponde al blocco sopra: il conto corrente termina a 2928.10 USD, la spesa alimentare a 71.90 USD e la carta a zero. Sostituisci Corner Market, l'apertura di 3,000.00 e gli importi di 71.90 con la tua banca, carta e spese.

Budget a buste che si riportano​

Modella ogni busta come un sottoconto di patrimonio sovrapposto al conto bancario reale. Assegnare uno stipendio sposta valore all'interno del patrimonio, mentre un acquisto registra sia il movimento di cassa sia la decisione di budget.

Apri Envelope budgeting ledger in una nuova scheda

Copia l'albero Equity:Budget e mantieni il piano separato dal denaro:

option "operating_currency" "USD"
 
2026-01-01 open Assets:Bank:Checking USD
2026-01-01 open Income:Salary USD
2026-01-01 open Expenses:Groceries USD
2026-01-01 open Equity:Budget:Unallocated USD
2026-01-01 open Equity:Budget:Groceries USD
 
2026-01-05 * "Acme Corp" "January salary"
  Assets:Bank:Checking          4,100.00 USD
  Income:Salary                -4,100.00 USD
 
2026-01-05 * "Budget" "Fund groceries"
  Equity:Budget:Unallocated      -550.00 USD
  Equity:Budget:Groceries         550.00 USD
 
2026-01-08 * "Whole Foods" "Weekly shop"
  Assets:Bank:Checking           -128.44 USD
  Expenses:Groceries              128.44 USD
  Equity:Budget:Groceries        -128.44 USD
  Equity:Budget:Unallocated       128.44 USD

Le due coppie nell'acquisto si bilanciano in modo indipendente. Quella separazione ti consente di azzerare o riassegnare una busta senza modificare il saldo bancario riconciliato. Per la visualizzazione obiettivo-contro-effettivo di Fava, usa invece le più semplici direttive di budget.

Scarica questo pattern come envelope-budgeting-starter.bean, poi esegui bea --file envelope-budgeting-starter.bean check e fava envelope-budgeting-starter.bean. Il file corrisponde al blocco sopra: il conto corrente termina a 3971.56 USD e la busta Groceries contiene 421.56 USD contro -421.56 USD Non allocato. Sostituisci Acme Corp, lo stipendio di 4,100.00 e l'assegnazione di 550.00 con la tua retribuzione e le tue buste.

Fatturazione freelance e crediti​

Registra una fattura quando maturi il ricavo, poi estingui il credito quando il cliente paga. Un conto separato per crediti verso ciascun cliente rende le fatture non pagate e parzialmente pagate visibili come normali saldi.

Apri Freelancer invoicing ledger in una nuova scheda

Copia l'albero dei crediti e metti il numero di fattura su entrambi gli eventi:

option "operating_currency" "USD"
 
2026-01-01 open Assets:Bank:Business USD
2026-01-01 open Assets:Receivable:Northwind USD
2026-01-01 open Income:Consulting USD
 
2026-01-09 * "Northwind Traders" "January retainer"
  invoice: "2026-001"
  due: 2026-02-08
  Assets:Receivable:Northwind    6,000.00 USD
  Income:Consulting             -6,000.00 USD
 
2026-02-05 * "Northwind Traders" "Payment — invoice 2026-001"
  invoice: "2026-001"
  Assets:Bank:Business           6,000.00 USD
  Assets:Receivable:Northwind   -6,000.00 USD

Aggiungi l'imposta sulle vendite a un debito, non al reddito, e sposta la liquidità per l'imposta stimata su un conto patrimoniale di riserva prima di pagarla. Il registro reale mostra entrambi i pattern, i pagamenti parziali, i costi rifatturati e una svalutazione per crediti inesigibili.

Scarica questo pattern come freelance-starter.bean, poi esegui bea --file freelance-starter.bean check e fava freelance-starter.bean. Il file corrisponde al blocco sopra: Business termina a 6000.00 USD, Consulting a -6000.00 USD e il credito a zero. Sostituisci Northwind Traders, la fattura 2026-001 e gli importi di 6,000.00 con i tuoi clienti e le tue fatture.

Immobili in affitto e quota capitale del mutuo​

Tratta l'immobile come un'attività, il mutuo come un debito e il deposito cauzionale dell'inquilino come denaro che devi restituire. Suddividi ogni rata del mutuo tra interessi, capitale e deposito in garanzia, così lo stato patrimoniale e il conto economico raccontano verità diverse.

Apri Rental property ledger in una nuova scheda

Copia i gruppi di conti immobile, debito e gestione operativa prima di aggiungere l'attività mensile:

option "operating_currency" "USD"
 
1970-01-01 commodity PROP123MAIN
2024-01-01 open Assets:RealEstate:Property PROP123MAIN
2024-01-01 open Assets:Bank:Checking USD
2024-01-01 open Assets:Bank:EscrowImpound USD
2024-01-01 open Liabilities:Mortgage USD
2024-01-01 open Income:RealEstate:Rent USD
2024-01-01 open Expenses:RealEstate:MortgageInterest USD
 
2024-03-15 * "Escrow" "Buy rental property"
  Assets:RealEstate:Property       1 PROP123MAIN {400,000.00 USD}
  Assets:Bank:Checking                       -80,000.00 USD
  Liabilities:Mortgage                      -320,000.00 USD
 
2024-04-01 * "Bank" "Mortgage payment"
  Expenses:RealEstate:MortgageInterest         1,866.67 USD
  Liabilities:Mortgage                           262.39 USD
  Assets:Bank:EscrowImpound                      566.67 USD
  Assets:Bank:Checking                        -2,695.73 USD

Mantieni distinti terreno, valore ammortizzabile dell'edificio, migliorie capitalizzate, fondo ammortamento e movimenti del deposito in garanzia. La guida agli immobili in affitto spiega come quei saldi alimentano i report.

Lotti crypto e base di costo​

Assegna a ogni acquisto un costo tra parentesi graffe e identifica lo stesso lotto quando vendi. Beancount porta poi data di acquisizione e base di costo attraverso wallet, exchange e cessioni imponibili, invece di ridurre un investimento a un unico saldo aggregato.

Apri Crypto cost-basis ledger in una nuova scheda

Copia la commodity, i conti dell'exchange e la registrazione esplicita della plusvalenza realizzata:

option "operating_currency" "USD"
 
1970-01-01 commodity BTC
2024-01-01 open Assets:Crypto:Coinbase:BTC BTC
2024-01-01 open Assets:Crypto:Coinbase:USD USD
2024-01-01 open Expenses:Crypto:Fees:Trading USD
2024-01-01 open Income:Crypto:CapitalGains:ShortTerm USD
 
2024-02-15 * "Coinbase" "Buy 0.10 BTC"
  Assets:Crypto:Coinbase:BTC     0.10 BTC {43,800.00 USD, 2024-02-15}
  Assets:Crypto:Coinbase:USD   -4,380.00 USD
 
2024-08-20 * "Coinbase" "Sell the February lot"
  Assets:Crypto:Coinbase:BTC    -0.10 BTC {43,800.00 USD, 2024-02-15}
  Assets:Crypto:Coinbase:USD    5,900.00 USD
  Expenses:Crypto:Fees:Trading      8.85 USD
  Assets:Crypto:Coinbase:USD       -8.85 USD
  Income:Crypto:CapitalGains:ShortTerm -1,520.00 USD

I trasferimenti tra i tuoi wallet preservano il lotto invece di creare reddito. Il registro reale prosegue attraverso staking, mining, finanza decentralizzata e NFT; la guida all'inventario spiega i metodi di contabilizzazione e la riduzione dei lotti.

L'esempio crypto usa prezzi statici datati, così puoi riprodurre i suoi report. Per le tue partecipazioni supportate in un registro ospitato, configura Live Prices per mantenere automaticamente le quotazioni di valutazione. Simboli e valute di quotazione corrispondenti sono importanti; i feed non alterano questi esempi di transazione.

Lotti azionari, dividendi e frazionamenti​

Un'azione non è un numero, è un lotto: una quantità detenuta a un costo noto acquisita a una data nota. Scrivi ogni acquisto tramite broker con un esplicito {cost, date} e una vendita successiva può indicare il lotto esatto di cui si dismette, così Beancount calcola la plusvalenza realizzata e il suo periodo di detenzione invece di mediare due lotti. Un dividendo resta visibile come reddito invece di sparire in un prezzo azionario rettificato.

Apri Stock cost-basis and dividend ledger in una nuova scheda

Copia il conto del broker, il lotto datato e la vendita a lotto specifico:

option "operating_currency" "USD"
option "booking_method" "STRICT"
 
1970-01-01 commodity ACME
2024-01-01 open Assets:Brokerage:Cash USD
2024-01-01 open Assets:Brokerage:ACME ACME
2024-01-01 open Equity:Opening USD
2024-01-01 open Income:Dividends:Qualified USD
2024-01-01 open Income:CapitalGains:LongTerm USD
2024-01-01 open Expenses:Brokerage:Commissions USD
 
2024-01-08 * "Broker" "Wire funding to taxable brokerage account"
  Assets:Brokerage:Cash                  50,000.00 USD
  Equity:Opening                        -50,000.00 USD
 
2024-06-18 * "Broker" "Buy 150 ACME @ $68.20"
  Assets:Brokerage:ACME                        150 ACME {68.20 USD, 2024-06-18}
  Expenses:Brokerage:Commissions              4.95 USD
  Assets:Brokerage:Cash                 -10,234.95 USD
 
2025-03-14 * "Broker" "ACME quarterly cash dividend"
  Assets:Brokerage:Cash                      63.00 USD
  Income:Dividends:Qualified                -63.00 USD
 
2026-02-20 * "Broker" "Sell 60 ACME from the 2024 lot — long-term gain"
  Assets:Brokerage:ACME                        -60 ACME {68.20 USD, 2024-06-18}
  Assets:Brokerage:Cash                   5,778.00 USD
  Expenses:Brokerage:Commissions              4.95 USD
  Assets:Brokerage:Cash                      -4.95 USD
  Income:CapitalGains:LongTerm           -1,686.00 USD
 
2026-02-21 balance Assets:Brokerage:ACME              90 ACME
2026-02-21 balance Assets:Brokerage:Cash      45,601.10 USD

La registrazione della plusvalenza è l'aritmetica, non una quadratura: 60 azioni vendute a 96.30 USD ciascuna sono 5,778.00 USD di proventi contro 4,092.00 USD di base di costo, e la data 2024-06-18 del lotto è ciò che la rende a lungo termine. Il registro reale prosegue attraverso una distribuzione reinvestita di ETF, un frazionamento 4-a-1 che preserva la base di costo totale, una vendita a breve termine da un secondo lotto e asserzioni di conteggio azioni a fine anno. option "booking_method" "STRICT" è ciò che trasforma "sell 40 ACME" in un errore invece che in una media silenziosa; la guida alle opzioni copre le alternative.

L'esempio azionario usa simboli fittizi come ACME e file di prezzi statici. Non sostituire un feed di ticker reale per una commodity fittizia. Scegli coppie supportate per le tue partecipazioni con Live Prices, mantenendo al contempo prezzi manuali per questo esempio riproducibile.

Fonte: https://beancount.io/it/docs/examples