Salta al contingut principal

Modela una empresa pública a Beancount

Converteix el balanç i el compte de resultats d'una empresa pública en un llibre Beancount equilibrat amb les convencions d'Open Ledger, amb un trimestre treballat de PepsiCo i una plantilla inicial.

Converteix el balanç i el compte de resultats d'un arxiu en un llibre Beancount equilibrat amb les mateixes convencions que utilitza cada empresa de l'Open Ledger.

Aquesta guia recorre un trimestre real de PepsiCo de principi a fi. Les xifres coincideixen amb el comunicat de resultats del segon trimestre de 2026 de PepsiCo. Cada quantitat roman en milions de dòlars EUA (MUSD).

Què obtindràs

Finalitzes amb un llibre que afirma el balanç final del període i registra el compte de resultats com una única transacció de suma zero. bea check passa. Els informes de compte de resultats i balanç coincideixen amb els totals publicats a l'arxiu. El mateix patró alimenta cada empresa de l'Open Ledger i cada publicació sota l'etiqueta open-ledger.

Tria la unitat i l'any fiscal

Estableix operating_currency a una unitat de milions que coincideixi amb l'arxiu. Utilitza MUSD per a reporters en dòlars EUA. Utilitza MEUR, MJPY, o una altra forma M<CCY> quan l'arxiu reporta en aquella moneda.

Un MUSD significa USD 1.000.000. Un saldo de 25998 MUSD significa aproximadament 26.000 milions de dòlars en efectiu.

Posa cada període fiscal al seu propi fitxer dins un directori d'any. Anomena els fitxers anuals FY2025/FY2025.bean. Anomena els fitxers trimestrals FY2026/FY2026Q2.bean. Inclou-los des de main.bean del més antic al més recent.

Obre el pla de comptes

main.bean conté opcions, obertures de comptes i includes. No conté saldos ni entrades d'ingressos.

Obre cada compte el 1970-01-01 en MUSD. Mantén els noms principals idèntics entre empreses perquè els lectors puguin comparar un llibre amb un altre.

option "title" "PepsiCo, Inc. Financial Statements FY2021-FY2026Q2"
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
;   All figures sourced from PepsiCo, Inc. annual reports / filings.
;   Fiscal years end Dec 31 (52/53-week year; Dec 31 shown).
 
; ── 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  ; FY2021 initialization
1970-01-01 open Equity:Adjustments                         MUSD  ; year-over-year BS differences
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"

Assets:Current:Other i les altres fulles …:Other absorveixen residus. Els ítems de línia modelats més aquest residu sempre reconcilien amb el subtotal de l'arxiu.

Afirma el balanç amb pad i saldo

Fes pad des de Equity:Adjustments el dia abans del final del període. Afirma el valor de l'arxiu a la data de final de període. Escriu un parell pad i saldo per compte.

Els actius porten saldos positius. Els passius i el capital porten saldos negatius. Les línies residuals mantenen un comentari que anomena el subtotal de l'arxiu al qual reconcilien.

2026-06-29 pad Assets:Current:Cash                        Equity:Adjustments
2026-06-30 balance Assets:Current:Cash                     25998 MUSD
 
2026-06-29 pad Assets:Current:ShortTermInvestments        Equity:Adjustments
2026-06-30 balance Assets:Current:ShortTermInvestments     15600 MUSD
 
2026-06-29 pad Assets:Current:AccountsReceivable          Equity:Adjustments
2026-06-30 balance Assets:Current:AccountsReceivable       10398 MUSD
 
2026-06-29 pad Assets:Current:Other                       Equity:Adjustments
2026-06-30 balance Assets:Current:Other                    15604 MUSD  ; current assets residual (67600 total current)
 
2026-06-29 pad Liabilities:Current:AccountsPayable        Equity:Adjustments
2026-06-30 balance Liabilities:Current:AccountsPayable     -8318 MUSD

Cobreix tot l'estat de la mateixa manera: cada compte d'actiu i passiu, més Equity:CommonStockAndAPIC, Equity:RetainedEarnings, i Equity:OtherComprehensiveIncome. Comença cada fitxer de període amb un encapçalament que nomena l'empresa, el període, la unitat i l'URL d'origen.

Registra el compte de resultats com una única transacció

Data la transacció al final del període fiscal. Els apunts d'ingressos són negatius. Els apunts de despeses són positius. Equity:Adjustments absorbeix l'ingrés net perquè l'entrada sumi zero.

Posa la comprovació aritmètica en un comentari a sobre de la transacció. La comprovació ha d'avaluar a zero abans de confiar en l'entrada.

; Check: -23000 + 10350 + 400 + 8740 + 230 + 688 + 2592 = 0 ✓
 
2026-06-30 * "PepsiCo, Inc." "FY2026Q2 Income Statement"
  Income:Revenue                         -23000 MUSD
  Expenses:CostOfRevenue                   10350 MUSD
  Expenses:ResearchAndDevelopment          400 MUSD
  Expenses:SellingGeneralAdministrative    8740 MUSD
  Expenses:OtherNet                        230 MUSD
  Expenses:IncomeTax                       688 MUSD
  Equity:Adjustments                      2592 MUSD  ; net income offset

L'ingrés és de 23.000 MUSD. L'ingrés net és de 2.592 MUSD. Quan altres ingressos nets són positius, publica'ls a Income:OtherNet en lloc de Expenses:OtherNet. No facis servir mai ambdós en un mateix període.

Valida i llegeix els informes

Executa una comprovació al llibre arrel:

bea --file main.bean check

Un llibre net surt amb codi 0 i sense sortida. Prefereix bea --json --no-input --file main.bean check quan vulguis validesa llegible per a màquina i exigeix data.valid: true.

Llegeix el compte de resultats per a la finestra fiscal de l'empresa, no per a un trimestre calendari que comparteixi l'etiqueta:

bea --json --no-input --file main.bean report income-statement --time '2026-04-01 - 2026-06-30'

Obre el mateix fitxer a Fava per navegar pel balanç i el compte de resultats. Confirma tres coses contra l'arxiu: el comentari ; Check: suma zero, els actius totals igualen els passius més el capital, i l'ingrés net a la transacció coincideix amb l'ingrés net de l'arxiu.

Comença des de la plantilla

Clona la forma abans d'inventar un nou pla. La plantilla viva a continuació és un llibre fictici de l'any fiscal 2025 d'Example Industries Inc. en MUSD. Utilitza els mateixos noms de compte, el patró de pad i saldo, i la transacció única de compte de resultats.

Obre Plantilla d'empresa pública d'Example Industries Inc. en una pestanya nova

Descarrega aquest patró com a public-company-starter.bean, i després executa bea --file public-company-starter.bean check. El fitxer coincideix amb el pla, pad/saldo i tanques de compte de resultats de més amunt: l'efectiu acaba en 25998 MUSD, els comptes a pagar en -8318 MUSD, l'ingrés en -23000 MUSD, l'impost sobre la renda en 688 MUSD, i Equity:Adjustments en -56690 MUSD després dels pads i del desplaçament d'ingrés net. Substitueix les quantitats de PepsiCo amb xifres del teu arxiu i mantén els noms de compte.

Navega per cada empresa real a l'Open Ledger. Copia l'estructura de la plantilla, i després substitueix les quantitats fictícies amb xifres del teu arxiu.

On continuar

  • Estudia més llibres d'empreses vives a l'Open Ledger.
  • Llegeix guies pas a pas de resultats sota l'etiqueta open-ledger.
  • Copia patrons de finances personals de Working Ledger Examples quan necessitis un inici per a llars o autònoms en lloc d'un 10-K.
  • Revisa Financial Reporting Templates per a la forma d'informes de compte de resultats i balanç en llibres més petits.

Font: https://beancount.io/ca/docs/model-a-public-company-in-beancount