Salta al contenuto principale

Modellare una società quotata in Beancount

Trasforma il bilancio e il conto economico di una società quotata in una contabilità Beancount bilanciata utilizzando le convenzioni Open Ledger, con un trimestre PepsiCo lavorato e un modello iniziale.

Trasforma lo stato patrimoniale e il conto economico di un documento depositato in un registro Beancount bilanciato con le stesse convenzioni usate da ogni società Open Ledger.

Questa guida modella il conto economico trimestrale di PepsiCo e un estratto parziale dello stato patrimoniale dal comunicato sugli utili del Q2 2026 di PepsiCo. Usa la colonna di 12 settimane che termina il 13 giugno 2026 a pagina A-1 (pagina 6 del PDF) e lo stato patrimoniale alla stessa data a pagina A-4 (pagina 9 del PDF). Il comunicato è stato pubblicato il 9 luglio 2026. Ogni cifra rimane in milioni di dollari statunitensi (MUSD).

Cosa otterrai​

Alla fine avrai cinque asserzioni di saldo e una transazione di conto economico a somma zero. bea check passa. Il conto economico riproduce l'utile netto consolidato; l'estratto dello stato patrimoniale copre le attività correnti e una voce combinata delle passività correnti. Non è uno stato patrimoniale completo della società. Lo stesso schema alimenta ogni società sull'Open Ledger e ogni articolo sotto il tag open-ledger.

Scegli l'unità e l'anno fiscale​

Imposta operating_currency su un'unità in milioni che corrisponda al documento depositato. Usa MUSD per chi riporta in dollari statunitensi. Usa MEUR, MJPY o un'altra forma M<CCY> quando il documento riporta in quella valuta.

Un MUSD significa 1.000.000 di USD. Un saldo di 10251 MUSD significa 10,251 miliardi di dollari di liquidità.

Il trimestre riportato contiene 12 settimane, ovvero 84 giorni, fino al 13 giugno 2026. Contando in modo inclusivo si ottiene dal 22 marzo al 13 giugno 2026. Usa quelle date fiscali invece di aprile–giugno. La colonna dell'anno precedente nello stato patrimoniale è il 27 dicembre 2025; non sostituire le chiusure dell'anno fiscale con il 31 dicembre.

Metti ogni periodo fiscale in un file separato sotto una directory per anno. Nomina i file annuali FY2025/FY2025.bean. Nomina i file trimestrali FY2026/FY2026Q2.bean. Includili da main.bean dal più vecchio al più recente.

Apri il piano dei conti​

main.bean contiene opzioni, aperture di conti e include. Non contiene saldi né voci di ricavo.

Apri ogni conto al 1970-01-01 in MUSD. Mantieni i nomi principali identici tra le società così i lettori possono confrontare un registro con un altro.

option "title" "PepsiCo, Inc. FY2026Q2 income statement and partial balance sheet"
option "operating_currency" "MUSD"
 
; Currency convention:
;   MUSD = Millions of USD (custom unit for readability)
;   1 MUSD = USD 1,000,000
;   Example: "1000 MUSD" means USD 1,000,000,000
;   Source: PepsiCo Q2 2026 earnings release, A-1 and A-4.
;   Fiscal quarter: 2026-03-22 through 2026-06-13 (12 weeks).
;   Partial balance sheet: current assets and combined payables only.
 
; ── ASSETS ──────────────────────────────────────────────────────────────────
1970-01-01 open Assets:Current:Cash                        MUSD
1970-01-01 open Assets:Current:ShortTermInvestments        MUSD
1970-01-01 open Assets:Current:AccountsReceivable          MUSD
1970-01-01 open Assets:Current:Other                       MUSD
1970-01-01 open Assets:NonCurrent:PropertyPlantEquipment   MUSD
1970-01-01 open Assets:NonCurrent:Goodwill                 MUSD
1970-01-01 open Assets:NonCurrent:IntangibleAssets         MUSD
1970-01-01 open Assets:NonCurrent:Other                    MUSD
 
; ── LIABILITIES ─────────────────────────────────────────────────────────────
1970-01-01 open Liabilities:Current:AccountsPayable        MUSD
1970-01-01 open Liabilities:Current:ShortTermDebt          MUSD
1970-01-01 open Liabilities:Current:DeferredRevenue        MUSD
1970-01-01 open Liabilities:Current:Other                  MUSD
1970-01-01 open Liabilities:NonCurrent:LongTermDebt        MUSD
1970-01-01 open Liabilities:NonCurrent:Other               MUSD
 
; ── EQUITY ──────────────────────────────────────────────────────────────────
1970-01-01 open Equity:OpeningBalance                      MUSD  ; opening balances when needed
1970-01-01 open Equity:Adjustments                         MUSD  ; balancing offset for this statement model
1970-01-01 open Equity:CommonStockAndAPIC                  MUSD
1970-01-01 open Equity:RetainedEarnings                    MUSD
1970-01-01 open Equity:OtherComprehensiveIncome            MUSD
 
; ── INCOME ──────────────────────────────────────────────────────────────────
1970-01-01 open Income:Revenue                             MUSD
1970-01-01 open Income:OtherNet                            MUSD  ; net other income (interest income, etc.)
 
; ── EXPENSES ────────────────────────────────────────────────────────────────
1970-01-01 open Expenses:CostOfRevenue                     MUSD
1970-01-01 open Expenses:ResearchAndDevelopment            MUSD
1970-01-01 open Expenses:SellingGeneralAdministrative      MUSD
1970-01-01 open Expenses:OtherNet                          MUSD
1970-01-01 open Expenses:IncomeTax                         MUSD
 
include "FY2026/FY2026Q2.bean"

Il piano fornisce nomi di conto per altre società ed estensioni successive. I conti non utilizzati non implicano uno zero riportato. Solo i conti registrati di seguito hanno importi mappati in questo esempio. I conti …:Other richiedono una riga esplicita di origine o un calcolo residuale; non sono una licenza per inventare una ripartizione.

Verifica il bilancio con pad e balance​

Fai il pad da Equity:Adjustments il giorno prima della fine del periodo. Asserisci il valore del documento depositato alla data di fine periodo. Scrivi una coppia pad e balance per conto.

Le attività hanno saldi positivi. Le passività hanno saldi negativi. Queste cinque asserzioni mappano la colonna del 13 giugno 2026 a pagina A-4:

ContoMappatura di origine (MUSD)
Assets:Current:CashDisponibilità liquide e mezzi equivalenti: 10.251
Assets:Current:ShortTermInvestmentsInvestimenti a breve termine: 465
Assets:Current:AccountsReceivableCrediti commerciali e cambiali attive, al netto: 13.496
Assets:Current:OtherTotale attività correnti 32.775 − 10.251 − 465 − 13.496 = 8.563; rimanenze 6.734 + risconti attivi e altre attività correnti 1.829
Liabilities:Current:OtherDebiti verso fornitori e altre passività correnti aggregati: −24.504

Il comunicato non suddivide l'ultima riga in conti fornitori autonomi e altre passività. Mantieni l'aggregato insieme; non registrare un importo inventato su Liabilities:Current:AccountsPayable.

; PepsiCo, Inc. FY2026Q2 — 2026-03-22 through 2026-06-13; MUSD
; Source: https://investors.pepsico.com/docs/pepsico-5v9wci20/media/Files/investors/q2-2026-earnings-release.pdf
; A-4, 2026-06-13 column: partial balance-sheet snapshot
2026-06-12 pad Assets:Current:Cash                        Equity:Adjustments
2026-06-13 balance Assets:Current:Cash                     10251 MUSD
 
2026-06-12 pad Assets:Current:ShortTermInvestments        Equity:Adjustments
2026-06-13 balance Assets:Current:ShortTermInvestments     465 MUSD
 
2026-06-12 pad Assets:Current:AccountsReceivable          Equity:Adjustments
2026-06-13 balance Assets:Current:AccountsReceivable       13496 MUSD
 
2026-06-12 pad Assets:Current:Other                       Equity:Adjustments
2026-06-13 balance Assets:Current:Other                    8563 MUSD  ; 32775 - 10251 - 465 - 13496 = 6734 + 1829
 
2026-06-12 pad Liabilities:Current:Other                  Equity:Adjustments
2026-06-13 balance Liabilities:Current:Other               -24504 MUSD  ; combined payables and other current liabilities

Beancount verifica un saldo all'inizio della sua data. I pad del giorno precedente creano voci sintetiche di istantanea, non movimenti di cassa effettivi il 12 giugno. Questo esempio non ha registrazioni successive di attività o passività il 13 giugno, quindi gli importi asseriti rimangono anche i suoi saldi di chiusura.

Questo estratto omette le attività non correnti, il debito a breve termine e le restanti passività e patrimonio netto. Un modello completo deve mappare anche quelle voci, comprese le azioni proprie e le interessenze di minoranza. I totali completi del documento depositato sono attività 112.189 = passività 89.919 + patrimonio netto 22.270 MUSD; l'estratto non riproduce quei totali. Equity:Adjustments è una contropartita di bilanciamento, non il patrimonio netto riportato degli azionisti. Inizia ogni file di periodo con un'intestazione che nomini la società, la finestra fiscale, l'unità e l'URL di origine.

Registra il conto economico come una singola transazione​

Data la transazione alla fine del periodo fiscale. Le registrazioni di ricavo sono negative. Le registrazioni di spesa sono positive. Equity:Adjustments assorbe l'utile netto così la voce somma a zero.

Metti il controllo aritmetico in un commento sopra la transazione. Il controllo deve dare zero prima che tu ti fidi della voce.

; Check: -24181 + 11070 + 9088 + 171 + 848 + 3004 = 0
 
2026-06-13 * "PepsiCo, Inc." "FY2026Q2 Income Statement"
  Income:Revenue                         -24181 MUSD
  Expenses:CostOfRevenue                   11070 MUSD
  Expenses:SellingGeneralAdministrative     9088 MUSD
  Expenses:OtherNet                         171 MUSD  ; 230 expense - 59 pension income
  Expenses:IncomeTax                        848 MUSD
  Equity:Adjustments                       3004 MUSD  ; consolidated net income offset

Mappa la colonna trimestrale di A-1 come segue: ricavi 24.181 meno costo del venduto 11.070 danno un utile lordo di 13.111. Sottrai le spese di vendita, generali e amministrative di 9.088 per ottenere un utile operativo di 4.023; la voce di impairment è zero. Il comunicato non divulga una voce R&S trimestrale separata, quindi lascia Expenses:ResearchAndDevelopment non utilizzato.

Il reddito da benefici pensionistici e sanitari per i pensionati di 59 compensa gli interessi passivi netti e altri oneri di 230. Registra la loro spesa netta, 171, su Expenses:OtherNet. Questo dà un utile ante imposte di 3.852. Le imposte di 848 lasciano un utile netto consolidato di 3.004 MUSD. Se la stessa aggregazione produce invece un utile netto in un altro periodo, usa Income:OtherNet per l'aggregato e lascia Expenses:OtherNet non utilizzato.

Il comunicato riporta anche l'utile netto attribuibile a PepsiCo di 2.981 MUSD. Il ponte è 3.004 − 23 attribuibili a interessenze di minoranza = 2.981. Questa transazione modella la misura consolidata; il 23 è un'allocazione dell'utile, non un'altra spesa. Non sostituirlo con 2.981 come contropartita di bilanciamento.

Valida e leggi i report​

Esegui un controllo sul registro radice:

bea --file main.bean check

Un registro pulito esce con 0 senza output. Preferisci bea --json --no-input --file main.bean check quando vuoi validità leggibile dalla macchina e richiedi data.valid: true.

Leggi il conto economico per la finestra fiscale della società, non per un trimestre di calendario che per caso condivide l'etichetta:

bea --json --no-input --file main.bean report income-statement --time '2026-03-22 - 2026-06-13'

Apri lo stesso file in Fava per sfogliare lo stato patrimoniale e il conto economico. Verifica separatamente l'aritmetica e la coerenza con le origini: il commento ; Check: somma a zero, ogni importo registrato corrisponde alla sua origine mappata e il report mostra un utile netto consolidato di 3.004 MUSD. Un importo dei ricavi errato può comunque bilanciarsi se anche la contropartita è errata. Solo dopo aver esteso questo estratto in un modello completo i suoi totali di stato patrimoniale dovrebbero eguagliare i totali del documento depositato.

Parti dal modello​

Clona la struttura prima di inventare un nuovo piano dei conti. Il template live qui sotto è un registro fittizio di Example Industries Inc. FY2025 in MUSD. Usa gli stessi nomi di conto, lo stesso schema pad e balance e la stessa singola transazione di conto economico.

Apri Modello di società quotata Example Industries Inc. in una nuova scheda

Scarica l'estratto reale di PepsiCo come public-company-starter.bean, poi esegui bea --file public-company-starter.bean check. Combina i tre blocchi Beancount sopra, separatamente dal template live fittizio. La liquidità finisce a 10251 MUSD, i conti fornitori combinati e altre passività correnti a -24504 MUSD, i ricavi a -24181 MUSD e le imposte sul reddito a 848 MUSD. I cinque pad compensano 32775 − 24504 = 8271 MUSD su Equity:Adjustments; aggiungendo la contropartita dell'utile consolidato rimangono -5267 MUSD lì. Quella contropartita non è una voce del documento depositato. Il download è un esempio parziale di stato patrimoniale, non il registro completo di PepsiCo. Sostituisci le sue cifre e le sue date fiscali con le tue mappature di origine.

Sfoglia ogni società reale sull'Open Ledger. Copia la struttura del template, poi sostituisci gli importi fittizi con le cifre del tuo documento depositato.

Dove andare dopo​

  • Studia altri registri aziendali live sull'Open Ledger.
  • Leggi le analisi sugli utili sotto il tag open-ledger.
  • Copia schemi di finanza personale da Working Ledger Examples quando ti serve uno starter per la famiglia o per il lavoro autonomo invece di un 10-K.
  • Consulta Financial Reporting Templates per la forma dei report di conto economico e stato patrimoniale in libri più piccoli.

Fonte: https://beancount.io/it/docs/model-a-public-company-in-beancount